@microsoft/powerquery-language-services 0.6.12 → 0.9.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/powerquery-language-services/analysis/analysis.d.ts +12 -11
- package/lib/powerquery-language-services/analysis/analysisBase.d.ts +31 -25
- package/lib/powerquery-language-services/analysis/analysisBase.js +239 -195
- package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
- package/lib/powerquery-language-services/analysis/analysisUtils.d.ts +1 -1
- package/lib/powerquery-language-services/analysis/analysisUtils.js +3 -3
- package/lib/powerquery-language-services/analysis/analysisUtils.js.map +1 -1
- package/lib/powerquery-language-services/analysis/memoizedAnalysis.d.ts +6 -6
- package/lib/powerquery-language-services/analysis/memoizedAnalysis.js.map +1 -1
- package/lib/powerquery-language-services/documentSymbols.js +8 -7
- package/lib/powerquery-language-services/documentSymbols.js.map +1 -1
- package/lib/powerquery-language-services/externalType/externalType.d.ts +1 -1
- package/lib/powerquery-language-services/externalType/externalType.js.map +1 -1
- package/lib/powerquery-language-services/externalType/externalTypeUtils.d.ts +2 -2
- package/lib/powerquery-language-services/externalType/externalTypeUtils.js +8 -7
- package/lib/powerquery-language-services/externalType/externalTypeUtils.js.map +1 -1
- package/lib/powerquery-language-services/index.d.ts +2 -1
- package/lib/powerquery-language-services/index.js +4 -3
- package/lib/powerquery-language-services/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +7 -8
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.js +3 -4
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +227 -193
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.d.ts +4 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +121 -98
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.d.ts +3 -6
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +13 -46
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.d.ts +2 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +42 -43
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +24 -23
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js +7 -7
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +8 -8
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js +8 -9
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js +6 -5
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/commonTypes.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.d.ts +4 -3
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +126 -82
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.d.ts +5 -3
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +305 -53
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/commonTypes.d.ts +6 -7
- package/lib/powerquery-language-services/inspection/autocomplete/task.js +8 -11
- package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/trailingToken.d.ts +7 -0
- package/lib/powerquery-language-services/inspection/autocomplete/trailingToken.js +5 -0
- package/lib/powerquery-language-services/inspection/autocomplete/trailingToken.js.map +1 -0
- package/lib/powerquery-language-services/inspection/autocomplete/{common.d.ts → trailingTokenUtils.d.ts} +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/trailingTokenUtils.js +19 -0
- package/lib/powerquery-language-services/inspection/autocomplete/trailingTokenUtils.js.map +1 -0
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js +23 -20
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/expectedType.js +62 -61
- package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +20 -15
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +12 -10
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +7 -7
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scope.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/scope/scope.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +38 -36
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +20 -18
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/task.js +24 -21
- package/lib/powerquery-language-services/inspection/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +85 -84
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +4 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js +38 -38
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +6 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +10 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +6 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +25 -24
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +15 -13
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +14 -12
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +8 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +10 -8
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +10 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +6 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +10 -8
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +8 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +9 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +89 -88
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +12 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +14 -13
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/task.js +9 -7
- package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/typeCache/typeCacheUtils.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/typeCache/typeCacheUtils.js +3 -3
- package/lib/powerquery-language-services/inspection/typeCache/typeCacheUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspectionSettings.d.ts +1 -1
- package/lib/powerquery-language-services/inspectionSettings.js.map +1 -1
- package/lib/powerquery-language-services/inspectionUtils.d.ts +3 -3
- package/lib/powerquery-language-services/inspectionUtils.js +51 -52
- package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
- package/lib/powerquery-language-services/library/library.d.ts +1 -1
- package/lib/powerquery-language-services/library/library.js.map +1 -1
- package/lib/powerquery-language-services/library/librarySymbolUtils.d.ts +10 -2
- package/lib/powerquery-language-services/library/librarySymbolUtils.js +27 -21
- package/lib/powerquery-language-services/library/librarySymbolUtils.js.map +1 -1
- package/lib/powerquery-language-services/library/libraryUtils.d.ts +5 -5
- package/lib/powerquery-language-services/library/libraryUtils.js +24 -23
- package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
- package/lib/powerquery-language-services/localization/templates.js +42 -42
- package/lib/powerquery-language-services/localization/templates.js.map +1 -1
- package/lib/powerquery-language-services/positionUtils.d.ts +9 -4
- package/lib/powerquery-language-services/positionUtils.js +55 -23
- package/lib/powerquery-language-services/positionUtils.js.map +1 -1
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +15 -15
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/libraryProvider.js +9 -8
- package/lib/powerquery-language-services/providers/libraryProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js +16 -14
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js +24 -23
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js +73 -71
- package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js.map +1 -1
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js +6 -6
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/tokenPositionComparison.d.ts +5 -0
- package/lib/powerquery-language-services/tokenPositionComparison.js +13 -0
- package/lib/powerquery-language-services/tokenPositionComparison.js.map +1 -0
- package/lib/powerquery-language-services/trace.d.ts +4 -4
- package/lib/powerquery-language-services/trace.js.map +1 -1
- package/lib/powerquery-language-services/traceUtils.d.ts +2 -2
- package/lib/powerquery-language-services/traceUtils.js +5 -5
- package/lib/powerquery-language-services/traceUtils.js.map +1 -1
- package/lib/powerquery-language-services/validate/validate.js +6 -5
- package/lib/powerquery-language-services/validate/validate.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +16 -14
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js +6 -4
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js +7 -5
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js +10 -7
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js.map +1 -1
- package/package.json +10 -8
- package/lib/powerquery-language-services/inspection/autocomplete/common.js +0 -11
- package/lib/powerquery-language-services/inspection/autocomplete/common.js.map +0 -1
|
@@ -14,8 +14,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
exports.tryDeferenceIdentifier = void 0;
|
|
15
15
|
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
16
16
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
|
+
const trace_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/common/trace");
|
|
18
|
+
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
17
19
|
const scope_1 = require("./scope");
|
|
18
20
|
const __1 = require("..");
|
|
21
|
+
const trace_2 = require("../trace");
|
|
19
22
|
// Recusrive deference of the identifier until it reaches the value node.
|
|
20
23
|
// Does not handle recursive identifiers.
|
|
21
24
|
function tryDeferenceIdentifier(settings, nodeIdMapCollection, xorNode,
|
|
@@ -23,20 +26,20 @@ function tryDeferenceIdentifier(settings, nodeIdMapCollection, xorNode,
|
|
|
23
26
|
// Else create a new Map instance and return that instead.
|
|
24
27
|
scopeById = new Map()) {
|
|
25
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
const trace = settings.traceManager.entry(
|
|
29
|
+
const trace = settings.traceManager.entry(trace_2.InspectionTraceConstant.InspectScope, tryDeferenceIdentifier.name, settings.initialCorrelationId, __1.TraceUtils.xorNodeDetails(xorNode));
|
|
27
30
|
const updatedSettings = Object.assign(Object.assign({}, settings), { initialCorrelationId: trace.id });
|
|
28
31
|
parser_1.XorNodeUtils.assertIsIdentifier(xorNode);
|
|
29
|
-
if (parser_1.XorNodeUtils.
|
|
30
|
-
trace.exit({ [
|
|
31
|
-
return powerquery_parser_1.ResultUtils.
|
|
32
|
+
if (parser_1.XorNodeUtils.isContext(xorNode)) {
|
|
33
|
+
trace.exit({ [trace_1.TraceConstant.Result]: undefined });
|
|
34
|
+
return powerquery_parser_1.ResultUtils.ok(undefined);
|
|
32
35
|
}
|
|
33
36
|
const identifier = xorNode.node;
|
|
34
37
|
let identifierLiteral;
|
|
35
38
|
switch (identifier.kind) {
|
|
36
|
-
case
|
|
39
|
+
case language_1.Ast.NodeKind.Identifier:
|
|
37
40
|
identifierLiteral = identifier.literal;
|
|
38
41
|
break;
|
|
39
|
-
case
|
|
42
|
+
case language_1.Ast.NodeKind.IdentifierExpression:
|
|
40
43
|
identifierLiteral = identifier.identifier.literal;
|
|
41
44
|
break;
|
|
42
45
|
default:
|
|
@@ -44,7 +47,7 @@ scopeById = new Map()) {
|
|
|
44
47
|
}
|
|
45
48
|
const triedNodeScope = yield (0, scope_1.assertGetOrCreateNodeScope)(updatedSettings, nodeIdMapCollection, xorNode.node.id, scopeById);
|
|
46
49
|
if (powerquery_parser_1.ResultUtils.isError(triedNodeScope)) {
|
|
47
|
-
trace.exit({ [
|
|
50
|
+
trace.exit({ [trace_1.TraceConstant.Result]: triedNodeScope.kind });
|
|
48
51
|
return triedNodeScope;
|
|
49
52
|
}
|
|
50
53
|
const nodeScope = triedNodeScope.value;
|
|
@@ -53,20 +56,20 @@ scopeById = new Map()) {
|
|
|
53
56
|
// If the identifier couldn't be found in the generated scope,
|
|
54
57
|
// then either the scope generation is incorrect or it's an external identifier.
|
|
55
58
|
scopeItem === undefined) {
|
|
56
|
-
trace.exit({ [
|
|
57
|
-
return powerquery_parser_1.ResultUtils.
|
|
59
|
+
trace.exit({ [trace_1.TraceConstant.Result]: undefined });
|
|
60
|
+
return powerquery_parser_1.ResultUtils.ok(xorNode);
|
|
58
61
|
}
|
|
59
62
|
let nextXorNode;
|
|
60
63
|
switch (scopeItem.kind) {
|
|
61
|
-
case
|
|
62
|
-
case
|
|
63
|
-
case
|
|
64
|
+
case scope_1.ScopeItemKind.Each:
|
|
65
|
+
case scope_1.ScopeItemKind.Parameter:
|
|
66
|
+
case scope_1.ScopeItemKind.Undefined:
|
|
64
67
|
break;
|
|
65
|
-
case
|
|
66
|
-
case
|
|
68
|
+
case scope_1.ScopeItemKind.LetVariable:
|
|
69
|
+
case scope_1.ScopeItemKind.RecordField:
|
|
67
70
|
nextXorNode = scopeItem.value;
|
|
68
71
|
break;
|
|
69
|
-
case
|
|
72
|
+
case scope_1.ScopeItemKind.SectionMember:
|
|
70
73
|
nextXorNode = scopeItem.value;
|
|
71
74
|
break;
|
|
72
75
|
default:
|
|
@@ -74,12 +77,12 @@ scopeById = new Map()) {
|
|
|
74
77
|
}
|
|
75
78
|
let result;
|
|
76
79
|
if (nextXorNode === undefined) {
|
|
77
|
-
result = Promise.resolve(powerquery_parser_1.ResultUtils.
|
|
80
|
+
result = Promise.resolve(powerquery_parser_1.ResultUtils.ok(xorNode));
|
|
78
81
|
}
|
|
79
|
-
else if (parser_1.XorNodeUtils.
|
|
80
|
-
(nextXorNode.node.kind !==
|
|
81
|
-
nextXorNode.node.kind !==
|
|
82
|
-
result = Promise.resolve(powerquery_parser_1.ResultUtils.
|
|
82
|
+
else if (parser_1.XorNodeUtils.isContext(nextXorNode) ||
|
|
83
|
+
(nextXorNode.node.kind !== language_1.Ast.NodeKind.Identifier &&
|
|
84
|
+
nextXorNode.node.kind !== language_1.Ast.NodeKind.IdentifierExpression)) {
|
|
85
|
+
result = Promise.resolve(powerquery_parser_1.ResultUtils.ok(xorNode));
|
|
83
86
|
}
|
|
84
87
|
else {
|
|
85
88
|
result = tryDeferenceIdentifier(updatedSettings, nodeIdMapCollection, nextXorNode, scopeById);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deferenceIdentifier.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/deferenceIdentifier.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,oEAAmE;AACnE,sFAA8G;
|
|
1
|
+
{"version":3,"file":"deferenceIdentifier.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/deferenceIdentifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,11 +8,12 @@ const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
|
8
8
|
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
9
9
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
10
10
|
const activeNode_1 = require("./activeNode");
|
|
11
|
+
const trace_1 = require("../trace");
|
|
11
12
|
function tryExpectedType(settings, activeNode) {
|
|
12
|
-
const trace = settings.traceManager.entry(
|
|
13
|
+
const trace = settings.traceManager.entry(trace_1.InspectionTraceConstant.InspectExpectedType, tryExpectedType.name, settings.initialCorrelationId);
|
|
13
14
|
if (!activeNode_1.ActiveNodeUtils.isPositionInBounds(activeNode)) {
|
|
14
15
|
trace.exit();
|
|
15
|
-
return powerquery_parser_1.ResultUtils.
|
|
16
|
+
return powerquery_parser_1.ResultUtils.ok(undefined);
|
|
16
17
|
}
|
|
17
18
|
const result = powerquery_parser_1.ResultUtils.ensureResult(() => findExpectedType(activeNode), settings.locale);
|
|
18
19
|
trace.exit();
|
|
@@ -30,11 +31,11 @@ function findExpectedType(activeNode) {
|
|
|
30
31
|
const parent = ancestry[index + 1];
|
|
31
32
|
const child = ancestry[index];
|
|
32
33
|
const childAttributeIndex = powerquery_parser_1.Assert.asDefined(child.node.attributeIndex, `Expected child to have an attribute index.`, { childId: child.node.id });
|
|
33
|
-
const attributeIndex = parser_1.XorNodeUtils.
|
|
34
|
+
const attributeIndex = parser_1.XorNodeUtils.isAst(parent) && activeNode.leafKind === activeNode_1.ActiveNodeLeafKind.IsAfterPosition
|
|
34
35
|
? childAttributeIndex + 1
|
|
35
36
|
: childAttributeIndex;
|
|
36
37
|
const allowedType = expectedType(parent, attributeIndex);
|
|
37
|
-
if (allowedType.kind !==
|
|
38
|
+
if (allowedType.kind !== language_1.Type.TypeKind.NotApplicable) {
|
|
38
39
|
bestMatch = allowedType;
|
|
39
40
|
}
|
|
40
41
|
}
|
|
@@ -44,45 +45,45 @@ exports.findExpectedType = findExpectedType;
|
|
|
44
45
|
// For a given parent node, what is the expected type for a child at a given index?
|
|
45
46
|
function expectedType(parentXorNode, childIndex) {
|
|
46
47
|
switch (parentXorNode.node.kind) {
|
|
47
|
-
case
|
|
48
|
-
case
|
|
49
|
-
case
|
|
50
|
-
case
|
|
51
|
-
case
|
|
52
|
-
case
|
|
53
|
-
case
|
|
54
|
-
case
|
|
55
|
-
case
|
|
56
|
-
case
|
|
57
|
-
case
|
|
58
|
-
case
|
|
59
|
-
case
|
|
60
|
-
case
|
|
61
|
-
case
|
|
62
|
-
case
|
|
63
|
-
case
|
|
64
|
-
case
|
|
65
|
-
case
|
|
66
|
-
case
|
|
48
|
+
case language_1.Ast.NodeKind.ArrayWrapper:
|
|
49
|
+
case language_1.Ast.NodeKind.Constant:
|
|
50
|
+
case language_1.Ast.NodeKind.Csv:
|
|
51
|
+
case language_1.Ast.NodeKind.GeneralizedIdentifier:
|
|
52
|
+
case language_1.Ast.NodeKind.Identifier:
|
|
53
|
+
case language_1.Ast.NodeKind.IdentifierExpression:
|
|
54
|
+
case language_1.Ast.NodeKind.InvokeExpression:
|
|
55
|
+
case language_1.Ast.NodeKind.FieldProjection:
|
|
56
|
+
case language_1.Ast.NodeKind.FieldSelector:
|
|
57
|
+
case language_1.Ast.NodeKind.FieldSpecificationList:
|
|
58
|
+
case language_1.Ast.NodeKind.ListExpression:
|
|
59
|
+
case language_1.Ast.NodeKind.ListLiteral:
|
|
60
|
+
case language_1.Ast.NodeKind.LiteralExpression:
|
|
61
|
+
case language_1.Ast.NodeKind.RecordLiteral:
|
|
62
|
+
case language_1.Ast.NodeKind.RecordType:
|
|
63
|
+
case language_1.Ast.NodeKind.Parameter:
|
|
64
|
+
case language_1.Ast.NodeKind.ParameterList:
|
|
65
|
+
case language_1.Ast.NodeKind.PrimitiveType:
|
|
66
|
+
case language_1.Ast.NodeKind.RecordExpression:
|
|
67
|
+
case language_1.Ast.NodeKind.RecursivePrimaryExpression:
|
|
67
68
|
return language_1.Type.NotApplicableInstance;
|
|
68
|
-
case
|
|
69
|
-
case
|
|
70
|
-
case
|
|
71
|
-
case
|
|
69
|
+
case language_1.Ast.NodeKind.ArithmeticExpression:
|
|
70
|
+
case language_1.Ast.NodeKind.EqualityExpression:
|
|
71
|
+
case language_1.Ast.NodeKind.LogicalExpression:
|
|
72
|
+
case language_1.Ast.NodeKind.RelationalExpression:
|
|
72
73
|
return expectTypeBinOpExpression(parentXorNode, childIndex);
|
|
73
|
-
case
|
|
74
|
-
case
|
|
74
|
+
case language_1.Ast.NodeKind.AsExpression:
|
|
75
|
+
case language_1.Ast.NodeKind.IsExpression:
|
|
75
76
|
return expectTypeAsOrIsExpression(parentXorNode, childIndex);
|
|
76
|
-
case
|
|
77
|
-
case
|
|
77
|
+
case language_1.Ast.NodeKind.CatchExpression:
|
|
78
|
+
case language_1.Ast.NodeKind.OtherwiseExpression:
|
|
78
79
|
return expectTypeErrorHandler(parentXorNode, childIndex);
|
|
79
|
-
case
|
|
80
|
-
case
|
|
80
|
+
case language_1.Ast.NodeKind.GeneralizedIdentifierPairedExpression:
|
|
81
|
+
case language_1.Ast.NodeKind.IdentifierPairedExpression:
|
|
81
82
|
return expectTypeIdentifierPairedExpression(parentXorNode, childIndex);
|
|
82
|
-
case
|
|
83
|
-
case
|
|
83
|
+
case language_1.Ast.NodeKind.Section:
|
|
84
|
+
case language_1.Ast.NodeKind.SectionMember:
|
|
84
85
|
return expectTypeSectionOrSectionMember(childIndex);
|
|
85
|
-
case
|
|
86
|
+
case language_1.Ast.NodeKind.AsType:
|
|
86
87
|
switch (childIndex) {
|
|
87
88
|
case 0:
|
|
88
89
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -91,7 +92,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
91
92
|
default:
|
|
92
93
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
93
94
|
}
|
|
94
|
-
case
|
|
95
|
+
case language_1.Ast.NodeKind.AsNullablePrimitiveType:
|
|
95
96
|
switch (childIndex) {
|
|
96
97
|
case 0:
|
|
97
98
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -100,7 +101,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
100
101
|
default:
|
|
101
102
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
102
103
|
}
|
|
103
|
-
case
|
|
104
|
+
case language_1.Ast.NodeKind.EachExpression:
|
|
104
105
|
switch (childIndex) {
|
|
105
106
|
case 0:
|
|
106
107
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -109,7 +110,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
109
110
|
default:
|
|
110
111
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
111
112
|
}
|
|
112
|
-
case
|
|
113
|
+
case language_1.Ast.NodeKind.ErrorHandlingExpression:
|
|
113
114
|
switch (childIndex) {
|
|
114
115
|
case 0:
|
|
115
116
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -121,9 +122,9 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
121
122
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
122
123
|
}
|
|
123
124
|
// TODO: how should error raising be typed?
|
|
124
|
-
case
|
|
125
|
+
case language_1.Ast.NodeKind.ErrorRaisingExpression:
|
|
125
126
|
return language_1.Type.NotApplicableInstance;
|
|
126
|
-
case
|
|
127
|
+
case language_1.Ast.NodeKind.GeneralizedIdentifierPairedAnyLiteral:
|
|
127
128
|
switch (childIndex) {
|
|
128
129
|
case 0:
|
|
129
130
|
case 1:
|
|
@@ -133,7 +134,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
133
134
|
default:
|
|
134
135
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
135
136
|
}
|
|
136
|
-
case
|
|
137
|
+
case language_1.Ast.NodeKind.FieldSpecification:
|
|
137
138
|
switch (childIndex) {
|
|
138
139
|
case 0:
|
|
139
140
|
case 1:
|
|
@@ -143,7 +144,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
143
144
|
default:
|
|
144
145
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
145
146
|
}
|
|
146
|
-
case
|
|
147
|
+
case language_1.Ast.NodeKind.FieldTypeSpecification:
|
|
147
148
|
switch (childIndex) {
|
|
148
149
|
case 0:
|
|
149
150
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -152,7 +153,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
152
153
|
default:
|
|
153
154
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
154
155
|
}
|
|
155
|
-
case
|
|
156
|
+
case language_1.Ast.NodeKind.FunctionExpression:
|
|
156
157
|
switch (childIndex) {
|
|
157
158
|
case 0:
|
|
158
159
|
case 2:
|
|
@@ -164,7 +165,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
164
165
|
default:
|
|
165
166
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
166
167
|
}
|
|
167
|
-
case
|
|
168
|
+
case language_1.Ast.NodeKind.FunctionType:
|
|
168
169
|
switch (childIndex) {
|
|
169
170
|
case 0:
|
|
170
171
|
case 1:
|
|
@@ -174,7 +175,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
174
175
|
default:
|
|
175
176
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
176
177
|
}
|
|
177
|
-
case
|
|
178
|
+
case language_1.Ast.NodeKind.IfExpression:
|
|
178
179
|
switch (childIndex) {
|
|
179
180
|
case 0:
|
|
180
181
|
case 2:
|
|
@@ -188,7 +189,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
188
189
|
default:
|
|
189
190
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
190
191
|
}
|
|
191
|
-
case
|
|
192
|
+
case language_1.Ast.NodeKind.IsNullablePrimitiveType:
|
|
192
193
|
switch (childIndex) {
|
|
193
194
|
case 0:
|
|
194
195
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -197,7 +198,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
197
198
|
default:
|
|
198
199
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
199
200
|
}
|
|
200
|
-
case
|
|
201
|
+
case language_1.Ast.NodeKind.ItemAccessExpression:
|
|
201
202
|
switch (childIndex) {
|
|
202
203
|
case 0:
|
|
203
204
|
case 2:
|
|
@@ -208,7 +209,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
208
209
|
default:
|
|
209
210
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
210
211
|
}
|
|
211
|
-
case
|
|
212
|
+
case language_1.Ast.NodeKind.LetExpression:
|
|
212
213
|
switch (childIndex) {
|
|
213
214
|
case 0:
|
|
214
215
|
case 1:
|
|
@@ -219,7 +220,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
219
220
|
default:
|
|
220
221
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
221
222
|
}
|
|
222
|
-
case
|
|
223
|
+
case language_1.Ast.NodeKind.ListType:
|
|
223
224
|
switch (childIndex) {
|
|
224
225
|
case 0:
|
|
225
226
|
case 2:
|
|
@@ -229,7 +230,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
229
230
|
default:
|
|
230
231
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
231
232
|
}
|
|
232
|
-
case
|
|
233
|
+
case language_1.Ast.NodeKind.MetadataExpression:
|
|
233
234
|
switch (childIndex) {
|
|
234
235
|
case 1:
|
|
235
236
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -239,14 +240,14 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
239
240
|
default:
|
|
240
241
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
241
242
|
}
|
|
242
|
-
case
|
|
243
|
+
case language_1.Ast.NodeKind.NotImplementedExpression:
|
|
243
244
|
switch (childIndex) {
|
|
244
245
|
case 0:
|
|
245
246
|
return language_1.Type.NotApplicableInstance;
|
|
246
247
|
default:
|
|
247
248
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
248
249
|
}
|
|
249
|
-
case
|
|
250
|
+
case language_1.Ast.NodeKind.NullCoalescingExpression:
|
|
250
251
|
switch (childIndex) {
|
|
251
252
|
case 0:
|
|
252
253
|
case 2:
|
|
@@ -256,7 +257,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
256
257
|
default:
|
|
257
258
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
258
259
|
}
|
|
259
|
-
case
|
|
260
|
+
case language_1.Ast.NodeKind.NullablePrimitiveType:
|
|
260
261
|
switch (childIndex) {
|
|
261
262
|
case 0:
|
|
262
263
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -265,7 +266,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
265
266
|
default:
|
|
266
267
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
267
268
|
}
|
|
268
|
-
case
|
|
269
|
+
case language_1.Ast.NodeKind.NullableType:
|
|
269
270
|
switch (childIndex) {
|
|
270
271
|
case 0:
|
|
271
272
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -274,7 +275,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
274
275
|
default:
|
|
275
276
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
276
277
|
}
|
|
277
|
-
case
|
|
278
|
+
case language_1.Ast.NodeKind.ParenthesizedExpression:
|
|
278
279
|
switch (childIndex) {
|
|
279
280
|
case 0:
|
|
280
281
|
case 2:
|
|
@@ -284,7 +285,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
284
285
|
default:
|
|
285
286
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
286
287
|
}
|
|
287
|
-
case
|
|
288
|
+
case language_1.Ast.NodeKind.RangeExpression:
|
|
288
289
|
switch (childIndex) {
|
|
289
290
|
case 0:
|
|
290
291
|
case 2:
|
|
@@ -294,7 +295,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
294
295
|
default:
|
|
295
296
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
296
297
|
}
|
|
297
|
-
case
|
|
298
|
+
case language_1.Ast.NodeKind.TableType:
|
|
298
299
|
switch (childIndex) {
|
|
299
300
|
case 1:
|
|
300
301
|
case 2:
|
|
@@ -302,7 +303,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
302
303
|
default:
|
|
303
304
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
304
305
|
}
|
|
305
|
-
case
|
|
306
|
+
case language_1.Ast.NodeKind.TypePrimaryType:
|
|
306
307
|
switch (childIndex) {
|
|
307
308
|
case 0:
|
|
308
309
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -311,7 +312,7 @@ function expectedType(parentXorNode, childIndex) {
|
|
|
311
312
|
default:
|
|
312
313
|
throw unknownChildIndexError(parentXorNode, childIndex);
|
|
313
314
|
}
|
|
314
|
-
case
|
|
315
|
+
case language_1.Ast.NodeKind.UnaryExpression:
|
|
315
316
|
switch (childIndex) {
|
|
316
317
|
case 0:
|
|
317
318
|
return language_1.Type.NotApplicableInstance;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expectedType.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/expectedType.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expectedType.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/expectedType.ts"],"names":[],"mappings":"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"}
|
package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js
CHANGED
|
@@ -14,10 +14,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
exports.tryCurrentInvokeExpression = void 0;
|
|
15
15
|
const PQP = require("@microsoft/powerquery-parser");
|
|
16
16
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
|
+
const trace_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/common/trace");
|
|
18
|
+
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
17
19
|
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
18
20
|
const activeNode_1 = require("../activeNode");
|
|
19
21
|
const invokeExpression_1 = require("./invokeExpression");
|
|
20
22
|
const typeCache_1 = require("../typeCache");
|
|
23
|
+
const __1 = require("../..");
|
|
21
24
|
// If the cursor is in an InvokeExpression then return:
|
|
22
25
|
// * the number of given arguments
|
|
23
26
|
// * the number of expected arguments
|
|
@@ -27,13 +30,13 @@ const typeCache_1 = require("../typeCache");
|
|
|
27
30
|
function tryCurrentInvokeExpression(settings, nodeIdMapCollection, activeNode,
|
|
28
31
|
// If a TypeCache is given, then potentially add to its values and include it as part of the return,
|
|
29
32
|
// Else create a new TypeCache and include it in the return.
|
|
30
|
-
typeCache = typeCache_1.TypeCacheUtils.
|
|
33
|
+
typeCache = typeCache_1.TypeCacheUtils.emptyCache()) {
|
|
31
34
|
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
-
const trace = settings.traceManager.entry(
|
|
35
|
+
const trace = settings.traceManager.entry(__1.InspectionTraceConstant.InspectCurrentInvokeExpression, tryCurrentInvokeExpression.name, settings.initialCorrelationId);
|
|
33
36
|
const updatedSettings = Object.assign(Object.assign({}, settings), { initialCorrelationId: trace.id });
|
|
34
37
|
if (!activeNode_1.ActiveNodeUtils.isPositionInBounds(activeNode)) {
|
|
35
38
|
trace.exit();
|
|
36
|
-
return Promise.resolve(powerquery_parser_1.ResultUtils.
|
|
39
|
+
return Promise.resolve(powerquery_parser_1.ResultUtils.ok(undefined));
|
|
37
40
|
}
|
|
38
41
|
const result = yield powerquery_parser_1.ResultUtils.ensureResultAsync(() => inspectInvokeExpression(updatedSettings, nodeIdMapCollection, activeNode, typeCache, trace.id), updatedSettings.locale);
|
|
39
42
|
trace.exit();
|
|
@@ -43,18 +46,18 @@ typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
|
|
|
43
46
|
exports.tryCurrentInvokeExpression = tryCurrentInvokeExpression;
|
|
44
47
|
function inspectInvokeExpression(settings, nodeIdMapCollection, activeNode, typeCache, correlationId) {
|
|
45
48
|
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
-
const trace = settings.traceManager.entry(
|
|
49
|
+
const trace = settings.traceManager.entry(__1.InspectionTraceConstant.InspectCurrentInvokeExpression, inspectInvokeExpression.name, correlationId);
|
|
47
50
|
const updatedSettings = Object.assign(Object.assign({}, settings), { initialCorrelationId: trace.id });
|
|
48
51
|
const ancestry = activeNode.ancestry;
|
|
49
|
-
const
|
|
50
|
-
if (
|
|
52
|
+
const ancestryIndex = parser_1.AncestryUtils.indexOfNodeKind(ancestry, language_1.Ast.NodeKind.InvokeExpression);
|
|
53
|
+
if (ancestryIndex === undefined) {
|
|
51
54
|
trace.exit();
|
|
52
55
|
return undefined;
|
|
53
56
|
}
|
|
54
|
-
const
|
|
57
|
+
const invokeExpressionXorNode = parser_1.AncestryUtils.assertNth(ancestry, ancestryIndex);
|
|
55
58
|
const triedInvokeExpression = yield (0, invokeExpression_1.tryInvokeExpression)(updatedSettings, nodeIdMapCollection, invokeExpressionXorNode.node.id, typeCache);
|
|
56
59
|
if (powerquery_parser_1.ResultUtils.isError(triedInvokeExpression)) {
|
|
57
|
-
trace.exit({ [
|
|
60
|
+
trace.exit({ [trace_1.TraceConstant.IsThrowing]: true });
|
|
58
61
|
throw triedInvokeExpression;
|
|
59
62
|
}
|
|
60
63
|
const invokeExpression = triedInvokeExpression.value;
|
|
@@ -71,21 +74,23 @@ function inspectInvokeExpression(settings, nodeIdMapCollection, activeNode, type
|
|
|
71
74
|
function getArgumentOrdinal(nodeIdMapCollection, activeNode, ancestryIndex, invokeExpressionXorNode) {
|
|
72
75
|
var _a;
|
|
73
76
|
// `foo(1|)
|
|
74
|
-
const ancestryCsv = parser_1.AncestryUtils.
|
|
77
|
+
const ancestryCsv = parser_1.AncestryUtils.nthChecked(activeNode.ancestry, ancestryIndex - 2, language_1.Ast.NodeKind.Csv);
|
|
75
78
|
if (ancestryCsv !== undefined) {
|
|
76
79
|
return (_a = ancestryCsv.node.attributeIndex) !== null && _a !== void 0 ? _a : 0;
|
|
77
80
|
}
|
|
78
|
-
const previousXor = parser_1.AncestryUtils.
|
|
79
|
-
|
|
80
|
-
|
|
81
|
+
const previousXor = parser_1.AncestryUtils.nthChecked(activeNode.ancestry, ancestryIndex - 1, [
|
|
82
|
+
// `foo(|)`
|
|
83
|
+
language_1.Ast.NodeKind.ArrayWrapper,
|
|
84
|
+
// `foo(1|`
|
|
85
|
+
language_1.Ast.NodeKind.Constant,
|
|
81
86
|
]);
|
|
82
87
|
let arrayWrapperXorNode;
|
|
83
88
|
switch (previousXor === null || previousXor === void 0 ? void 0 : previousXor.node.kind) {
|
|
84
|
-
case
|
|
85
|
-
arrayWrapperXorNode = parser_1.NodeIdMapUtils.
|
|
89
|
+
case language_1.Ast.NodeKind.Constant: {
|
|
90
|
+
arrayWrapperXorNode = parser_1.NodeIdMapUtils.assertNthChildXorChecked(nodeIdMapCollection, invokeExpressionXorNode.node.id, 1, language_1.Ast.NodeKind.ArrayWrapper);
|
|
86
91
|
break;
|
|
87
92
|
}
|
|
88
|
-
case
|
|
93
|
+
case language_1.Ast.NodeKind.ArrayWrapper: {
|
|
89
94
|
arrayWrapperXorNode = previousXor;
|
|
90
95
|
break;
|
|
91
96
|
}
|
package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"currentInvokeExpression.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,sFAKmE;
|
|
1
|
+
{"version":3,"file":"currentInvokeExpression.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.ts"],"names":[],"mappings":"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"}
|