@microsoft/powerquery-language-services 0.2.11 → 0.2.17
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 +1 -1
- package/lib/powerquery-language-services/analysis/analysisBase.d.ts +1 -0
- package/lib/powerquery-language-services/analysis/analysisBase.js +38 -29
- package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
- package/lib/powerquery-language-services/analysis/analysisSettings.d.ts +3 -2
- package/lib/powerquery-language-services/analysis/analysisUtils.d.ts +1 -1
- package/lib/powerquery-language-services/analysis/documentAnalysis.d.ts +1 -1
- package/lib/powerquery-language-services/commonTypes.d.ts +1 -2
- package/lib/powerquery-language-services/commonTypes.js +0 -2
- package/lib/powerquery-language-services/commonTypes.js.map +1 -1
- package/lib/powerquery-language-services/commonTypesUtils.js.map +1 -1
- package/lib/powerquery-language-services/documentSymbols.js +21 -16
- 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 -1
- package/lib/powerquery-language-services/formatter.js.map +1 -1
- package/lib/powerquery-language-services/index.d.ts +2 -0
- package/lib/powerquery-language-services/index.js +3 -1
- package/lib/powerquery-language-services/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +4 -3
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.d.ts +7 -6
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +29 -28
- 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 +41 -35
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItem.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.d.ts +7 -7
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +27 -26
- 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 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +36 -36
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +6 -6
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js +4 -3
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js +5 -6
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +18 -15
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js +7 -7
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js +11 -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 +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js +7 -6
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/commonTypes.d.ts +4 -4
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +26 -26
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +30 -27
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteUtils.js +4 -4
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/commonTypes.d.ts +5 -3
- package/lib/powerquery-language-services/inspection/autocomplete/task.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/task.js +8 -6
- package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/expectedType.d.ts +5 -3
- package/lib/powerquery-language-services/inspection/expectedType.js +70 -67
- package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/externalType/externalType.d.ts +5 -5
- package/lib/powerquery-language-services/inspection/externalType/externalType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/externalType/externalTypeUtils.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/externalType/externalTypeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/common.d.ts +7 -6
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.d.ts +4 -3
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +14 -12
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.d.ts +4 -3
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +15 -14
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/jaroWinkler.js +0 -2
- package/lib/powerquery-language-services/inspection/jaroWinkler.js.map +1 -1
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.d.ts +6 -5
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +12 -15
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scope.d.ts +12 -10
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.d.ts +4 -3
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +50 -27
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/task.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/task.js +10 -10
- package/lib/powerquery-language-services/inspection/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +13 -12
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +78 -64
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.d.ts +4 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +14 -12
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js +25 -24
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +11 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +14 -8
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.js +33 -24
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js +32 -18
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +11 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +20 -15
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +20 -11
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +16 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +16 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +26 -13
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +26 -17
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +10 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +21 -12
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.d.ts +4 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +25 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +21 -11
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +12 -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 +4 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +14 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +21 -17
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +16 -11
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +15 -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 +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +22 -14
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.d.ts +7 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +77 -116
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +16 -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 +3 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +42 -30
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/task.d.ts +5 -3
- package/lib/powerquery-language-services/inspection/type/task.js +23 -9
- package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/typeCache/typeCache.d.ts +2 -2
- package/lib/powerquery-language-services/inspectionUtils.d.ts +9 -8
- package/lib/powerquery-language-services/inspectionUtils.js +12 -17
- package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
- package/lib/powerquery-language-services/library/library.d.ts +3 -3
- package/lib/powerquery-language-services/library/libraryUtils.d.ts +3 -3
- package/lib/powerquery-language-services/library/libraryUtils.js +5 -5
- package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
- package/lib/powerquery-language-services/localization/localization.js +7 -7
- package/lib/powerquery-language-services/localization/localization.js.map +1 -1
- package/lib/powerquery-language-services/localization/templates/templates.bg-BG.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.ca-ES.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.cs-CZ.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.da-DK.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.de-DE.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.el-GR.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.es-ES.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.et-EE.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.eu-ES.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.fi-FI.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.fr-FR.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.gl-ES.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.hi-IN.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.hr-HR.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.hu-HU.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.id-ID.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.it-IT.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.ja-JP.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.json +3 -1
- package/lib/powerquery-language-services/localization/templates/templates.kk-KZ.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.ko-KR.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.lt-LT.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.lv-LV.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.ms-MY.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.nb-NO.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.nl-NL.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.pl-PL.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.pt-BR.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.pt-PT.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.ro-RO.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.ru-RU.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.sk-SK.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.sl-SI.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.sr-Cyrl-RS.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.sr-Latn-RS.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.sv-SE.json +1 -0
- package/lib/powerquery-language-services/localization/templates/templates.th-TH.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.tr-TR.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.uk-UA.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.vi-VN.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.zh-CN.json +2 -1
- package/lib/powerquery-language-services/localization/templates/templates.zh-TW.json +1 -0
- package/lib/powerquery-language-services/localization/templates.d.ts +1 -1
- package/lib/powerquery-language-services/localization/templates.js +2 -2
- package/lib/powerquery-language-services/localization/templates.js.map +1 -1
- package/lib/powerquery-language-services/positionUtils.d.ts +18 -16
- package/lib/powerquery-language-services/positionUtils.js +11 -10
- package/lib/powerquery-language-services/positionUtils.js.map +1 -1
- package/lib/powerquery-language-services/providers/commonTypes.d.ts +2 -2
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.d.ts +2 -2
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +13 -9
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/librarySymbolProvider.d.ts +2 -2
- package/lib/powerquery-language-services/providers/librarySymbolProvider.js +7 -10
- package/lib/powerquery-language-services/providers/librarySymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.d.ts +2 -2
- package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.js +24 -30
- package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/nullSymbolProvider.d.ts +2 -2
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js +0 -2
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/trace.d.ts +12 -0
- package/lib/powerquery-language-services/trace.js +5 -0
- package/lib/powerquery-language-services/trace.js.map +1 -0
- package/lib/powerquery-language-services/traceUtils.d.ts +14 -0
- package/lib/powerquery-language-services/traceUtils.js +21 -0
- package/lib/powerquery-language-services/traceUtils.js.map +1 -0
- package/lib/powerquery-language-services/validate/validate.js +12 -7
- package/lib/powerquery-language-services/validate/validate.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.d.ts +1 -1
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +18 -13
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.d.ts +5 -0
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js +149 -0
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -0
- package/lib/powerquery-language-services/validate/validateInvokeExpression.d.ts +2 -2
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js +18 -12
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateLexAndParse.d.ts +1 -1
- package/lib/powerquery-language-services/validate/validateLexAndParse.js +5 -2
- package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +1 -1
- package/lib/powerquery-language-services/validate/validationSettings/validationSettings.d.ts +1 -0
- package/lib/powerquery-language-services/validate/validationSettings/validationSettingsUtils.d.ts +1 -1
- package/lib/powerquery-language-services/validate/validationSettings/validationSettingsUtils.js +2 -2
- package/lib/powerquery-language-services/validate/validationSettings/validationSettingsUtils.js.map +1 -1
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.d.ts +1 -1
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js.map +1 -1
- package/package.json +24 -26
|
@@ -3,54 +3,55 @@
|
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.inspectTypeConstant = void 0;
|
|
6
|
-
var
|
|
6
|
+
var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
7
|
+
var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
7
8
|
function inspectTypeConstant(xorNode) {
|
|
8
|
-
|
|
9
|
-
if (xorNode
|
|
10
|
-
return
|
|
9
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "Constant" /* Constant */);
|
|
10
|
+
if (parser_1.XorNodeUtils.isContextXor(xorNode)) {
|
|
11
|
+
return language_1.Type.UnknownInstance;
|
|
11
12
|
}
|
|
12
13
|
var constant = xorNode.node;
|
|
13
14
|
switch (constant.constantKind) {
|
|
14
15
|
case "action" /* Action */:
|
|
15
|
-
return
|
|
16
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Action" /* Action */);
|
|
16
17
|
case "any" /* Any */:
|
|
17
|
-
return
|
|
18
|
+
return language_1.Type.AnyInstance;
|
|
18
19
|
case "anynonnull" /* AnyNonNull */:
|
|
19
|
-
return
|
|
20
|
+
return language_1.TypeUtils.createPrimitiveType(false, "AnyNonNull" /* AnyNonNull */);
|
|
20
21
|
case "binary" /* Binary */:
|
|
21
|
-
return
|
|
22
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Binary" /* Binary */);
|
|
22
23
|
case "date" /* Date */:
|
|
23
|
-
return
|
|
24
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Date" /* Date */);
|
|
24
25
|
case "datetime" /* DateTime */:
|
|
25
|
-
return
|
|
26
|
+
return language_1.TypeUtils.createPrimitiveType(false, "DateTime" /* DateTime */);
|
|
26
27
|
case "datetimezone" /* DateTimeZone */:
|
|
27
|
-
return
|
|
28
|
+
return language_1.TypeUtils.createPrimitiveType(false, "DateTimeZone" /* DateTimeZone */);
|
|
28
29
|
case "duration" /* Duration */:
|
|
29
|
-
return
|
|
30
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Duration" /* Duration */);
|
|
30
31
|
case "function" /* Function */:
|
|
31
|
-
return
|
|
32
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Function" /* Function */);
|
|
32
33
|
case "list" /* List */:
|
|
33
|
-
return
|
|
34
|
+
return language_1.TypeUtils.createPrimitiveType(false, "List" /* List */);
|
|
34
35
|
case "logical" /* Logical */:
|
|
35
|
-
return
|
|
36
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Logical" /* Logical */);
|
|
36
37
|
case "none" /* None */:
|
|
37
|
-
return
|
|
38
|
+
return language_1.TypeUtils.createPrimitiveType(false, "None" /* None */);
|
|
38
39
|
case "null" /* Null */:
|
|
39
|
-
return
|
|
40
|
+
return language_1.Type.NoneInstance;
|
|
40
41
|
case "number" /* Number */:
|
|
41
|
-
return
|
|
42
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Number" /* Number */);
|
|
42
43
|
case "record" /* Record */:
|
|
43
|
-
return
|
|
44
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Record" /* Record */);
|
|
44
45
|
case "table" /* Table */:
|
|
45
|
-
return
|
|
46
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Table" /* Table */);
|
|
46
47
|
case "text" /* Text */:
|
|
47
|
-
return
|
|
48
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Text" /* Text */);
|
|
48
49
|
case "time" /* Time */:
|
|
49
|
-
return
|
|
50
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Time" /* Time */);
|
|
50
51
|
case "type" /* Type */:
|
|
51
|
-
return
|
|
52
|
+
return language_1.TypeUtils.createPrimitiveType(false, "Type" /* Type */);
|
|
52
53
|
default:
|
|
53
|
-
return
|
|
54
|
+
return language_1.Type.UnknownInstance;
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
57
|
exports.inspectTypeConstant = inspectTypeConstant;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeConstant.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,
|
|
1
|
+
{"version":3,"file":"inspectTypeConstant.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wFAA6G;AAC7G,oFAAmG;AAEnG,SAAgB,mBAAmB,CAAC,OAAiB;IACjD,qBAAY,CAAC,gBAAgB,CAAgB,OAAO,4BAAwB,CAAC;IAE7E,IAAI,qBAAY,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;QACpC,OAAO,eAAI,CAAC,eAAe,CAAC;KAC/B;IAED,IAAM,QAAQ,GAAkB,OAAO,CAAC,IAAI,CAAC;IAC7C,QAAQ,QAAQ,CAAC,YAAY,EAAE;QAC3B;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,wBAAuB,CAAC;QAEtE;YACI,OAAO,eAAI,CAAC,WAAW,CAAC;QAE5B;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,gCAA2B,CAAC;QAE1E;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,wBAAuB,CAAC;QAEtE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,oBAAqB,CAAC;QAEpE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,4BAAyB,CAAC;QAExE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,oCAA6B,CAAC;QAE5E;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,4BAAyB,CAAC;QAExE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,4BAAyB,CAAC;QAExE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,oBAAqB,CAAC;QAEpE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,0BAAwB,CAAC;QAEvE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,oBAAqB,CAAC;QAEpE;YACI,OAAO,eAAI,CAAC,YAAY,CAAC;QAE7B;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,wBAAuB,CAAC;QAEtE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,wBAAuB,CAAC;QAEtE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,sBAAsB,CAAC;QAErE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,oBAAqB,CAAC;QAEpE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,oBAAqB,CAAC;QAEpE;YACI,OAAO,oBAAS,CAAC,mBAAmB,CAAC,KAAK,oBAAqB,CAAC;QAEpE;YACI,OAAO,eAAI,CAAC,eAAe,CAAC;KACnC;AACL,CAAC;AArED,kDAqEC"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
|
+
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
3
|
import { InspectTypeState } from "./common";
|
|
3
|
-
export declare function inspectTypeEachExpression(state: InspectTypeState, xorNode:
|
|
4
|
+
export declare function inspectTypeEachExpression(state: InspectTypeState, xorNode: TXorNode): Type.TPowerQueryType;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js
CHANGED
|
@@ -3,14 +3,18 @@
|
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.inspectTypeEachExpression = void 0;
|
|
6
|
-
var
|
|
6
|
+
var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
7
|
+
var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
7
8
|
var common_1 = require("./common");
|
|
9
|
+
var __1 = require("../../..");
|
|
8
10
|
function inspectTypeEachExpression(state, xorNode) {
|
|
9
11
|
var _a;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
var _b;
|
|
13
|
+
var trace = state.traceManager.entry("Type" /* Type */, inspectTypeEachExpression.name, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
14
|
+
(_b = state.maybeCancellationToken) === null || _b === void 0 ? void 0 : _b.throwIfCancelled();
|
|
15
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "EachExpression" /* EachExpression */);
|
|
16
|
+
var expressionType = (0, common_1.inspectTypeFromChildAttributeIndex)(state, xorNode, 1);
|
|
17
|
+
var result = language_1.TypeUtils.createDefinedFunction(false, [
|
|
14
18
|
{
|
|
15
19
|
isNullable: false,
|
|
16
20
|
isOptional: false,
|
|
@@ -18,6 +22,8 @@ function inspectTypeEachExpression(state, xorNode) {
|
|
|
18
22
|
nameLiteral: "_",
|
|
19
23
|
},
|
|
20
24
|
], expressionType);
|
|
25
|
+
trace.exit((_a = {}, _a["Result" /* Result */] = __1.TraceUtils.createTypeDetails(result), _a));
|
|
26
|
+
return result;
|
|
21
27
|
}
|
|
22
28
|
exports.inspectTypeEachExpression = inspectTypeEachExpression;
|
|
23
29
|
//# sourceMappingURL=inspectTypeEachExpression.js.map
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"inspectTypeEachExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wFAAmG;AAEnG,oFAAmG;AAEnG,mCAAgF;AAChF,8BAAoE;AAEpE,SAAgB,yBAAyB,CAAC,KAAuB,EAAE,OAAiB;;;IAChF,IAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,oBAEzC,yBAAyB,CAAC,IAAI,EAC9B,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;IACF,MAAA,KAAK,CAAC,sBAAsB,0CAAE,gBAAgB,EAAE,CAAC;IACjD,qBAAY,CAAC,gBAAgB,CAAqB,OAAO,wCAA8B,CAAC;IAExF,IAAM,cAAc,GAAyB,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IACnG,IAAM,MAAM,GAAyB,oBAAS,CAAC,qBAAqB,CAChE,KAAK,EACL;QACI;YACI,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,KAAK;YACjB,SAAS,iBAAmB;YAC5B,WAAW,EAAE,GAAG;SACnB;KACJ,EACD,cAAc,CACjB,CAAC;IACF,KAAK,CAAC,IAAI,WAAG,4BAAwB,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAG,CAAC;IAE7E,OAAO,MAAM,CAAC;AAClB,CAAC;AAzBD,8DAyBC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
|
+
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
3
|
import { InspectTypeState } from "./common";
|
|
3
|
-
export declare function inspectTypeErrorHandlingExpression(state: InspectTypeState, xorNode:
|
|
4
|
+
export declare function inspectTypeErrorHandlingExpression(state: InspectTypeState, xorNode: TXorNode): Type.TPowerQueryType;
|
|
@@ -3,19 +3,25 @@
|
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.inspectTypeErrorHandlingExpression = void 0;
|
|
6
|
-
var
|
|
6
|
+
var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
7
|
+
var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
7
8
|
var common_1 = require("./common");
|
|
9
|
+
var __1 = require("../../..");
|
|
8
10
|
function inspectTypeErrorHandlingExpression(state, xorNode) {
|
|
9
11
|
var _a;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
var _b;
|
|
13
|
+
var trace = state.traceManager.entry("Type" /* Type */, inspectTypeErrorHandlingExpression.name, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
14
|
+
(_b = state.maybeCancellationToken) === null || _b === void 0 ? void 0 : _b.throwIfCancelled();
|
|
15
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "ErrorHandlingExpression" /* ErrorHandlingExpression */);
|
|
16
|
+
var maybeOtherwiseExpression = parser_1.NodeIdMapUtils.maybeNthChildChecked(state.nodeIdMapCollection, xorNode.node.id, 2, "OtherwiseExpression" /* OtherwiseExpression */);
|
|
17
|
+
var result = language_1.TypeUtils.createAnyUnion([
|
|
18
|
+
(0, common_1.inspectTypeFromChildAttributeIndex)(state, xorNode, 1),
|
|
15
19
|
maybeOtherwiseExpression !== undefined
|
|
16
|
-
? common_1.inspectXor(state, maybeOtherwiseExpression)
|
|
17
|
-
:
|
|
20
|
+
? (0, common_1.inspectXor)(state, maybeOtherwiseExpression)
|
|
21
|
+
: language_1.TypeUtils.createPrimitiveType(false, "Record" /* Record */),
|
|
18
22
|
]);
|
|
23
|
+
trace.exit((_a = {}, _a["Result" /* Result */] = __1.TraceUtils.createTypeDetails(result), _a));
|
|
24
|
+
return result;
|
|
19
25
|
}
|
|
20
26
|
exports.inspectTypeErrorHandlingExpression = inspectTypeErrorHandlingExpression;
|
|
21
27
|
//# sourceMappingURL=inspectTypeErrorHandlingExpression.js.map
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"inspectTypeErrorHandlingExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wFAAmG;AACnG,oFAKmE;AAGnE,mCAA4F;AAC5F,8BAAoE;AAEpE,SAAgB,kCAAkC,CAAC,KAAuB,EAAE,OAAiB;;;IACzF,IAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,oBAEzC,kCAAkC,CAAC,IAAI,EACvC,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;IACF,MAAA,KAAK,CAAC,sBAAsB,0CAAE,gBAAgB,EAAE,CAAC;IACjD,qBAAY,CAAC,gBAAgB,CAA8B,OAAO,0DAAuC,CAAC;IAE1G,IAAM,wBAAwB,GAC1B,uBAAc,CAAC,oBAAoB,CAC/B,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,EACf,CAAC,kDAEJ,CAAC;IAEN,IAAM,MAAM,GAAyB,oBAAS,CAAC,cAAc,CAAC;QAC1D,IAAA,2CAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACrD,wBAAwB,KAAK,SAAS;YAClC,CAAC,CAAC,IAAA,mBAAU,EAAC,KAAK,EAAE,wBAAwB,CAAC;YAC7C,CAAC,CAAC,oBAAS,CAAC,mBAAmB,CAAC,KAAK,wBAAuB;KACnE,CAAC,CAAC;IACH,KAAK,CAAC,IAAI,WAAG,4BAAwB,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAG,CAAC;IAE7E,OAAO,MAAM,CAAC;AAClB,CAAC;AA1BD,gFA0BC"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
|
+
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
3
|
import { InspectTypeState } from "./common";
|
|
3
|
-
export declare function inspectTypeFieldProjection(state: InspectTypeState, xorNode:
|
|
4
|
+
export declare function inspectTypeFieldProjection(state: InspectTypeState, xorNode: TXorNode): Type.TPowerQueryType;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.js
CHANGED
|
@@ -28,32 +28,41 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
28
28
|
}
|
|
29
29
|
return ar;
|
|
30
30
|
};
|
|
31
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
|
|
32
|
-
for (var i = 0,
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
32
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
33
|
+
if (ar || !(i in from)) {
|
|
34
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
35
|
+
ar[i] = from[i];
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
35
39
|
};
|
|
36
40
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
41
|
exports.inspectTypeFieldProjection = void 0;
|
|
38
42
|
var PQP = require("@microsoft/powerquery-parser");
|
|
43
|
+
var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
44
|
+
var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
39
45
|
var common_1 = require("./common");
|
|
46
|
+
var __1 = require("../../..");
|
|
40
47
|
function inspectTypeFieldProjection(state, xorNode) {
|
|
41
48
|
var _a;
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
var
|
|
47
|
-
var
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
var _b;
|
|
50
|
+
var trace = state.traceManager.entry("Type" /* Type */, inspectTypeFieldProjection.name, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
51
|
+
(_b = state.maybeCancellationToken) === null || _b === void 0 ? void 0 : _b.throwIfCancelled();
|
|
52
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FieldProjection" /* FieldProjection */);
|
|
53
|
+
var projectedFieldNames = parser_1.NodeIdMapIterator.iterFieldProjectionNames(state.nodeIdMapCollection, xorNode);
|
|
54
|
+
var previousSibling = parser_1.NodeIdMapUtils.assertGetRecursiveExpressionPreviousSibling(state.nodeIdMapCollection, xorNode.node.id);
|
|
55
|
+
var previousSiblingType = (0, common_1.inspectXor)(state, previousSibling);
|
|
56
|
+
var isOptional = parser_1.NodeIdMapUtils.maybeUnboxNthChildIfAstChecked(state.nodeIdMapCollection, xorNode.node.id, 3, "Constant" /* Constant */) !== undefined;
|
|
57
|
+
var result = inspectFieldProjectionHelper(previousSiblingType, projectedFieldNames, isOptional);
|
|
58
|
+
trace.exit((_a = {}, _a["Result" /* Result */] = __1.TraceUtils.createTypeDetails(result), _a));
|
|
59
|
+
return result;
|
|
51
60
|
}
|
|
52
61
|
exports.inspectTypeFieldProjection = inspectTypeFieldProjection;
|
|
53
62
|
function inspectFieldProjectionHelper(previousSiblingType, projectedFieldNames, isOptional) {
|
|
54
63
|
switch (previousSiblingType.kind) {
|
|
55
64
|
case "Any" /* Any */: {
|
|
56
|
-
var projectedFields = new Map(projectedFieldNames.map(function (fieldName) { return [fieldName,
|
|
65
|
+
var projectedFields = new Map(projectedFieldNames.map(function (fieldName) { return [fieldName, language_1.Type.AnyInstance]; }));
|
|
57
66
|
return {
|
|
58
67
|
kind: "Any" /* Any */,
|
|
59
68
|
maybeExtendedKind: "AnyUnion" /* AnyUnion */,
|
|
@@ -70,7 +79,7 @@ function inspectFieldProjectionHelper(previousSiblingType, projectedFieldNames,
|
|
|
70
79
|
kind: "Table" /* Table */,
|
|
71
80
|
maybeExtendedKind: "DefinedTable" /* DefinedTable */,
|
|
72
81
|
isNullable: previousSiblingType.isNullable,
|
|
73
|
-
fields: new PQP.OrderedMap(__spreadArray([], __read(projectedFields))),
|
|
82
|
+
fields: new PQP.OrderedMap(__spreadArray([], __read(projectedFields), false)),
|
|
74
83
|
isOpen: false,
|
|
75
84
|
},
|
|
76
85
|
],
|
|
@@ -80,29 +89,29 @@ function inspectFieldProjectionHelper(previousSiblingType, projectedFieldNames,
|
|
|
80
89
|
case "Table" /* Table */: {
|
|
81
90
|
// All we know is previousSibling was a Record/Table.
|
|
82
91
|
// Create a DefinedRecord/DefinedTable with the projected fields.
|
|
83
|
-
if (
|
|
92
|
+
if (language_1.TypeUtils.isDefinedRecord(previousSiblingType)) {
|
|
84
93
|
return reducedFieldsToKeys(previousSiblingType, projectedFieldNames, isOptional, reducedRecordFields);
|
|
85
94
|
}
|
|
86
|
-
else if (
|
|
95
|
+
else if (language_1.TypeUtils.isDefinedTable(previousSiblingType)) {
|
|
87
96
|
return reducedFieldsToKeys(previousSiblingType, projectedFieldNames, isOptional, reducedTableFields);
|
|
88
97
|
}
|
|
89
98
|
else {
|
|
90
|
-
var newFields = new Map(projectedFieldNames.map(function (fieldName) { return [fieldName,
|
|
99
|
+
var newFields = new Map(projectedFieldNames.map(function (fieldName) { return [fieldName, language_1.Type.AnyInstance]; }));
|
|
91
100
|
return previousSiblingType.kind === "Record" /* Record */
|
|
92
|
-
?
|
|
93
|
-
:
|
|
101
|
+
? language_1.TypeUtils.createDefinedRecord(false, newFields, false)
|
|
102
|
+
: language_1.TypeUtils.createDefinedTable(false, new PQP.OrderedMap(__spreadArray([], __read(newFields), false)), false);
|
|
94
103
|
}
|
|
95
104
|
}
|
|
96
105
|
default:
|
|
97
|
-
return
|
|
106
|
+
return language_1.Type.NoneInstance;
|
|
98
107
|
}
|
|
99
108
|
}
|
|
100
109
|
// Returns a subset of `current` using `keys`.
|
|
101
110
|
// If a mismatch is found it either returns Null if isOptional, else None.
|
|
102
111
|
function reducedFieldsToKeys(current, keys, isOptional, createFieldsFn) {
|
|
103
|
-
var currentFieldNames = __spreadArray([], __read(current.fields.keys()));
|
|
112
|
+
var currentFieldNames = __spreadArray([], __read(current.fields.keys()), false);
|
|
104
113
|
if (!current.isOpen && !PQP.ArrayUtils.isSubset(currentFieldNames, keys)) {
|
|
105
|
-
return isOptional ?
|
|
114
|
+
return isOptional ? language_1.Type.NullInstance : language_1.Type.NoneInstance;
|
|
106
115
|
}
|
|
107
116
|
return __assign(__assign({}, current), { fields: createFieldsFn(current, keys), isOpen: false });
|
|
108
117
|
}
|
|
@@ -110,6 +119,6 @@ function reducedRecordFields(current, keys) {
|
|
|
110
119
|
return PQP.MapUtils.pick(current.fields, keys);
|
|
111
120
|
}
|
|
112
121
|
function reducedTableFields(current, keys) {
|
|
113
|
-
return new PQP.OrderedMap(__spreadArray([], __read(PQP.MapUtils.pick(current.fields, keys).entries())));
|
|
122
|
+
return new PQP.OrderedMap(__spreadArray([], __read(PQP.MapUtils.pick(current.fields, keys).entries()), false));
|
|
114
123
|
}
|
|
115
124
|
//# sourceMappingURL=inspectTypeFieldProjection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeFieldProjection.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC
|
|
1
|
+
{"version":3,"file":"inspectTypeFieldProjection.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.ts"],"names":[],"mappings":"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"}
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
|
+
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
3
|
import { InspectTypeState } from "./common";
|
|
3
|
-
export declare function inspectTypeFieldSelector(state: InspectTypeState, xorNode:
|
|
4
|
+
export declare function inspectTypeFieldSelector(state: InspectTypeState, xorNode: TXorNode): Type.TPowerQueryType;
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js
CHANGED
|
@@ -3,52 +3,66 @@
|
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.inspectTypeFieldSelector = void 0;
|
|
6
|
-
var
|
|
6
|
+
var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
7
|
+
var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
7
8
|
var powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
8
9
|
var common_1 = require("./common");
|
|
10
|
+
var __1 = require("../../..");
|
|
9
11
|
function inspectTypeFieldSelector(state, xorNode) {
|
|
10
|
-
var _a;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
var _a, _b;
|
|
13
|
+
var _c;
|
|
14
|
+
var trace = state.traceManager.entry("Type" /* Type */, inspectTypeFieldSelector.name, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
15
|
+
(_c = state.maybeCancellationToken) === null || _c === void 0 ? void 0 : _c.throwIfCancelled();
|
|
16
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FieldSelector" /* FieldSelector */);
|
|
17
|
+
var maybeFieldName = parser_1.NodeIdMapUtils.maybeUnboxWrappedContentIfAstChecked(state.nodeIdMapCollection, xorNode.node.id, "GeneralizedIdentifier" /* GeneralizedIdentifier */);
|
|
14
18
|
if (maybeFieldName === undefined) {
|
|
15
|
-
|
|
19
|
+
trace.exit((_a = {}, _a["Result" /* Result */] = __1.TraceUtils.createTypeDetails(language_1.Type.UnknownInstance), _a));
|
|
20
|
+
return language_1.Type.UnknownInstance;
|
|
16
21
|
}
|
|
17
22
|
var fieldName = maybeFieldName.literal;
|
|
18
|
-
var previousSibling =
|
|
19
|
-
var previousSiblingType = common_1.inspectXor(state, previousSibling);
|
|
20
|
-
var isOptional =
|
|
21
|
-
|
|
22
|
-
]) !== undefined;
|
|
23
|
+
var previousSibling = parser_1.NodeIdMapUtils.assertGetRecursiveExpressionPreviousSibling(state.nodeIdMapCollection, xorNode.node.id);
|
|
24
|
+
var previousSiblingType = (0, common_1.inspectXor)(state, previousSibling);
|
|
25
|
+
var isOptional = parser_1.NodeIdMapUtils.maybeUnboxNthChildIfAstChecked(state.nodeIdMapCollection, xorNode.node.id, 3, "Constant" /* Constant */) !== undefined;
|
|
26
|
+
var result;
|
|
23
27
|
switch (previousSiblingType.kind) {
|
|
24
28
|
case "Any" /* Any */:
|
|
25
|
-
|
|
29
|
+
result = language_1.Type.AnyInstance;
|
|
30
|
+
break;
|
|
26
31
|
case "Unknown" /* Unknown */:
|
|
27
|
-
|
|
32
|
+
result = language_1.Type.UnknownInstance;
|
|
33
|
+
break;
|
|
28
34
|
case "Record" /* Record */:
|
|
29
35
|
case "Table" /* Table */:
|
|
30
36
|
switch (previousSiblingType.maybeExtendedKind) {
|
|
31
37
|
case undefined:
|
|
32
|
-
|
|
38
|
+
result = language_1.Type.AnyInstance;
|
|
39
|
+
break;
|
|
33
40
|
case "DefinedRecord" /* DefinedRecord */:
|
|
34
41
|
case "DefinedTable" /* DefinedTable */: {
|
|
35
42
|
var maybeNamedField = previousSiblingType.fields.get(fieldName);
|
|
36
43
|
if (maybeNamedField !== undefined) {
|
|
37
|
-
|
|
44
|
+
result = maybeNamedField;
|
|
45
|
+
break;
|
|
38
46
|
}
|
|
39
47
|
else if (previousSiblingType.isOpen) {
|
|
40
|
-
|
|
48
|
+
result = language_1.Type.AnyInstance;
|
|
49
|
+
break;
|
|
41
50
|
}
|
|
42
51
|
else {
|
|
43
|
-
|
|
52
|
+
result = isOptional ? language_1.Type.NullInstance : language_1.Type.NoneInstance;
|
|
53
|
+
break;
|
|
44
54
|
}
|
|
45
55
|
}
|
|
46
56
|
default:
|
|
47
57
|
throw powerquery_parser_1.Assert.isNever(previousSiblingType);
|
|
48
58
|
}
|
|
59
|
+
break;
|
|
49
60
|
default:
|
|
50
|
-
|
|
61
|
+
result = language_1.Type.NoneInstance;
|
|
62
|
+
break;
|
|
51
63
|
}
|
|
64
|
+
trace.exit((_b = {}, _b["Result" /* Result */] = __1.TraceUtils.createTypeDetails(result), _b));
|
|
65
|
+
return result;
|
|
52
66
|
}
|
|
53
67
|
exports.inspectTypeFieldSelector = inspectTypeFieldSelector;
|
|
54
68
|
//# sourceMappingURL=inspectTypeFieldSelector.js.map
|
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeFieldSelector.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,
|
|
1
|
+
{"version":3,"file":"inspectTypeFieldSelector.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wFAAwF;AACxF,oFAAmH;AAEnH,kEAAsD;AAEtD,mCAAwD;AACxD,8BAAoE;AAEpE,SAAgB,wBAAwB,CAAC,KAAuB,EAAE,OAAiB;;;IAC/E,IAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,oBAEzC,wBAAwB,CAAC,IAAI,EAC7B,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;IACF,MAAA,KAAK,CAAC,sBAAsB,0CAAE,gBAAgB,EAAE,CAAC;IACjD,qBAAY,CAAC,gBAAgB,CAAoB,OAAO,sCAA6B,CAAC;IAEtF,IAAM,cAAc,GAA0C,uBAAc,CAAC,oCAAoC,CAC7G,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,sDAElB,CAAC;IACF,IAAI,cAAc,KAAK,SAAS,EAAE;QAC9B,KAAK,CAAC,IAAI,WAAG,4BAAwB,cAAU,CAAC,iBAAiB,CAAC,eAAI,CAAC,eAAe,CAAC,MAAG,CAAC;QAE3F,OAAO,eAAI,CAAC,eAAe,CAAC;KAC/B;IACD,IAAM,SAAS,GAAW,cAAc,CAAC,OAAO,CAAC;IAEjD,IAAM,eAAe,GAAa,uBAAc,CAAC,2CAA2C,CACxF,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,CAClB,CAAC;IACF,IAAM,mBAAmB,GAAyB,IAAA,mBAAU,EAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IACrF,IAAM,UAAU,GACZ,uBAAc,CAAC,8BAA8B,CACzC,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,EACf,CAAC,4BAEJ,KAAK,SAAS,CAAC;IAEpB,IAAI,MAA4B,CAAC;IACjC,QAAQ,mBAAmB,CAAC,IAAI,EAAE;QAC9B;YACI,MAAM,GAAG,eAAI,CAAC,WAAW,CAAC;YAC1B,MAAM;QAEV;YACI,MAAM,GAAG,eAAI,CAAC,eAAe,CAAC;YAC9B,MAAM;QAEV,2BAA0B;QAC1B;YACI,QAAQ,mBAAmB,CAAC,iBAAiB,EAAE;gBAC3C,KAAK,SAAS;oBACV,MAAM,GAAG,eAAI,CAAC,WAAW,CAAC;oBAC1B,MAAM;gBAEV,yCAAyC;gBACzC,sCAAuC,CAAC,CAAC;oBACrC,IAAM,eAAe,GAAqC,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBACpG,IAAI,eAAe,KAAK,SAAS,EAAE;wBAC/B,MAAM,GAAG,eAAe,CAAC;wBACzB,MAAM;qBACT;yBAAM,IAAI,mBAAmB,CAAC,MAAM,EAAE;wBACnC,MAAM,GAAG,eAAI,CAAC,WAAW,CAAC;wBAC1B,MAAM;qBACT;yBAAM;wBACH,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,eAAI,CAAC,YAAY,CAAC,CAAC,CAAC,eAAI,CAAC,YAAY,CAAC;wBAC5D,MAAM;qBACT;iBACJ;gBAED;oBACI,MAAM,0BAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;aACjD;YACD,MAAM;QAEV;YACI,MAAM,GAAG,eAAI,CAAC,YAAY,CAAC;YAC3B,MAAM;KACb;IACD,KAAK,CAAC,IAAI,WAAG,4BAAwB,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAG,CAAC;IAE7E,OAAO,MAAM,CAAC;AAClB,CAAC;AA9ED,4DA8EC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
|
+
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
3
|
import { InspectTypeState } from "./common";
|
|
3
|
-
export declare function inspectTypeFieldSpecification(state: InspectTypeState, xorNode:
|
|
4
|
+
export declare function inspectTypeFieldSpecification(state: InspectTypeState, xorNode: TXorNode): Type.TPowerQueryType;
|
|
@@ -3,16 +3,20 @@
|
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.inspectTypeFieldSpecification = void 0;
|
|
6
|
-
var
|
|
6
|
+
var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
7
|
+
var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
7
8
|
var common_1 = require("./common");
|
|
9
|
+
var __1 = require("../../..");
|
|
8
10
|
function inspectTypeFieldSpecification(state, xorNode) {
|
|
9
11
|
var _a;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
var _b;
|
|
13
|
+
var trace = state.traceManager.entry("Type" /* Type */, inspectTypeFieldSpecification.name, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
14
|
+
(_b = state.maybeCancellationToken) === null || _b === void 0 ? void 0 : _b.throwIfCancelled();
|
|
15
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FieldSpecification" /* FieldSpecification */);
|
|
16
|
+
var maybeFieldTypeSpecification = parser_1.NodeIdMapUtils.maybeNthChild(state.nodeIdMapCollection, xorNode.node.id, 2);
|
|
17
|
+
var result = maybeFieldTypeSpecification !== undefined ? (0, common_1.inspectXor)(state, maybeFieldTypeSpecification) : language_1.Type.AnyInstance;
|
|
18
|
+
trace.exit((_a = {}, _a["Result" /* Result */] = __1.TraceUtils.createTypeDetails(result), _a));
|
|
19
|
+
return result;
|
|
16
20
|
}
|
|
17
21
|
exports.inspectTypeFieldSpecification = inspectTypeFieldSpecification;
|
|
18
22
|
//# sourceMappingURL=inspectTypeFieldSpecification.js.map
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"inspectTypeFieldSpecification.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wFAAwF;AACxF,oFAAmH;AAGnH,mCAAwD;AACxD,8BAAoE;AAEpE,SAAgB,6BAA6B,CAAC,KAAuB,EAAE,OAAiB;;;IACpF,IAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,oBAEzC,6BAA6B,CAAC,IAAI,EAClC,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;IACF,MAAA,KAAK,CAAC,sBAAsB,0CAAE,gBAAgB,EAAE,CAAC;IACjD,qBAAY,CAAC,gBAAgB,CAAyB,OAAO,gDAAkC,CAAC;IAEhG,IAAM,2BAA2B,GAAyB,uBAAc,CAAC,aAAa,CAClF,KAAK,CAAC,mBAAmB,EACzB,OAAO,CAAC,IAAI,CAAC,EAAE,EACf,CAAC,CACJ,CAAC;IAEF,IAAM,MAAM,GACR,2BAA2B,KAAK,SAAS,CAAC,CAAC,CAAC,IAAA,mBAAU,EAAC,KAAK,EAAE,2BAA2B,CAAC,CAAC,CAAC,CAAC,eAAI,CAAC,WAAW,CAAC;IAClH,KAAK,CAAC,IAAI,WAAG,4BAAwB,cAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAG,CAAC;IAE7E,OAAO,MAAM,CAAC;AAClB,CAAC;AApBD,sEAoBC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
|
+
import { TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
3
|
import { InspectTypeState } from "./common";
|
|
3
|
-
export declare function inspectTypeFunctionExpression(state: InspectTypeState, xorNode:
|
|
4
|
+
export declare function inspectTypeFunctionExpression(state: InspectTypeState, xorNode: TXorNode): Type.TPowerQueryType;
|
|
@@ -3,16 +3,20 @@
|
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.inspectTypeFunctionExpression = void 0;
|
|
6
|
-
var
|
|
7
|
-
var
|
|
6
|
+
var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
7
|
+
var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
8
8
|
var common_1 = require("./common");
|
|
9
|
+
var __1 = require("../../..");
|
|
10
|
+
var pseudoFunctionExpressionType_1 = require("../../pseudoFunctionExpressionType");
|
|
9
11
|
function inspectTypeFunctionExpression(state, xorNode) {
|
|
10
|
-
var _a;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
var _a, _b;
|
|
13
|
+
var _c;
|
|
14
|
+
var trace = state.traceManager.entry("Type" /* Type */, inspectTypeFunctionExpression.name, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
15
|
+
(_c = state.maybeCancellationToken) === null || _c === void 0 ? void 0 : _c.throwIfCancelled();
|
|
16
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "FunctionExpression" /* FunctionExpression */);
|
|
17
|
+
var pseudoType = (0, pseudoFunctionExpressionType_1.pseudoFunctionExpressionType)(state.nodeIdMapCollection, xorNode);
|
|
14
18
|
var pseudoReturnType = pseudoType.returnType;
|
|
15
|
-
var expressionType = common_1.inspectTypeFromChildAttributeIndex(state, xorNode, 3);
|
|
19
|
+
var expressionType = (0, common_1.inspectTypeFromChildAttributeIndex)(state, xorNode, 3);
|
|
16
20
|
// FunctionExpression.maybeFunctionReturnType doesn't always match FunctionExpression.expression.
|
|
17
21
|
// By examining the expression we might get a more accurate return type (eg. Function vs DefinedFunction),
|
|
18
22
|
// or discover an error (eg. maybeFunctionReturnType is Number but expression is Text).
|
|
@@ -22,27 +26,26 @@ function inspectTypeFunctionExpression(state, xorNode) {
|
|
|
22
26
|
if (pseudoReturnType.kind === "Any" /* Any */) {
|
|
23
27
|
returnType = expressionType;
|
|
24
28
|
}
|
|
25
|
-
// If the return type is Any then see if we can narrow it to the stated return
|
|
29
|
+
// If the return type is Any then see if we can narrow it to the stated return Type.
|
|
26
30
|
else if (expressionType.kind === "Any" /* Any */ &&
|
|
27
31
|
expressionType.maybeExtendedKind === "AnyUnion" /* AnyUnion */ &&
|
|
28
|
-
common_1.allForAnyUnion(expressionType, function (type) {
|
|
29
|
-
return type.kind === pseudoReturnType.kind || type.kind === "Any" /* Any */;
|
|
30
|
-
})) {
|
|
32
|
+
(0, common_1.allForAnyUnion)(expressionType, function (type) { return type.kind === pseudoReturnType.kind || type.kind === "Any" /* Any */; })) {
|
|
31
33
|
returnType = expressionType;
|
|
32
34
|
}
|
|
33
35
|
// If the stated return type doesn't match the expression's type then it's None.
|
|
34
36
|
else if (pseudoReturnType.kind !== expressionType.kind) {
|
|
35
|
-
|
|
37
|
+
trace.exit((_a = {}, _a["Result" /* Result */] = __1.TraceUtils.createTypeDetails(language_1.Type.NoneInstance), _a));
|
|
38
|
+
return language_1.Type.NoneInstance;
|
|
36
39
|
}
|
|
37
|
-
// If the expression's type can't be known, then assume it's the stated return
|
|
40
|
+
// If the expression's type can't be known, then assume it's the stated return Type.
|
|
38
41
|
else if (expressionType.kind === "Unknown" /* Unknown */) {
|
|
39
42
|
returnType = pseudoReturnType;
|
|
40
43
|
}
|
|
41
|
-
// Else fallback to the expression's
|
|
44
|
+
// Else fallback to the expression's Type.
|
|
42
45
|
else {
|
|
43
46
|
returnType = expressionType;
|
|
44
47
|
}
|
|
45
|
-
|
|
48
|
+
var result = {
|
|
46
49
|
kind: "Function" /* Function */,
|
|
47
50
|
maybeExtendedKind: "DefinedFunction" /* DefinedFunction */,
|
|
48
51
|
isNullable: false,
|
|
@@ -56,6 +59,8 @@ function inspectTypeFunctionExpression(state, xorNode) {
|
|
|
56
59
|
}),
|
|
57
60
|
returnType: returnType,
|
|
58
61
|
};
|
|
62
|
+
trace.exit((_b = {}, _b["Result" /* Result */] = __1.TraceUtils.createTypeDetails(result), _b));
|
|
63
|
+
return result;
|
|
59
64
|
}
|
|
60
65
|
exports.inspectTypeFunctionExpression = inspectTypeFunctionExpression;
|
|
61
66
|
//# sourceMappingURL=inspectTypeFunctionExpression.js.map
|