@microsoft/powerquery-language-services 0.3.40 → 0.5.1
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 -8
- package/lib/powerquery-language-services/analysis/analysisBase.d.ts +41 -26
- package/lib/powerquery-language-services/analysis/analysisBase.js +524 -173
- 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/documentSymbols.d.ts +2 -2
- package/lib/powerquery-language-services/documentSymbols.js +10 -27
- package/lib/powerquery-language-services/documentSymbols.js.map +1 -1
- 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 +1 -4
- package/lib/powerquery-language-services/index.js +1 -11
- 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 +41 -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.d.ts +4 -0
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js +51 -0
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js.map +1 -0
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.d.ts +18 -19
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js +131 -116
- 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 +11 -8
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js +12 -5
- 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/package.json +3 -3
- 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
- package/lib/powerquery-language-services/workspaceCache/index.d.ts +0 -2
- package/lib/powerquery-language-services/workspaceCache/index.js +0 -6
- package/lib/powerquery-language-services/workspaceCache/index.js.map +0 -1
- package/lib/powerquery-language-services/workspaceCache/workspaceCache.d.ts +0 -9
- package/lib/powerquery-language-services/workspaceCache/workspaceCache.js +0 -5
- package/lib/powerquery-language-services/workspaceCache/workspaceCache.js.map +0 -1
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.d.ts +0 -13
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js +0 -130
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeFieldProjection.js","sourceRoot":"","sources":["../../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,0FAAmG;AACnG,sFAKmE;AAGnE,mCAAkE;AAClE,qCAA4C;AAG5C,SAAsB,0BAA0B,CAC5C,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeFieldProjection.js","sourceRoot":"","sources":["../../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.ts"],"names":[],"mappings":"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"}
|
|
@@ -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 inspectTypeFieldSelector(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeFieldSelector(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
@@ -21,25 +21,24 @@ 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.eachScopeById, 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 inspectTypeFieldSelector(state, xorNode,
|
|
27
|
+
// the scope is the previous sibling's type, so use NodeUtils.assertRecursiveExpressionPreviousSibling
|
|
28
|
+
function inspectTypeFieldSelector(state, xorNode, correlationId) {
|
|
29
29
|
var _a;
|
|
30
30
|
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFieldSelector.name,
|
|
32
|
-
(_a = state.
|
|
31
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFieldSelector.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
32
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
33
33
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FieldSelector" /* FieldSelector */);
|
|
34
|
-
const
|
|
35
|
-
if (
|
|
34
|
+
const fieldName = parser_1.NodeIdMapUtils.unboxWrappedContentIfAstChecked(state.nodeIdMapCollection, xorNode.node.id, "GeneralizedIdentifier" /* GeneralizedIdentifier */);
|
|
35
|
+
if (fieldName === undefined) {
|
|
36
36
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(language_1.Type.UnknownInstance) });
|
|
37
37
|
return language_1.Type.UnknownInstance;
|
|
38
38
|
}
|
|
39
|
-
const fieldName = maybeFieldName.literal;
|
|
40
39
|
const fieldType = yield (0, common_1.inspectFieldType)(state, xorNode, trace.id);
|
|
41
|
-
const isOptional = parser_1.NodeIdMapUtils.
|
|
42
|
-
const result = getFieldSelectorType(fieldType, fieldName, isOptional);
|
|
40
|
+
const isOptional = parser_1.NodeIdMapUtils.unboxNthChildIfAstChecked(state.nodeIdMapCollection, xorNode.node.id, 3, "Constant" /* Constant */) !== undefined;
|
|
41
|
+
const result = getFieldSelectorType(fieldType, fieldName.literal, isOptional);
|
|
43
42
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(result) });
|
|
44
43
|
return result;
|
|
45
44
|
});
|
|
@@ -59,12 +58,12 @@ function getFieldSelectorType(fieldType, fieldName, isOptional) {
|
|
|
59
58
|
}
|
|
60
59
|
}
|
|
61
60
|
function inspectRecordOrTable(fieldType, fieldName, isOptional) {
|
|
62
|
-
if (fieldType.
|
|
61
|
+
if (fieldType.extendedKind === undefined) {
|
|
63
62
|
return language_1.Type.AnyInstance;
|
|
64
63
|
}
|
|
65
|
-
const
|
|
66
|
-
if (
|
|
67
|
-
return
|
|
64
|
+
const namedField = fieldType.fields.get(fieldName);
|
|
65
|
+
if (namedField !== undefined) {
|
|
66
|
+
return namedField;
|
|
68
67
|
}
|
|
69
68
|
else if (fieldType.isOpen) {
|
|
70
69
|
return language_1.Type.AnyInstance;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeFieldSelector.js","sourceRoot":"","sources":["../../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AACxF,sFAAmH;AAGnH,mCAAkE;AAClE,qCAA4C;AAG5C,mEAAmE;AACnE,8EAA8E;AAC9E,2FAA2F;AAC3F,EAAE;AACF,iCAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"inspectTypeFieldSelector.js","sourceRoot":"","sources":["../../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AACxF,sFAAmH;AAGnH,mCAAkE;AAClE,qCAA4C;AAG5C,mEAAmE;AACnE,8EAA8E;AAC9E,2FAA2F;AAC3F,EAAE;AACF,iCAAiC;AACjC,sFAAsF;AACtF,EAAE;AACF,6CAA6C;AAC7C,uGAAuG;AAEvG,SAAsB,wBAAwB,CAC1C,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,wBAAwB,CAAC,IAAI,EAC7B,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAAoB,OAAO,sCAA6B,CAAC;QAEtF,MAAM,SAAS,GACX,uBAAc,CAAC,+BAA+B,CAC1C,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,sDAElB,CAAC;QAEN,IAAI,SAAS,KAAK,SAAS,EAAE;YACzB,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,eAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAE3F,OAAO,eAAI,CAAC,eAAe,CAAC;SAC/B;QAED,MAAM,SAAS,GAAyB,MAAM,IAAA,yBAAgB,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAEzF,MAAM,UAAU,GACZ,uBAAc,CAAC,yBAAyB,CACpC,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,EACf,CAAC,4BAEJ,KAAK,SAAS,CAAC;QAEpB,MAAM,MAAM,GAAyB,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpG,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AA1CD,4DA0CC;AAED,SAAS,oBAAoB,CACzB,SAA+B,EAC/B,SAAiB,EACjB,UAAmB;IAEnB,QAAQ,SAAS,CAAC,IAAI,EAAE;QACpB;YACI,OAAO,eAAI,CAAC,WAAW,CAAC;QAE5B;YACI,OAAO,eAAI,CAAC,eAAe,CAAC;QAEhC,2BAA0B;QAC1B;YACI,OAAO,oBAAoB,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAElE;YACI,OAAO,eAAI,CAAC,YAAY,CAAC;KAChC;AACL,CAAC;AAED,SAAS,oBAAoB,CACzB,SAAqC,EACrC,SAAiB,EACjB,UAAmB;IAEnB,IAAI,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE;QACtC,OAAO,eAAI,CAAC,WAAW,CAAC;KAC3B;IAED,MAAM,UAAU,GAAqC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAErF,IAAI,UAAU,KAAK,SAAS,EAAE;QAC1B,OAAO,UAAU,CAAC;KACrB;SAAM,IAAI,SAAS,CAAC,MAAM,EAAE;QACzB,OAAO,eAAI,CAAC,WAAW,CAAC;KAC3B;SAAM;QACH,OAAO,UAAU,CAAC,CAAC,CAAC,eAAI,CAAC,YAAY,CAAC,CAAC,CAAC,eAAI,CAAC,YAAY,CAAC;KAC7D;AACL,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 inspectTypeFieldSpecification(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeFieldSpecification(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
@@ -16,15 +16,15 @@ 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 inspectTypeFieldSpecification(state, xorNode,
|
|
19
|
+
function inspectTypeFieldSpecification(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 */, inspectTypeFieldSpecification.name,
|
|
23
|
-
(_a = state.
|
|
22
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFieldSpecification.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, "FieldSpecification" /* FieldSpecification */);
|
|
25
|
-
const
|
|
26
|
-
const result =
|
|
27
|
-
? yield (0, common_1.inspectXor)(state,
|
|
25
|
+
const fieldTypeSpecification = parser_1.NodeIdMapUtils.nthChild(state.nodeIdMapCollection, xorNode.node.id, 2);
|
|
26
|
+
const result = fieldTypeSpecification !== undefined
|
|
27
|
+
? yield (0, common_1.inspectXor)(state, fieldTypeSpecification, trace.id)
|
|
28
28
|
: language_1.Type.AnyInstance;
|
|
29
29
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(result) });
|
|
30
30
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeFieldSpecification.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AACxF,sFAAmH;AAGnH,gCAA+D;AAC/D,qCAAwD;AAExD,SAAsB,6BAA6B,CAC/C,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeFieldSpecification.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AACxF,sFAAmH;AAGnH,gCAA+D;AAC/D,qCAAwD;AAExD,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,CAAyB,OAAO,gDAAkC,CAAC;QAEhG,MAAM,sBAAsB,GAAyB,uBAAc,CAAC,QAAQ,CACxE,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,EACf,CAAC,CACJ,CAAC;QAEF,MAAM,MAAM,GACR,sBAAsB,KAAK,SAAS;YAChC,CAAC,CAAC,MAAM,IAAA,mBAAU,EAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC;YAC3D,CAAC,CAAC,eAAI,CAAC,WAAW,CAAC;QAE3B,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AA7BD,sEA6BC"}
|
|
@@ -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 inspectTypeFunctionExpression(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeFunctionExpression(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
@@ -18,11 +18,11 @@ const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
|
18
18
|
const common_1 = require("./common");
|
|
19
19
|
const __1 = require("../../..");
|
|
20
20
|
const pseudoFunctionExpressionType_1 = require("../../pseudoFunctionExpressionType");
|
|
21
|
-
function inspectTypeFunctionExpression(state, xorNode,
|
|
21
|
+
function inspectTypeFunctionExpression(state, xorNode, correlationId) {
|
|
22
22
|
var _a;
|
|
23
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFunctionExpression.name,
|
|
25
|
-
(_a = state.
|
|
24
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFunctionExpression.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
25
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
26
26
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FunctionExpression" /* FunctionExpression */);
|
|
27
27
|
const pseudoType = (0, pseudoFunctionExpressionType_1.pseudoFunctionExpressionType)(state.nodeIdMapCollection, xorNode);
|
|
28
28
|
const pseudoReturnType = pseudoType.returnType;
|
|
@@ -30,9 +30,9 @@ function inspectTypeFunctionExpression(state, xorNode, maybeCorrelationId) {
|
|
|
30
30
|
switch (state.typeStrategy) {
|
|
31
31
|
case "Extended" /* Extended */: {
|
|
32
32
|
const expressionType = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state, xorNode, 3, trace.id);
|
|
33
|
-
// FunctionExpression.
|
|
33
|
+
// FunctionExpression.functionReturnType doesn't always match FunctionExpression.expression.
|
|
34
34
|
// By examining the expression we might get a more accurate return type (eg. Function vs DefinedFunction),
|
|
35
|
-
// or discover an error (eg.
|
|
35
|
+
// or discover an error (eg. functionReturnType is Number but expression is Text).
|
|
36
36
|
let returnType;
|
|
37
37
|
// If the stated return type is Any,
|
|
38
38
|
// then it might as well be the expression's type as it can't be any wider than Any.
|
|
@@ -41,7 +41,7 @@ function inspectTypeFunctionExpression(state, xorNode, maybeCorrelationId) {
|
|
|
41
41
|
}
|
|
42
42
|
// If the return type is Any then see if we can narrow it to the stated return Type.
|
|
43
43
|
else if (expressionType.kind === "Any" /* Any */ &&
|
|
44
|
-
expressionType.
|
|
44
|
+
expressionType.extendedKind === "AnyUnion" /* AnyUnion */ &&
|
|
45
45
|
(0, common_1.allForAnyUnion)(expressionType, (type) => type.kind === pseudoReturnType.kind || type.kind === "Any" /* Any */)) {
|
|
46
46
|
returnType = expressionType;
|
|
47
47
|
}
|
|
@@ -60,13 +60,13 @@ function inspectTypeFunctionExpression(state, xorNode, maybeCorrelationId) {
|
|
|
60
60
|
}
|
|
61
61
|
result = {
|
|
62
62
|
kind: "Function" /* Function */,
|
|
63
|
-
|
|
63
|
+
extendedKind: "DefinedFunction" /* DefinedFunction */,
|
|
64
64
|
isNullable: false,
|
|
65
65
|
parameters: pseudoType.parameters.map((pseudoParameter) => ({
|
|
66
66
|
nameLiteral: pseudoParameter.name.literal,
|
|
67
67
|
isNullable: pseudoParameter.isNullable,
|
|
68
68
|
isOptional: pseudoParameter.isOptional,
|
|
69
|
-
|
|
69
|
+
type: pseudoParameter.type,
|
|
70
70
|
})),
|
|
71
71
|
returnType,
|
|
72
72
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeFunctionExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AAExF,sFAAmG;AACnG,oEAAsD;AAEtD,qCAAgG;AAChG,gCAA+D;AAC/D,qFAI4C;AAG5C,SAAsB,6BAA6B,CAC/C,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeFunctionExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.ts"],"names":[],"mappings":"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"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.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 inspectTypeFunctionType(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeFunctionType(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.FunctionType | Type.Type | Type.Unknown>;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js
CHANGED
|
@@ -18,32 +18,32 @@ const __1 = require("../../..");
|
|
|
18
18
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
19
19
|
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
20
20
|
const common_1 = require("./common");
|
|
21
|
-
function inspectTypeFunctionType(state, xorNode,
|
|
21
|
+
function inspectTypeFunctionType(state, xorNode, correlationId) {
|
|
22
22
|
var _a;
|
|
23
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFunctionType.name,
|
|
25
|
-
(_a = state.
|
|
24
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeFunctionType.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
25
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
26
26
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FunctionType" /* FunctionType */);
|
|
27
27
|
let result;
|
|
28
28
|
switch (state.typeStrategy) {
|
|
29
29
|
case "Extended" /* Extended */: {
|
|
30
|
-
const
|
|
31
|
-
if (
|
|
30
|
+
const parameters = parser_1.NodeIdMapUtils.nthChildChecked(state.nodeIdMapCollection, xorNode.node.id, 1, "ParameterList" /* ParameterList */);
|
|
31
|
+
if (parameters === undefined) {
|
|
32
32
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(language_1.Type.UnknownInstance) });
|
|
33
33
|
return language_1.Type.UnknownInstance;
|
|
34
34
|
}
|
|
35
|
-
const
|
|
36
|
-
if (
|
|
35
|
+
const arrayWrapper = parser_1.NodeIdMapUtils.unboxArrayWrapper(state.nodeIdMapCollection, parameters.node.id);
|
|
36
|
+
if (arrayWrapper === undefined) {
|
|
37
37
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(language_1.Type.UnknownInstance) });
|
|
38
38
|
return language_1.Type.UnknownInstance;
|
|
39
39
|
}
|
|
40
|
-
const parameterTypes = parser_1.NodeIdMapIterator.iterArrayWrapper(state.nodeIdMapCollection,
|
|
40
|
+
const parameterTypes = parser_1.NodeIdMapIterator.iterArrayWrapper(state.nodeIdMapCollection, arrayWrapper)
|
|
41
41
|
.map((parameter) => language_1.TypeUtils.inspectParameter(state.nodeIdMapCollection, parser_1.XorNodeUtils.assertAsParameter(parameter)))
|
|
42
42
|
.filter(PQP.TypeScriptUtils.isDefined);
|
|
43
43
|
const returnType = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state, xorNode, 2, trace.id);
|
|
44
44
|
result = {
|
|
45
45
|
kind: "Type" /* Type */,
|
|
46
|
-
|
|
46
|
+
extendedKind: "FunctionType" /* FunctionType */,
|
|
47
47
|
isNullable: false,
|
|
48
48
|
parameters: parameterTypes,
|
|
49
49
|
returnType,
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeFunctionType.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,0FAAmG;AACnG,gCAA+D;AAC/D,sFAMmE;AAEnE,oEAAsD;AAEtD,qCAAgF;AAGhF,SAAsB,uBAAuB,CACzC,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeFunctionType.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,0FAAmG;AACnG,gCAA+D;AAC/D,sFAMmE;AAEnE,oEAAsD;AAEtD,qCAAgF;AAGhF,SAAsB,uBAAuB,CACzC,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,uBAAuB,CAAC,IAAI,EAC5B,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAAmB,OAAO,oCAA4B,CAAC;QAEpF,IAAI,MAAoD,CAAC;QAEzD,QAAQ,KAAK,CAAC,YAAY,EAAE;YACxB,8BAA0B,CAAC,CAAC;gBACxB,MAAM,UAAU,GACZ,uBAAc,CAAC,eAAe,CAC1B,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,EACf,CAAC,sCAEJ,CAAC;gBAEN,IAAI,UAAU,KAAK,SAAS,EAAE;oBAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,eAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;oBAE3F,OAAO,eAAI,CAAC,eAAe,CAAC;iBAC/B;gBAED,MAAM,YAAY,GAA2C,uBAAc,CAAC,iBAAiB,CACzF,KAAK,CAAC,mBAAmB,EACzB,UAAU,CAAC,IAAI,CAAC,EAAE,CACrB,CAAC;gBAEF,IAAI,YAAY,KAAK,SAAS,EAAE;oBAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,eAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;oBAE3F,OAAO,eAAI,CAAC,eAAe,CAAC;iBAC/B;gBAED,MAAM,cAAc,GAA0C,0BAAiB,CAAC,gBAAgB,CAC5F,KAAK,CAAC,mBAAmB,EACzB,YAAY,CACf;qBACI,GAAG,CAAC,CAAC,SAAmB,EAAE,EAAE,CACzB,oBAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,EAAE,qBAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CACnG;qBACA,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;gBAE3C,MAAM,UAAU,GAAyB,MAAM,IAAA,2CAAkC,EAC7E,KAAK,EACL,OAAO,EACP,CAAC,EACD,KAAK,CAAC,EAAE,CACX,CAAC;gBAEF,MAAM,GAAG;oBACL,IAAI,mBAAoB;oBACxB,YAAY,mCAAoC;oBAChD,UAAU,EAAE,KAAK;oBACjB,UAAU,EAAE,cAAc;oBAC1B,UAAU;iBACb,CAAC;gBAEF,MAAM;aACT;YAED;gBACI,MAAM,GAAG,eAAI,CAAC,qBAAqB,CAAC;gBACpC,MAAM;YAEV;gBACI,0BAAM,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SAC1C;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AAlFD,0DAkFC"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.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 inspectTypeIdentifier(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeIdentifier(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js
CHANGED
|
@@ -14,20 +14,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
exports.inspectTypeIdentifier = void 0;
|
|
15
15
|
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
16
16
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
|
-
const __1 = require("../../..");
|
|
18
17
|
const common_1 = require("./common");
|
|
19
|
-
|
|
18
|
+
const __1 = require("../../..");
|
|
19
|
+
function inspectTypeIdentifier(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 */, inspectTypeIdentifier.name,
|
|
23
|
-
(_a = state.
|
|
22
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeIdentifier.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, "Identifier" /* Identifier */);
|
|
25
25
|
let result;
|
|
26
26
|
if (parser_1.XorNodeUtils.isContextXor(xorNode)) {
|
|
27
27
|
result = language_1.Type.UnknownInstance;
|
|
28
28
|
}
|
|
29
29
|
else {
|
|
30
|
-
const dereferencedType = yield (0, common_1.
|
|
30
|
+
const dereferencedType = yield (0, common_1.dereferencedIdentifierType)(state, xorNode, trace.id);
|
|
31
31
|
result = dereferencedType !== null && dereferencedType !== void 0 ? dereferencedType : language_1.Type.UnknownInstance;
|
|
32
32
|
}
|
|
33
33
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(result) });
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeIdentifier.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AAExF,sFAAmG;AAEnG,gCAA+D;
|
|
1
|
+
{"version":3,"file":"inspectTypeIdentifier.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AAExF,sFAAmG;AAEnG,qCAAwE;AACxE,gCAA+D;AAE/D,SAAsB,qBAAqB,CACvC,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,qBAAqB,CAAC,IAAI,EAC1B,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAAiB,OAAO,gCAA0B,CAAC;QAEhF,IAAI,MAA4B,CAAC;QAEjC,IAAI,qBAAY,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;YACpC,MAAM,GAAG,eAAI,CAAC,eAAe,CAAC;SACjC;aAAM;YACH,MAAM,gBAAgB,GAAqC,MAAM,IAAA,mCAA0B,EACvF,KAAK,EACL,OAAO,EACP,KAAK,CAAC,EAAE,CACX,CAAC;YAEF,MAAM,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,eAAI,CAAC,eAAe,CAAC;SACrD;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AAhCD,sDAgCC"}
|
|
@@ -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 inspectTypeIdentifierExpression(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeIdentifierExpression(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
@@ -14,20 +14,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
exports.inspectTypeIdentifierExpression = void 0;
|
|
15
15
|
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
16
16
|
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
|
-
const __1 = require("../../..");
|
|
18
17
|
const common_1 = require("./common");
|
|
19
|
-
|
|
18
|
+
const __1 = require("../../..");
|
|
19
|
+
function inspectTypeIdentifierExpression(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 */, inspectTypeIdentifierExpression.name,
|
|
23
|
-
(_a = state.
|
|
22
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeIdentifierExpression.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, "IdentifierExpression" /* IdentifierExpression */);
|
|
25
25
|
let result;
|
|
26
26
|
if (parser_1.XorNodeUtils.isContextXor(xorNode)) {
|
|
27
27
|
result = language_1.Type.UnknownInstance;
|
|
28
28
|
}
|
|
29
29
|
else {
|
|
30
|
-
const dereferencedType = yield (0, common_1.
|
|
30
|
+
const dereferencedType = yield (0, common_1.dereferencedIdentifierType)(state, xorNode, trace.id);
|
|
31
31
|
result = dereferencedType !== null && dereferencedType !== void 0 ? dereferencedType : language_1.Type.UnknownInstance;
|
|
32
32
|
}
|
|
33
33
|
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(result) });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeIdentifierExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AAExF,sFAAmG;AAEnG,gCAA+D;
|
|
1
|
+
{"version":3,"file":"inspectTypeIdentifierExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAwF;AAExF,sFAAmG;AAEnG,qCAAwE;AACxE,gCAA+D;AAE/D,SAAsB,+BAA+B,CACjD,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,+BAA+B,CAAC,IAAI,EACpC,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAA2B,OAAO,oDAAoC,CAAC;QAEpG,IAAI,MAA4B,CAAC;QAEjC,IAAI,qBAAY,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;YACpC,MAAM,GAAG,eAAI,CAAC,eAAe,CAAC;SACjC;aAAM;YACH,MAAM,gBAAgB,GAAqC,MAAM,IAAA,mCAA0B,EACvF,KAAK,EACL,OAAO,EACP,KAAK,CAAC,EAAE,CACX,CAAC;YAEF,MAAM,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,eAAI,CAAC,eAAe,CAAC;SACrD;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AAhCD,0EAgCC"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.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 inspectTypeIfExpression(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeIfExpression(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js
CHANGED
|
@@ -16,11 +16,11 @@ 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 common_1 = require("./common");
|
|
18
18
|
const __1 = require("../../..");
|
|
19
|
-
function inspectTypeIfExpression(state, xorNode,
|
|
19
|
+
function inspectTypeIfExpression(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 */, inspectTypeIfExpression.name,
|
|
23
|
-
(_a = state.
|
|
22
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeIfExpression.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, "IfExpression" /* IfExpression */);
|
|
25
25
|
const conditionType = yield (0, common_1.inspectTypeFromChildAttributeIndex)(state, xorNode, 1, trace.id);
|
|
26
26
|
let result;
|
|
@@ -29,7 +29,7 @@ function inspectTypeIfExpression(state, xorNode, maybeCorrelationId) {
|
|
|
29
29
|
}
|
|
30
30
|
// Any is allowed so long as AnyUnion only contains Any or Logical.
|
|
31
31
|
else if (conditionType.kind === "Any" /* Any */) {
|
|
32
|
-
if (conditionType.
|
|
32
|
+
if (conditionType.extendedKind === "AnyUnion" /* AnyUnion */ &&
|
|
33
33
|
!(0, common_1.allForAnyUnion)(conditionType, (type) => type.kind === "Logical" /* Logical */ || type.kind === "Any" /* Any */)) {
|
|
34
34
|
result = language_1.Type.NoneInstance;
|
|
35
35
|
}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeIfExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAmG;AAEnG,sFAA4G;AAE5G,qCAAgG;AAChG,gCAA+D;AAE/D,SAAsB,uBAAuB,CACzC,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeIfExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,0FAAmG;AAEnG,sFAA4G;AAE5G,qCAAgG;AAChG,gCAA+D;AAE/D,SAAsB,uBAAuB,CACzC,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,uBAAuB,CAAC,IAAI,EAC5B,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;QAC5C,qBAAY,CAAC,gBAAgB,CAAmB,OAAO,oCAA4B,CAAC;QAEpF,MAAM,aAAa,GAAyB,MAAM,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAClH,IAAI,MAA4B,CAAC;QAEjC,IAAI,aAAa,CAAC,IAAI,4BAA0B,EAAE;YAC9C,MAAM,GAAG,eAAI,CAAC,eAAe,CAAC;SACjC;QACD,mEAAmE;aAC9D,IAAI,aAAa,CAAC,IAAI,oBAAsB,EAAE;YAC/C,IACI,aAAa,CAAC,YAAY,8BAAmC;gBAC7D,CAAC,IAAA,uBAAc,EACX,aAAa,EACb,CAAC,IAA0B,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,4BAA0B,IAAI,IAAI,CAAC,IAAI,oBAAsB,CACzG,EACH;gBACE,MAAM,GAAG,eAAI,CAAC,YAAY,CAAC;aAC9B;iBAAM;gBACH,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;aAC3D;SACJ;aAAM,IAAI,aAAa,CAAC,IAAI,4BAA0B,EAAE;YACrD,MAAM,GAAG,eAAI,CAAC,YAAY,CAAC;SAC9B;aAAM;YACH,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;SAC3D;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AA3CD,0DA2CC;AAED,SAAe,cAAc,CACzB,KAAuB,EACvB,OAAkC,EAClC,aAAqB;;QAErB,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,cAAc,CAAC,IAAI,EACnB,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAM,YAAY,GAAyB,MAAM,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACjH,MAAM,aAAa,GAAyB,MAAM,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAElH,MAAM,MAAM,GAAyB,oBAAS,CAAC,cAAc,CACzD,CAAC,YAAY,EAAE,aAAa,CAAC,EAC7B,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,EAAE,CACX,CAAC;QAEF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC;IAClB,CAAC;CAAA"}
|
|
@@ -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 inspectTypeInvokeExpression(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeInvokeExpression(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.TPowerQueryType>;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js
CHANGED
|
@@ -19,21 +19,21 @@ const externalType_1 = require("../../externalType");
|
|
|
19
19
|
const __1 = require("../../..");
|
|
20
20
|
const common_1 = require("./common");
|
|
21
21
|
const deferenceIdentifier_1 = require("../../deferenceIdentifier");
|
|
22
|
-
function inspectTypeInvokeExpression(state, xorNode,
|
|
22
|
+
function inspectTypeInvokeExpression(state, xorNode, correlationId) {
|
|
23
23
|
var _a;
|
|
24
24
|
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeInvokeExpression.name,
|
|
26
|
-
(_a = state.
|
|
25
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeInvokeExpression.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
26
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
27
27
|
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "InvokeExpression" /* InvokeExpression */);
|
|
28
|
-
const
|
|
29
|
-
if (
|
|
30
|
-
const
|
|
31
|
-
if (
|
|
32
|
-
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(
|
|
33
|
-
return
|
|
28
|
+
const request = yield externalInvokeRequest(state, xorNode, trace.id);
|
|
29
|
+
if (request !== undefined) {
|
|
30
|
+
const type = state.library.externalTypeResolver(request);
|
|
31
|
+
if (type !== undefined) {
|
|
32
|
+
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(type) });
|
|
33
|
+
return type;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
const previousSibling = parser_1.NodeIdMapUtils.
|
|
36
|
+
const previousSibling = parser_1.NodeIdMapUtils.assertRecursiveExpressionPreviousSibling(state.nodeIdMapCollection, xorNode.node.id);
|
|
37
37
|
const previousSiblingType = yield (0, common_1.inspectXor)(state, previousSibling, trace.id);
|
|
38
38
|
let result;
|
|
39
39
|
if (previousSiblingType.kind === "Any" /* Any */) {
|
|
@@ -42,7 +42,7 @@ function inspectTypeInvokeExpression(state, xorNode, maybeCorrelationId) {
|
|
|
42
42
|
else if (previousSiblingType.kind !== "Function" /* Function */) {
|
|
43
43
|
result = language_1.Type.NoneInstance;
|
|
44
44
|
}
|
|
45
|
-
else if (previousSiblingType.
|
|
45
|
+
else if (previousSiblingType.extendedKind === "DefinedFunction" /* DefinedFunction */) {
|
|
46
46
|
result = previousSiblingType.returnType;
|
|
47
47
|
}
|
|
48
48
|
else {
|
|
@@ -53,16 +53,16 @@ function inspectTypeInvokeExpression(state, xorNode, maybeCorrelationId) {
|
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
55
|
exports.inspectTypeInvokeExpression = inspectTypeInvokeExpression;
|
|
56
|
-
function
|
|
56
|
+
function externalInvokeRequest(state, xorNode, correlationId) {
|
|
57
57
|
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
-
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */,
|
|
59
|
-
const
|
|
60
|
-
if (
|
|
58
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, externalInvokeRequest.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
59
|
+
const identifier = parser_1.NodeIdMapUtils.invokeExpressionIdentifier(state.nodeIdMapCollection, xorNode.node.id);
|
|
60
|
+
if (identifier === undefined) {
|
|
61
61
|
trace.exit();
|
|
62
62
|
return undefined;
|
|
63
63
|
}
|
|
64
|
-
const updatedSettings = Object.assign(Object.assign({}, state), {
|
|
65
|
-
const triedDeferencedIdentifier = yield (0, deferenceIdentifier_1.tryDeferenceIdentifier)(updatedSettings, state.nodeIdMapCollection,
|
|
64
|
+
const updatedSettings = Object.assign(Object.assign({}, state), { initialCorrelationId: trace.id });
|
|
65
|
+
const triedDeferencedIdentifier = yield (0, deferenceIdentifier_1.tryDeferenceIdentifier)(updatedSettings, state.nodeIdMapCollection, identifier, state.scopeById);
|
|
66
66
|
if (powerquery_parser_1.ResultUtils.isError(triedDeferencedIdentifier) || triedDeferencedIdentifier.value === undefined) {
|
|
67
67
|
return undefined;
|
|
68
68
|
}
|
|
@@ -71,7 +71,7 @@ function maybeExternalInvokeRequest(state, xorNode, maybeCorrelationId) {
|
|
|
71
71
|
// eslint-disable-next-line no-await-in-loop
|
|
72
72
|
types.push(yield (0, common_1.inspectXor)(state, argument, trace.id));
|
|
73
73
|
}
|
|
74
|
-
const result = externalType_1.ExternalTypeUtils.createInvocationTypeRequest(powerquery_parser_1.Assert.asDefined(parser_1.XorNodeUtils.
|
|
74
|
+
const result = externalType_1.ExternalTypeUtils.createInvocationTypeRequest(powerquery_parser_1.Assert.asDefined(parser_1.XorNodeUtils.identifierExpressionLiteral(triedDeferencedIdentifier.value)), types);
|
|
75
75
|
trace.exit();
|
|
76
76
|
return result;
|
|
77
77
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeInvokeExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,oEAAmE;AACnE,0FAAwF;AACxF,sFAMmE;AAGnE,qDAAqE;AACrE,gCAA+D;AAC/D,qCAAwD;AACxD,mEAAmE;AAEnE,SAAsB,2BAA2B,CAC7C,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeInvokeExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
2
|
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
3
3
|
import { InspectTypeState } from "./common";
|
|
4
|
-
export declare function inspectTypeList(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeList(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.List | Type.DefinedList>;
|
|
@@ -17,20 +17,20 @@ const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
|
17
17
|
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
18
18
|
const __1 = require("../../..");
|
|
19
19
|
const common_1 = require("./common");
|
|
20
|
-
function inspectTypeList(state, xorNode,
|
|
20
|
+
function inspectTypeList(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 */, inspectTypeList.name,
|
|
23
|
+
const trace = state.traceManager.entry("Inspection.Type" /* InspectType */, inspectTypeList.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
24
24
|
let result;
|
|
25
25
|
switch (state.typeStrategy) {
|
|
26
26
|
case "Extended" /* Extended */: {
|
|
27
|
-
(_a = state.
|
|
27
|
+
(_a = state.cancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
28
28
|
const items = parser_1.NodeIdMapIterator.iterListItems(state.nodeIdMapCollection, xorNode);
|
|
29
29
|
const elements = yield Promise.all(items.map((item) => (0, common_1.inspectXor)(state, item, trace.id)));
|
|
30
30
|
result = {
|
|
31
31
|
kind: "List" /* List */,
|
|
32
32
|
isNullable: false,
|
|
33
|
-
|
|
33
|
+
extendedKind: "DefinedList" /* DefinedList */,
|
|
34
34
|
elements,
|
|
35
35
|
};
|
|
36
36
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeList.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeList.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,sFAAwG;AAExG,oEAAsD;AACtD,0FAAmF;AAEnF,gCAA+D;AAC/D,qCAAwD;AAGxD,SAAsB,eAAe,CACjC,KAAuB,EACvB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"inspectTypeList.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeList.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,sFAAwG;AAExG,oEAAsD;AACtD,0FAAmF;AAEnF,gCAA+D;AAC/D,qCAAwD;AAGxD,SAAsB,eAAe,CACjC,KAAuB,EACvB,OAAiB,EACjB,aAAiC;;;QAEjC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sCAEzC,eAAe,CAAC,IAAI,EACpB,aAAa,EACb,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,IAAI,MAAoC,CAAC;QAEzC,QAAQ,KAAK,CAAC,YAAY,EAAE;YACxB,8BAA0B,CAAC,CAAC;gBACxB,MAAA,KAAK,CAAC,iBAAiB,0CAAE,gBAAgB,EAAE,CAAC;gBAC5C,MAAM,KAAK,GAA4B,0BAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;gBAE3G,MAAM,QAAQ,GAAwC,MAAM,OAAO,CAAC,GAAG,CACnE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE,CAAC,IAAA,mBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CACnE,CAAC;gBAEF,MAAM,GAAG;oBACL,IAAI,mBAAoB;oBACxB,UAAU,EAAE,KAAK;oBACjB,YAAY,iCAAmC;oBAC/C,QAAQ;iBACX,CAAC;gBAEF,MAAM;aACT;YAED;gBACI,MAAM,GAAG,eAAI,CAAC,YAAY,CAAC;gBAC3B,MAAM;YAEV;gBACI,0BAAM,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SAC1C;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE7E,OAAO,MAAM,CAAC;;CACjB;AA5CD,0CA4CC"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.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 inspectTypeListType(state: InspectTypeState, xorNode: TXorNode,
|
|
4
|
+
export declare function inspectTypeListType(state: InspectTypeState, xorNode: TXorNode, correlationId: number | undefined): Promise<Type.Type | Type.ListType | Type.Unknown>;
|