@microsoft/powerquery-language-services 0.3.41 → 0.5.0
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 +17 -9
- package/lib/powerquery-language-services/analysis/analysisBase.d.ts +41 -27
- package/lib/powerquery-language-services/analysis/analysisBase.js +519 -179
- package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
- package/lib/powerquery-language-services/analysis/analysisSettings.d.ts +8 -11
- package/lib/powerquery-language-services/analysis/analysisUtils.d.ts +1 -2
- package/lib/powerquery-language-services/analysis/analysisUtils.js +20 -2
- package/lib/powerquery-language-services/analysis/analysisUtils.js.map +1 -1
- package/lib/powerquery-language-services/analysis/documentAnalysis.d.ts +4 -6
- package/lib/powerquery-language-services/analysis/documentAnalysis.js +4 -11
- package/lib/powerquery-language-services/analysis/documentAnalysis.js.map +1 -1
- package/lib/powerquery-language-services/analysis/memoizedAnalysis.d.ts +18 -0
- package/lib/powerquery-language-services/analysis/memoizedAnalysis.js +66 -0
- package/lib/powerquery-language-services/analysis/memoizedAnalysis.js.map +1 -0
- package/lib/powerquery-language-services/formatter.d.ts +1 -1
- package/lib/powerquery-language-services/formatter.js +2 -4
- package/lib/powerquery-language-services/formatter.js.map +1 -1
- package/lib/powerquery-language-services/index.d.ts +0 -1
- package/lib/powerquery-language-services/index.js +0 -1
- package/lib/powerquery-language-services/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +5 -5
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.d.ts +5 -5
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +78 -83
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +37 -40
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.d.ts +7 -7
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +17 -17
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.d.ts +3 -3
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +43 -43
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +7 -7
- 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 +4 -4
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +20 -22
- 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 +9 -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 +5 -5
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js +4 -4
- 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 +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +21 -26
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +21 -21
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/commonTypes.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/task.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/task.js +12 -12
- package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/commonTypes.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js +12 -13
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/expectedType.d.ts +3 -3
- package/lib/powerquery-language-services/inspection/expectedType.js +8 -8
- package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/common.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +24 -24
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +17 -18
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +20 -22
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scope.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +47 -45
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.d.ts +7 -7
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +15 -15
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/task.d.ts +4 -4
- package/lib/powerquery-language-services/inspection/task.js +17 -18
- package/lib/powerquery-language-services/inspection/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +7 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +56 -59
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +4 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +14 -12
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +13 -13
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +9 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +13 -14
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +6 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +8 -8
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +9 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +5 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +5 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +18 -18
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +7 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +2 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +10 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +6 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +10 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +7 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +6 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +10 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +35 -41
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +9 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +10 -12
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/task.js +5 -5
- package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
- package/lib/powerquery-language-services/inspectionSettings.d.ts +1 -1
- package/lib/powerquery-language-services/inspectionUtils.d.ts +3 -6
- package/lib/powerquery-language-services/inspectionUtils.js +20 -75
- 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/libraryUtils.d.ts +9 -9
- package/lib/powerquery-language-services/library/libraryUtils.js +21 -21
- package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
- package/lib/powerquery-language-services/localization/localization.d.ts +3 -3
- package/lib/powerquery-language-services/localization/localization.js +9 -9
- package/lib/powerquery-language-services/localization/localization.js.map +1 -1
- package/lib/powerquery-language-services/positionUtils.js +16 -17
- package/lib/powerquery-language-services/positionUtils.js.map +1 -1
- package/lib/powerquery-language-services/providers/commonTypes.d.ts +38 -13
- package/lib/powerquery-language-services/providers/index.d.ts +2 -2
- package/lib/powerquery-language-services/providers/index.js +4 -4
- package/lib/powerquery-language-services/providers/index.js.map +1 -1
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.d.ts +4 -4
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +22 -19
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/libraryProvider.d.ts +17 -0
- package/lib/powerquery-language-services/providers/libraryProvider.js +129 -0
- package/lib/powerquery-language-services/providers/libraryProvider.js.map +1 -0
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js +3 -3
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.d.ts +18 -20
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js +127 -127
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js +45 -43
- package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js.map +1 -1
- package/lib/powerquery-language-services/providers/nullSymbolProvider.d.ts +10 -8
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js +7 -6
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/traceUtils.d.ts +1 -1
- package/lib/powerquery-language-services/traceUtils.js +1 -1
- package/lib/powerquery-language-services/traceUtils.js.map +1 -1
- package/lib/powerquery-language-services/validate/validate.d.ts +2 -2
- package/lib/powerquery-language-services/validate/validate.js +19 -20
- package/lib/powerquery-language-services/validate/validate.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.d.ts +2 -1
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +24 -54
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js +6 -6
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateInvokeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js +23 -23
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateParse.d.ts +4 -0
- package/lib/powerquery-language-services/validate/validateParse.js +74 -0
- package/lib/powerquery-language-services/validate/validateParse.js.map +1 -0
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js +13 -14
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js.map +1 -1
- package/lib/powerquery-language-services/workspaceCache/workspaceCache.d.ts +2 -2
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js +31 -31
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js.map +1 -1
- package/package.json +3 -3
- package/lib/powerquery-language-services/documentSymbols.d.ts +0 -3
- package/lib/powerquery-language-services/documentSymbols.js +0 -100
- package/lib/powerquery-language-services/documentSymbols.js.map +0 -1
- package/lib/powerquery-language-services/providers/librarySymbolProvider.d.ts +0 -15
- package/lib/powerquery-language-services/providers/librarySymbolProvider.js +0 -117
- package/lib/powerquery-language-services/providers/librarySymbolProvider.js.map +0 -1
- package/lib/powerquery-language-services/validate/validateLexAndParse.d.ts +0 -4
- package/lib/powerquery-language-services/validate/validateLexAndParse.js +0 -130
- package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +0 -1
|
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
});
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.createParameterType = exports.
|
|
14
|
+
exports.createParameterType = exports.dereferencedIdentifierType = exports.inspectXor = exports.inspectTypeFromChildAttributeIndex = exports.inspectScopeItem = exports.getOrCreateScopeItemType = exports.getOrCreateScope = exports.assertGetOrCreateNodeScope = exports.allForAnyUnion = void 0;
|
|
15
15
|
const PQP = require("@microsoft/powerquery-parser");
|
|
16
16
|
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
17
17
|
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
@@ -48,19 +48,19 @@ const deferenceIdentifier_1 = require("../../deferenceIdentifier");
|
|
|
48
48
|
// Recursively flattens all AnyUnion.unionedTypePairs into a single array,
|
|
49
49
|
// maps each entry into a boolean,
|
|
50
50
|
// then calls all(...) on the mapped values.
|
|
51
|
-
function allForAnyUnion(anyUnion,
|
|
51
|
+
function allForAnyUnion(anyUnion, predicate) {
|
|
52
52
|
return (anyUnion.unionedTypePairs
|
|
53
|
-
.map((type) => type.
|
|
54
|
-
? allForAnyUnion(type,
|
|
55
|
-
:
|
|
53
|
+
.map((type) => type.extendedKind === "AnyUnion" /* AnyUnion */
|
|
54
|
+
? allForAnyUnion(type, predicate)
|
|
55
|
+
: predicate(type))
|
|
56
56
|
.indexOf(false) === -1);
|
|
57
57
|
}
|
|
58
58
|
exports.allForAnyUnion = allForAnyUnion;
|
|
59
|
-
function assertGetOrCreateNodeScope(state, nodeId,
|
|
59
|
+
function assertGetOrCreateNodeScope(state, nodeId, correlationId) {
|
|
60
60
|
var _a;
|
|
61
61
|
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, assertGetOrCreateNodeScope.name,
|
|
63
|
-
(_a = state.
|
|
62
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, assertGetOrCreateNodeScope.name, correlationId);
|
|
63
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
64
64
|
const triedGetOrCreateScope = yield getOrCreateScope(state, nodeId, trace.id);
|
|
65
65
|
if (powerquery_parser_1.ResultUtils.isError(triedGetOrCreateScope)) {
|
|
66
66
|
trace.exit({ ["IsThrowing" /* IsThrowing */]: true });
|
|
@@ -71,16 +71,16 @@ function assertGetOrCreateNodeScope(state, nodeId, maybeCorrelationId) {
|
|
|
71
71
|
});
|
|
72
72
|
}
|
|
73
73
|
exports.assertGetOrCreateNodeScope = assertGetOrCreateNodeScope;
|
|
74
|
-
function getOrCreateScope(state, nodeId,
|
|
74
|
+
function getOrCreateScope(state, nodeId, correlationId) {
|
|
75
75
|
var _a;
|
|
76
76
|
return __awaiter(this, void 0, void 0, function* () {
|
|
77
|
-
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, getOrCreateScope.name,
|
|
78
|
-
const updatedState = Object.assign(Object.assign({}, state), {
|
|
79
|
-
(_a = state.
|
|
80
|
-
const
|
|
81
|
-
if (
|
|
77
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, getOrCreateScope.name, correlationId);
|
|
78
|
+
const updatedState = Object.assign(Object.assign({}, state), { initialCorrelationId: trace.id });
|
|
79
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
80
|
+
const nodeScope = updatedState.scopeById.get(nodeId);
|
|
81
|
+
if (nodeScope !== undefined) {
|
|
82
82
|
trace.exit();
|
|
83
|
-
return powerquery_parser_1.ResultUtils.boxOk(
|
|
83
|
+
return powerquery_parser_1.ResultUtils.boxOk(nodeScope);
|
|
84
84
|
}
|
|
85
85
|
const result = yield (0, scope_1.tryNodeScope)(updatedState, state.nodeIdMapCollection, nodeId, state.scopeById);
|
|
86
86
|
trace.exit();
|
|
@@ -90,12 +90,12 @@ function getOrCreateScope(state, nodeId, maybeCorrelationId) {
|
|
|
90
90
|
exports.getOrCreateScope = getOrCreateScope;
|
|
91
91
|
function getOrCreateScopeItemType(state, scopeItem) {
|
|
92
92
|
return __awaiter(this, void 0, void 0, function* () {
|
|
93
|
-
const trace = state.traceManager.entry("Inspection.ScopeItem" /* InspectScopeItem */, getOrCreateScopeItemType.name, state.
|
|
93
|
+
const trace = state.traceManager.entry("Inspection.ScopeItem" /* InspectScopeItem */, getOrCreateScopeItemType.name, state.initialCorrelationId);
|
|
94
94
|
const nodeId = scopeItem.id;
|
|
95
|
-
const
|
|
96
|
-
if (
|
|
95
|
+
const type = state.typeById.get(nodeId);
|
|
96
|
+
if (type !== undefined) {
|
|
97
97
|
trace.exit({ cacheHit: true });
|
|
98
|
-
return
|
|
98
|
+
return type;
|
|
99
99
|
}
|
|
100
100
|
const scopeType = yield inspectScopeItem(state, scopeItem, trace.id);
|
|
101
101
|
trace.exit();
|
|
@@ -103,19 +103,19 @@ function getOrCreateScopeItemType(state, scopeItem) {
|
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
exports.getOrCreateScopeItemType = getOrCreateScopeItemType;
|
|
106
|
-
function inspectScopeItem(state, scopeItem,
|
|
106
|
+
function inspectScopeItem(state, scopeItem, correlationId) {
|
|
107
107
|
var _a;
|
|
108
108
|
return __awaiter(this, void 0, void 0, function* () {
|
|
109
|
-
(_a = state.
|
|
109
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
110
110
|
switch (scopeItem.kind) {
|
|
111
111
|
case "LetVariable" /* LetVariable */:
|
|
112
112
|
case "RecordField" /* RecordField */:
|
|
113
113
|
case "SectionMember" /* SectionMember */:
|
|
114
|
-
return scopeItem.
|
|
114
|
+
return scopeItem.value === undefined
|
|
115
115
|
? language_1.Type.UnknownInstance
|
|
116
|
-
: yield inspectXor(state, scopeItem.
|
|
116
|
+
: yield inspectXor(state, scopeItem.value, correlationId);
|
|
117
117
|
case "Each" /* Each */:
|
|
118
|
-
return yield inspectXor(state, scopeItem.eachExpression,
|
|
118
|
+
return yield inspectXor(state, scopeItem.eachExpression, correlationId);
|
|
119
119
|
case "Parameter" /* Parameter */:
|
|
120
120
|
return createParameterType(scopeItem);
|
|
121
121
|
case "Undefined" /* Undefined */:
|
|
@@ -126,28 +126,28 @@ function inspectScopeItem(state, scopeItem, maybeCorrelationId) {
|
|
|
126
126
|
});
|
|
127
127
|
}
|
|
128
128
|
exports.inspectScopeItem = inspectScopeItem;
|
|
129
|
-
function inspectTypeFromChildAttributeIndex(state, parentXorNode, attributeIndex,
|
|
129
|
+
function inspectTypeFromChildAttributeIndex(state, parentXorNode, attributeIndex, correlationId) {
|
|
130
130
|
var _a;
|
|
131
131
|
return __awaiter(this, void 0, void 0, function* () {
|
|
132
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFromChildAttributeIndex.name,
|
|
133
|
-
(_a = state.
|
|
134
|
-
const
|
|
135
|
-
const result =
|
|
132
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFromChildAttributeIndex.name, correlationId, __1.TraceUtils.createXorNodeDetails(parentXorNode));
|
|
133
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
134
|
+
const xorNode = PQP.Parser.NodeIdMapUtils.nthChild(state.nodeIdMapCollection, parentXorNode.node.id, attributeIndex);
|
|
135
|
+
const result = xorNode !== undefined ? yield inspectXor(state, xorNode, trace.id) : language_1.Type.UnknownInstance;
|
|
136
136
|
trace.exit();
|
|
137
137
|
return result;
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
exports.inspectTypeFromChildAttributeIndex = inspectTypeFromChildAttributeIndex;
|
|
141
|
-
function inspectXor(state, xorNode,
|
|
141
|
+
function inspectXor(state, xorNode, correlationId) {
|
|
142
142
|
var _a;
|
|
143
143
|
return __awaiter(this, void 0, void 0, function* () {
|
|
144
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectXor.name,
|
|
145
|
-
(_a = state.
|
|
144
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectXor.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
145
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
146
146
|
const xorNodeId = xorNode.node.id;
|
|
147
|
-
const
|
|
148
|
-
if (
|
|
147
|
+
const cached = state.typeById.get(xorNodeId);
|
|
148
|
+
if (cached !== undefined) {
|
|
149
149
|
trace.exit();
|
|
150
|
-
return Promise.resolve(
|
|
150
|
+
return Promise.resolve(cached);
|
|
151
151
|
}
|
|
152
152
|
let result;
|
|
153
153
|
switch (xorNode.node.kind) {
|
|
@@ -285,17 +285,17 @@ function inspectXor(state, xorNode, maybeCorrelationId) {
|
|
|
285
285
|
throw powerquery_parser_1.Assert.isNever(xorNode.node);
|
|
286
286
|
}
|
|
287
287
|
state.typeById.set(xorNodeId, result);
|
|
288
|
-
trace.exit({ resultKind: result.kind,
|
|
288
|
+
trace.exit({ resultKind: result.kind, extendedKind: result.extendedKind });
|
|
289
289
|
return result;
|
|
290
290
|
});
|
|
291
291
|
}
|
|
292
292
|
exports.inspectXor = inspectXor;
|
|
293
|
-
function
|
|
293
|
+
function dereferencedIdentifierType(state, xorNode, correlationId) {
|
|
294
294
|
var _a;
|
|
295
295
|
return __awaiter(this, void 0, void 0, function* () {
|
|
296
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */,
|
|
297
|
-
(_a = state.
|
|
298
|
-
const updatedSettings = Object.assign(Object.assign({}, state), {
|
|
296
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, dereferencedIdentifierType.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
297
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
298
|
+
const updatedSettings = Object.assign(Object.assign({}, state), { initialCorrelationId: trace.id });
|
|
299
299
|
const triedDeference = yield (0, deferenceIdentifier_1.tryDeferenceIdentifier)(updatedSettings, state.nodeIdMapCollection, xorNode, state.scopeById);
|
|
300
300
|
if (powerquery_parser_1.ResultUtils.isError(triedDeference)) {
|
|
301
301
|
trace.exit({ ["IsThrowing" /* IsThrowing */]: true });
|
|
@@ -305,38 +305,37 @@ function maybeDereferencedIdentifierType(state, xorNode, maybeCorrelationId) {
|
|
|
305
305
|
trace.exit();
|
|
306
306
|
return undefined;
|
|
307
307
|
}
|
|
308
|
-
const
|
|
309
|
-
if (
|
|
308
|
+
const dereferencedLiteral = parser_1.XorNodeUtils.identifierExpressionLiteral(triedDeference.value);
|
|
309
|
+
if (dereferencedLiteral === undefined) {
|
|
310
310
|
trace.exit();
|
|
311
311
|
return undefined;
|
|
312
312
|
}
|
|
313
|
-
const deferencedLiteral =
|
|
313
|
+
const deferencedLiteral = dereferencedLiteral;
|
|
314
314
|
const nodeScope = yield assertGetOrCreateNodeScope(state, triedDeference.value.node.id, trace.id);
|
|
315
315
|
// When referencing an identifier as a recursive identifier there's no requirements
|
|
316
316
|
// for it to resolve to a recursive reference.
|
|
317
317
|
// This if it's a recursive identifier we need to also try the identifier without the recursive `@` prefix.
|
|
318
|
-
let
|
|
319
|
-
if (deferencedLiteral.startsWith("@") &&
|
|
320
|
-
|
|
318
|
+
let scopeItem = nodeScope.get(deferencedLiteral);
|
|
319
|
+
if (deferencedLiteral.startsWith("@") && scopeItem === undefined) {
|
|
320
|
+
scopeItem = nodeScope.get(deferencedLiteral.slice(1));
|
|
321
321
|
}
|
|
322
322
|
// The deferenced identifier can't be resolved within the local scope.
|
|
323
323
|
// It either is either an invalid identifier or an external identifier (e.g `Odbc.Database`).
|
|
324
|
-
if (
|
|
324
|
+
if (scopeItem === undefined) {
|
|
325
325
|
const request = externalType_1.ExternalTypeUtils.createValueTypeRequest(deferencedLiteral);
|
|
326
326
|
const result = state.library.externalTypeResolver(request);
|
|
327
327
|
trace.exit();
|
|
328
328
|
return result;
|
|
329
329
|
}
|
|
330
|
-
|
|
331
|
-
let maybeNextXorNode;
|
|
330
|
+
let nextXorNode;
|
|
332
331
|
switch (scopeItem.kind) {
|
|
333
332
|
case "LetVariable" /* LetVariable */:
|
|
334
333
|
case "RecordField" /* RecordField */:
|
|
335
334
|
case "SectionMember" /* SectionMember */:
|
|
336
|
-
|
|
335
|
+
nextXorNode = scopeItem.value;
|
|
337
336
|
break;
|
|
338
337
|
case "Each" /* Each */:
|
|
339
|
-
|
|
338
|
+
nextXorNode = scopeItem.eachExpression;
|
|
340
339
|
break;
|
|
341
340
|
case "Parameter" /* Parameter */:
|
|
342
341
|
return createParameterType(scopeItem);
|
|
@@ -348,23 +347,21 @@ function maybeDereferencedIdentifierType(state, xorNode, maybeCorrelationId) {
|
|
|
348
347
|
}
|
|
349
348
|
// Infinite recursion on an inclusive identifier.
|
|
350
349
|
// There's no good way to handle the type of this as it requires evaluation, so mark it as any.
|
|
351
|
-
if (deferencedLiteral.startsWith("@") && (
|
|
350
|
+
if (deferencedLiteral.startsWith("@") && (nextXorNode === null || nextXorNode === void 0 ? void 0 : nextXorNode.node.id) === xorNode.node.id) {
|
|
352
351
|
return language_1.Type.AnyInstance;
|
|
353
352
|
}
|
|
354
|
-
const result =
|
|
355
|
-
? yield inspectXor(state,
|
|
353
|
+
const result = nextXorNode
|
|
354
|
+
? yield inspectXor(state, nextXorNode, trace.id)
|
|
356
355
|
: undefined;
|
|
357
356
|
trace.exit();
|
|
358
357
|
return result;
|
|
359
358
|
});
|
|
360
359
|
}
|
|
361
|
-
exports.
|
|
360
|
+
exports.dereferencedIdentifierType = dereferencedIdentifierType;
|
|
362
361
|
function createParameterType(parameter) {
|
|
363
362
|
return {
|
|
364
|
-
kind: parameter.
|
|
365
|
-
|
|
366
|
-
: "Any" /* Any */,
|
|
367
|
-
maybeExtendedKind: undefined,
|
|
363
|
+
kind: parameter.type ? language_1.TypeUtils.typeKindFromPrimitiveTypeConstantKind(parameter.type) : "Any" /* Any */,
|
|
364
|
+
extendedKind: undefined,
|
|
368
365
|
isNullable: parameter.isNullable || parameter.isOptional,
|
|
369
366
|
};
|
|
370
367
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/common.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,4 +5,4 @@ export interface ExaminedFieldSpecificationList {
|
|
|
5
5
|
readonly fields: Map<string, Type.TPowerQueryType>;
|
|
6
6
|
readonly isOpen: boolean;
|
|
7
7
|
}
|
|
8
|
-
export declare function examineFieldSpecificationList(state: InspectTypeState, xorNode: TXorNode,
|
|
8
|
+
export declare function examineFieldSpecificationList(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<ExaminedFieldSpecificationList>;
|
|
@@ -17,11 +17,11 @@ const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
|
17
17
|
const __1 = require("../../..");
|
|
18
18
|
const inspectTypeFieldSpecification_1 = require("./inspectTypeFieldSpecification");
|
|
19
19
|
// It's called an examination instead of inspection because it doesn't return TType.
|
|
20
|
-
function examineFieldSpecificationList(state, xorNode,
|
|
20
|
+
function examineFieldSpecificationList(state, xorNode, correlationId) {
|
|
21
21
|
var _a;
|
|
22
22
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, examineFieldSpecificationList.name,
|
|
24
|
-
(_a = state.
|
|
23
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, examineFieldSpecificationList.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
24
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
25
25
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FieldSpecificationList" /* FieldSpecificationList */);
|
|
26
26
|
const nodeIdMapCollection = state.nodeIdMapCollection;
|
|
27
27
|
const fields = yield powerquery_parser_1.ArrayUtils.mapAsync(parser_1.NodeIdMapIterator.iterFieldSpecificationList(nodeIdMapCollection, xorNode), (fieldSpecification) => __awaiter(this, void 0, void 0, function* () {
|
|
@@ -30,8 +30,7 @@ function examineFieldSpecificationList(state, xorNode, maybeCorrelationId) {
|
|
|
30
30
|
yield (0, inspectTypeFieldSpecification_1.inspectTypeFieldSpecification)(state, fieldSpecification.source, trace.id),
|
|
31
31
|
];
|
|
32
32
|
}));
|
|
33
|
-
const isOpen = parser_1.NodeIdMapUtils.
|
|
34
|
-
undefined;
|
|
33
|
+
const isOpen = parser_1.NodeIdMapUtils.nthChildChecked(nodeIdMapCollection, xorNode.node.id, 3, "Constant" /* Constant */) !== undefined;
|
|
35
34
|
const result = {
|
|
36
35
|
fields: new Map(fields),
|
|
37
36
|
isOpen,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"examineFieldSpecificationList.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,sFAMmE;AACnE,oEAA0D;AAI1D,gCAA+D;AAC/D,mFAAgF;AAQhF,oFAAoF;AACpF,SAAsB,6BAA6B,CAC/C,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"examineFieldSpecificationList.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,sFAMmE;AACnE,oEAA0D;AAI1D,gCAA+D;AAC/D,mFAAgF;AAQhF,oFAAoF;AACpF,SAAsB,6BAA6B,CAC/C,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,6BAA6B,CAAC,IAAI,EAClC,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAA6B,OAAO,wDAAsC,CAAC;QAExG,MAAM,mBAAmB,GAAyB,KAAK,CAAC,mBAAmB,CAAC;QAE5E,MAAM,MAAM,GAAkD,MAAM,8BAAU,CAAC,QAAQ,CACnF,0BAAiB,CAAC,0BAA0B,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAC1E,CAAO,kBAAkD,EAAE,EAAE;YAAC,OAAA;gBAC1D,kBAAkB,CAAC,oBAAoB;gBACvC,MAAM,IAAA,6DAA6B,EAAC,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;aAClF,CAAA;UAAA,CACJ,CAAC;QAEF,MAAM,MAAM,GACR,uBAAc,CAAC,eAAe,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,4BAAwB,KAAK,SAAS,CAAC;QAEjH,MAAM,MAAM,GAAmC;YAC3C,MAAM,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC;YACvB,MAAM;SACT,CAAC;QAEF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC;;CACjB;AApCD,sEAoCC"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
2
|
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
3
3
|
import { InspectTypeState } from "./common";
|
|
4
|
-
export declare function inspectTypeEachExpression(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeEachExpression(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js
CHANGED
|
@@ -16,18 +16,18 @@ const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/l
|
|
|
16
16
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
17
|
const __1 = require("../../..");
|
|
18
18
|
const common_1 = require("./common");
|
|
19
|
-
function inspectTypeEachExpression(state, xorNode,
|
|
19
|
+
function inspectTypeEachExpression(state, xorNode, correlationId) {
|
|
20
20
|
var _a;
|
|
21
21
|
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeEachExpression.name,
|
|
23
|
-
(_a = state.
|
|
22
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeEachExpression.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
23
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
24
24
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "EachExpression" /* EachExpression */);
|
|
25
25
|
const expressionType = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state, xorNode, 1, trace.id);
|
|
26
26
|
const result = language_1.TypeUtils.createDefinedFunction(false, [
|
|
27
27
|
{
|
|
28
28
|
isNullable: false,
|
|
29
29
|
isOptional: false,
|
|
30
|
-
|
|
30
|
+
type: "Any" /* Any */,
|
|
31
31
|
nameLiteral: "_",
|
|
32
32
|
},
|
|
33
33
|
], expressionType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeEachExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAmG;AAEnG,sFAAmG;AAEnG,gCAA+D;AAC/D,qCAAgF;AAEhF,SAAsB,yBAAyB,CAC3C,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeEachExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAmG;AAEnG,sFAAmG;AAEnG,gCAA+D;AAC/D,qCAAgF;AAEhF,SAAsB,yBAAyB,CAC3C,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,yBAAyB,CAAC,IAAI,EAC9B,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAAqB,OAAO,wCAA8B,CAAC;QAExF,MAAM,cAAc,GAAyB,MAAM,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAEnH,MAAM,MAAM,GAAyB,oBAAS,CAAC,qBAAqB,CAChE,KAAK,EACL;YACI;gBACI,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,KAAK;gBACjB,IAAI,iBAAmB;gBACvB,WAAW,EAAE,GAAG;aACnB;SACJ,EACD,cAAc,CACjB,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AAjCD,8DAiCC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
2
|
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
3
3
|
import { InspectTypeState } from "./common";
|
|
4
|
-
export declare function inspectTypeErrorHandlingExpression(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeErrorHandlingExpression(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
@@ -17,36 +17,38 @@ const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/l
|
|
|
17
17
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
18
18
|
const __1 = require("../../..");
|
|
19
19
|
const common_1 = require("./common");
|
|
20
|
-
function inspectTypeErrorHandlingExpression(state, xorNode,
|
|
20
|
+
function inspectTypeErrorHandlingExpression(state, xorNode, correlationId) {
|
|
21
21
|
var _a;
|
|
22
22
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeErrorHandlingExpression.name,
|
|
24
|
-
(_a = state.
|
|
23
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeErrorHandlingExpression.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
24
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
25
25
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "ErrorHandlingExpression" /* ErrorHandlingExpression */);
|
|
26
|
-
// Grabs Ast.ErrorHandlingExpression.
|
|
27
|
-
const
|
|
26
|
+
// Grabs Ast.ErrorHandlingExpression.handler
|
|
27
|
+
const handler = parser_1.NodeIdMapUtils.nthChildChecked(state.nodeIdMapCollection, xorNode.node.id, 2, ["CatchExpression" /* CatchExpression */, "OtherwiseExpression" /* OtherwiseExpression */]);
|
|
28
28
|
let errorHandlerResult;
|
|
29
29
|
// No handler exists, i.e. `try 0`
|
|
30
|
-
if (
|
|
30
|
+
if (handler === undefined) {
|
|
31
31
|
errorHandlerResult = language_1.Type.RecordInstance;
|
|
32
32
|
}
|
|
33
33
|
// If it's a catch handler, i.e. `try 1/0 catch () => "div by 0"`
|
|
34
|
-
else if (
|
|
34
|
+
else if (handler.node.kind === "CatchExpression" /* CatchExpression */) {
|
|
35
35
|
// We care about the evaluation of the function,
|
|
36
36
|
// and as typing isn't allowed on a catch expression it requires an inspection on the function's body
|
|
37
|
-
const
|
|
37
|
+
const fnExpression = parser_1.NodeIdMapUtils.nthChildChecked(state.nodeIdMapCollection, handler.node.id, 1, [
|
|
38
|
+
"FunctionExpression" /* FunctionExpression */,
|
|
39
|
+
]);
|
|
38
40
|
// If there's no function expression, i.e. `try 1/0 catch`
|
|
39
|
-
if (
|
|
41
|
+
if (fnExpression === undefined) {
|
|
40
42
|
errorHandlerResult = language_1.Type.UnknownInstance;
|
|
41
43
|
}
|
|
42
44
|
// Else examine Ast.FunctionExpression.expression
|
|
43
45
|
else {
|
|
44
|
-
errorHandlerResult = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state,
|
|
46
|
+
errorHandlerResult = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state, fnExpression, 3, trace.id);
|
|
45
47
|
}
|
|
46
48
|
}
|
|
47
49
|
// Much easier here, simply return the paired expression.
|
|
48
|
-
else if (
|
|
49
|
-
errorHandlerResult = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state,
|
|
50
|
+
else if (handler.node.kind === "OtherwiseExpression" /* OtherwiseExpression */) {
|
|
51
|
+
errorHandlerResult = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state, handler, 1, trace.id);
|
|
50
52
|
}
|
|
51
53
|
else {
|
|
52
54
|
throw new PQP.CommonError.InvariantError(`should never be reached`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeErrorHandlingExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,0FAAmG;AACnG,sFAKmE;AAGnE,gCAA+D;AAC/D,qCAAgF;AAEhF,SAAsB,kCAAkC,CACpD,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeErrorHandlingExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,0FAAmG;AACnG,sFAKmE;AAGnE,gCAA+D;AAC/D,qCAAgF;AAEhF,SAAsB,kCAAkC,CACpD,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,kCAAkC,CAAC,IAAI,EACvC,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAA+B,OAAO,0DAAuC,CAAC;QAE3G,4CAA4C;QAC5C,MAAM,OAAO,GAAuE,uBAAc,CAAC,eAAe,CAEhH,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,0FAAgE,CAAC,CAAC;QAEnH,IAAI,kBAAwC,CAAC;QAE7C,kCAAkC;QAClC,IAAI,OAAO,KAAK,SAAS,EAAE;YACvB,kBAAkB,GAAG,eAAI,CAAC,cAAc,CAAC;SAC5C;QACD,iEAAiE;aAC5D,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,4CAAiC,EAAE;YACzD,gDAAgD;YAChD,qGAAqG;YACrG,MAAM,YAAY,GACd,uBAAc,CAAC,eAAe,CAAyB,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;;aAErG,CAAC,CAAC;YAEP,0DAA0D;YAC1D,IAAI,YAAY,KAAK,SAAS,EAAE;gBAC5B,kBAAkB,GAAG,eAAI,CAAC,eAAe,CAAC;aAC7C;YACD,iDAAiD;iBAC5C;gBACD,kBAAkB,GAAG,MAAM,IAAA,2CAAkC,EAAC,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;aACnG;SACJ;QACD,yDAAyD;aACpD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,oDAAqC,EAAE;YAC7D,kBAAkB,GAAG,MAAM,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;SAC9F;aAAM;YACH,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAC;SACvE;QAED,MAAM,MAAM,GAAyB,oBAAS,CAAC,cAAc,CACzD,CAAC,MAAM,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,kBAAkB,CAAC,EAC3F,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,EAAE,CACX,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AA5DD,gFA4DC"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
2
|
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
3
3
|
import { InspectTypeState } from "../common";
|
|
4
|
-
export declare function inspectFieldType(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectFieldType(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js
CHANGED
|
@@ -21,29 +21,29 @@ const common_1 = require("../common");
|
|
|
21
21
|
// In the code below that target for the FieldSelector/FieldProjection is called the scope.
|
|
22
22
|
//
|
|
23
23
|
// In the case of EachExpression:
|
|
24
|
-
// use whatever scope was provided in InspectionTypeState.
|
|
24
|
+
// use whatever scope was provided in InspectionTypeState.eEachScopeById, else Unknown
|
|
25
25
|
//
|
|
26
26
|
// In the case of RecursivePrimaryExpression:
|
|
27
|
-
// the scope is the previous sibling's type, so use NodeUtils.
|
|
28
|
-
function inspectFieldType(state, xorNode,
|
|
27
|
+
// the scope is the previous sibling's type, so use NodeUtils.assertRecursiveExpressionPreviousSibling
|
|
28
|
+
function inspectFieldType(state, xorNode, correlationId) {
|
|
29
29
|
var _a, _b;
|
|
30
30
|
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectFieldType.name,
|
|
31
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectFieldType.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
32
32
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, [
|
|
33
33
|
"FieldProjection" /* FieldProjection */,
|
|
34
34
|
"FieldSelector" /* FieldSelector */,
|
|
35
35
|
]);
|
|
36
36
|
// travels up the AST to see if we're in an EachExpression or RecursivePrimaryExpression.
|
|
37
|
-
const
|
|
37
|
+
const eachExpression = findEachExpression(state, xorNode);
|
|
38
38
|
let fieldType;
|
|
39
39
|
// if the scope is an EachExpression
|
|
40
|
-
if (
|
|
41
|
-
fieldType = (_b = (_a = state.
|
|
40
|
+
if (eachExpression) {
|
|
41
|
+
fieldType = (_b = (_a = state.eachScopeById) === null || _a === void 0 ? void 0 : _a.get(eachExpression.node.id)) !== null && _b !== void 0 ? _b : language_1.Type.UnknownInstance;
|
|
42
42
|
}
|
|
43
43
|
// else it must be a RecursivePrimaryExpression,
|
|
44
44
|
// so grab the previous sibling of the FieldProjection/FieldSelector
|
|
45
45
|
else {
|
|
46
|
-
const previousSibling = parser_1.NodeIdMapUtils.
|
|
46
|
+
const previousSibling = parser_1.NodeIdMapUtils.assertRecursiveExpressionPreviousSibling(state.nodeIdMapCollection, xorNode.node.id);
|
|
47
47
|
fieldType = yield (0, common_1.inspectXor)(state, previousSibling, trace.id);
|
|
48
48
|
}
|
|
49
49
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(fieldType) });
|
|
@@ -53,13 +53,13 @@ function inspectFieldType(state, xorNode, maybeCorrelationId) {
|
|
|
53
53
|
exports.inspectFieldType = inspectFieldType;
|
|
54
54
|
function findEachExpression(state, xorNode) {
|
|
55
55
|
const nodeIdMapCollection = state.nodeIdMapCollection;
|
|
56
|
-
let
|
|
57
|
-
while (
|
|
58
|
-
switch (
|
|
56
|
+
let parent = parser_1.NodeIdMapUtils.parentXor(nodeIdMapCollection, xorNode.node.id);
|
|
57
|
+
while (parent) {
|
|
58
|
+
switch (parent.node.kind) {
|
|
59
59
|
case "EachExpression" /* EachExpression */:
|
|
60
|
-
return
|
|
60
|
+
return parent;
|
|
61
61
|
default:
|
|
62
|
-
|
|
62
|
+
parent = parser_1.NodeIdMapUtils.parentXor(nodeIdMapCollection, parent.node.id);
|
|
63
63
|
break;
|
|
64
64
|
}
|
|
65
65
|
}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AACxF,sFAMmE;AAGnE,mCAAkE;AAClE,sCAAyD;AAEzD,+DAA+D;AAC/D,gFAAgF;AAChF,2FAA2F;AAC3F,EAAE;AACF,iCAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AACxF,sFAMmE;AAGnE,mCAAkE;AAClE,sCAAyD;AAEzD,+DAA+D;AAC/D,gFAAgF;AAChF,2FAA2F;AAC3F,EAAE;AACF,iCAAiC;AACjC,uFAAuF;AACvF,EAAE;AACF,6CAA6C;AAC7C,uGAAuG;AAEvG,SAAsB,gBAAgB,CAClC,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,gBAAgB,CAAC,IAAI,EACrB,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,qBAAY,CAAC,gBAAgB,CAA0C,OAAO,EAAE;;;SAG/E,CAAC,CAAC;QAEH,yFAAyF;QACzF,MAAM,cAAc,GAA4C,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAEnG,IAAI,SAA+B,CAAC;QAEpC,oCAAoC;QACpC,IAAI,cAAc,EAAE;YAChB,SAAS,GAAG,MAAA,MAAA,KAAK,CAAC,aAAa,0CAAE,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,mCAAI,eAAI,CAAC,eAAe,CAAC;SACxF;QACD,gDAAgD;QAChD,oEAAoE;aAC/D;YACD,MAAM,eAAe,GAAa,uBAAc,CAAC,wCAAwC,CACrF,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,CAClB,CAAC;YAEF,SAAS,GAAG,MAAM,IAAA,mBAAU,EAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;SAClE;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAEhF,OAAO,SAAS,CAAC;;CACpB;AAxCD,4CAwCC;AAED,SAAS,kBAAkB,CAAC,KAAuB,EAAE,OAAiB;IAClE,MAAM,mBAAmB,GAAyB,KAAK,CAAC,mBAAmB,CAAC;IAC5E,IAAI,MAAM,GAAyB,uBAAc,CAAC,SAAS,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAElG,OAAO,MAAM,EAAE;QACX,QAAQ,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB;gBACI,OAAO,MAAqC,CAAC;YAEjD;gBACI,MAAM,GAAG,uBAAc,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvE,MAAM;SACb;KACJ;IAED,OAAO,SAAS,CAAC;AACrB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
2
|
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
3
3
|
import { InspectTypeState } from "../common";
|
|
4
|
-
export declare function inspectTypeFieldProjection(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeFieldProjection(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
@@ -17,34 +17,34 @@ const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/l
|
|
|
17
17
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
18
18
|
const __1 = require("../../../..");
|
|
19
19
|
const common_1 = require("./common");
|
|
20
|
-
function inspectTypeFieldProjection(state, xorNode,
|
|
20
|
+
function inspectTypeFieldProjection(state, xorNode, correlationId) {
|
|
21
21
|
var _a;
|
|
22
22
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFieldProjection.name,
|
|
24
|
-
(_a = state.
|
|
23
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFieldProjection.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
24
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
25
25
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FieldProjection" /* FieldProjection */);
|
|
26
26
|
const projectedFieldNames = parser_1.NodeIdMapIterator.iterFieldProjectionNames(state.nodeIdMapCollection, xorNode);
|
|
27
27
|
const fieldType = yield (0, common_1.inspectFieldType)(state, xorNode, trace.id);
|
|
28
|
-
const isOptional = parser_1.NodeIdMapUtils.
|
|
28
|
+
const isOptional = parser_1.NodeIdMapUtils.unboxNthChildIfAstChecked(state.nodeIdMapCollection, xorNode.node.id, 3, "Constant" /* Constant */) !== undefined;
|
|
29
29
|
let result;
|
|
30
30
|
switch (fieldType.kind) {
|
|
31
31
|
case "Any" /* Any */: {
|
|
32
32
|
const projectedFields = new Map(projectedFieldNames.map((fieldName) => [fieldName, language_1.Type.AnyInstance]));
|
|
33
33
|
result = {
|
|
34
34
|
kind: "Any" /* Any */,
|
|
35
|
-
|
|
35
|
+
extendedKind: "AnyUnion" /* AnyUnion */,
|
|
36
36
|
isNullable: fieldType.isNullable,
|
|
37
37
|
unionedTypePairs: [
|
|
38
38
|
{
|
|
39
39
|
kind: "Record" /* Record */,
|
|
40
|
-
|
|
40
|
+
extendedKind: "DefinedRecord" /* DefinedRecord */,
|
|
41
41
|
isNullable: fieldType.isNullable,
|
|
42
42
|
fields: projectedFields,
|
|
43
43
|
isOpen: false,
|
|
44
44
|
},
|
|
45
45
|
{
|
|
46
46
|
kind: "Table" /* Table */,
|
|
47
|
-
|
|
47
|
+
extendedKind: "DefinedTable" /* DefinedTable */,
|
|
48
48
|
isNullable: fieldType.isNullable,
|
|
49
49
|
fields: new PQP.OrderedMap([...projectedFields]),
|
|
50
50
|
isOpen: false,
|
|
@@ -87,12 +87,12 @@ function inspectRecordOrTableProjection(fieldType, projectedFieldNames, isOption
|
|
|
87
87
|
}
|
|
88
88
|
// Returns a subset of `current` using `keys`.
|
|
89
89
|
// If a mismatch is found it either returns Null if isOptional, else None.
|
|
90
|
-
function reducedFieldsToKeys(current, keys, isOptional,
|
|
90
|
+
function reducedFieldsToKeys(current, keys, isOptional, fieldsFactory) {
|
|
91
91
|
const currentFieldNames = [...current.fields.keys()];
|
|
92
92
|
if (!current.isOpen && !PQP.ArrayUtils.isSubset(currentFieldNames, keys)) {
|
|
93
93
|
return isOptional ? language_1.Type.NullInstance : language_1.Type.NoneInstance;
|
|
94
94
|
}
|
|
95
|
-
return Object.assign(Object.assign({}, current), { fields:
|
|
95
|
+
return Object.assign(Object.assign({}, current), { fields: fieldsFactory(current, keys), isOpen: false });
|
|
96
96
|
}
|
|
97
97
|
function reducedRecordFields(current, keys) {
|
|
98
98
|
return PQP.MapUtils.pick(current.fields, keys);
|