@microsoft/powerquery-language-services 0.2.19 → 0.3.3
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/analysisBase.d.ts +4 -6
- package/lib/powerquery-language-services/analysis/analysisBase.js +118 -223
- package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
- package/lib/powerquery-language-services/analysis/analysisSettings.d.ts +2 -2
- package/lib/powerquery-language-services/analysis/analysisUtils.js +1 -1
- package/lib/powerquery-language-services/analysis/analysisUtils.js.map +1 -1
- package/lib/powerquery-language-services/analysis/documentAnalysis.d.ts +0 -2
- package/lib/powerquery-language-services/analysis/documentAnalysis.js +11 -32
- package/lib/powerquery-language-services/analysis/documentAnalysis.js.map +1 -1
- package/lib/powerquery-language-services/commonTypes.js +1 -1
- package/lib/powerquery-language-services/commonTypes.js.map +1 -1
- package/lib/powerquery-language-services/documentSymbols.d.ts +1 -1
- package/lib/powerquery-language-services/documentSymbols.js +62 -111
- 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 +35 -34
- package/lib/powerquery-language-services/formatter.js.map +1 -1
- package/lib/powerquery-language-services/index.js +2 -2
- package/lib/powerquery-language-services/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +74 -131
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/index.js +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +117 -187
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +28 -28
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +97 -114
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +11 -11
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js +9 -9
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js +5 -5
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +43 -56
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js +10 -10
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js +11 -11
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js.map +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.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js +28 -28
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +28 -31
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +19 -23
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteUtils.js +5 -5
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/common.js +2 -13
- package/lib/powerquery-language-services/inspection/autocomplete/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/index.js +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/task.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/task.js +36 -25
- package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/commonTypes.d.ts +6 -5
- package/lib/powerquery-language-services/inspection/expectedType.js +18 -18
- package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/externalType/externalType.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/externalType/externalType.js +2 -1
- package/lib/powerquery-language-services/inspection/externalType/externalType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/externalType/externalTypeUtils.js +3 -3
- package/lib/powerquery-language-services/inspection/externalType/externalTypeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +49 -66
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +74 -99
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/jaroWinkler.js +26 -42
- package/lib/powerquery-language-services/inspection/jaroWinkler.js.map +1 -1
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +24 -51
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.d.ts +3 -3
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +221 -275
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/task.d.ts +3 -2
- package/lib/powerquery-language-services/inspection/task.js +71 -41
- package/lib/powerquery-language-services/inspection/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/index.js +1 -1
- package/lib/powerquery-language-services/inspection/type/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +9 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +354 -339
- 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 +31 -41
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.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 +29 -19
- 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 +27 -17
- 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 +4 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +68 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/{inspectTypeFieldProjection.d.ts → inspectTypeField/inspectTypeFieldProjection.d.ts} +2 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +103 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/{inspectTypeFieldSelector.d.ts → inspectTypeField/inspectTypeFieldSelector.d.ts} +2 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +76 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +24 -12
- 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 +65 -55
- 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 +43 -35
- 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 +28 -18
- 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 +28 -18
- 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 +42 -30
- 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 +55 -64
- 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 +26 -16
- 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 +34 -24
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +9 -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 +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +33 -23
- 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 +22 -23
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +9 -10
- 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 +40 -30
- 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 +31 -41
- 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 +27 -28
- 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 +44 -54
- 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 +155 -179
- 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 +36 -37
- 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 +57 -105
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/task.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/type/task.js +59 -104
- package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
- package/lib/powerquery-language-services/inspectionSettings.d.ts +2 -0
- package/lib/powerquery-language-services/inspectionUtils.d.ts +5 -4
- package/lib/powerquery-language-services/inspectionUtils.js +80 -134
- package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
- package/lib/powerquery-language-services/languageServiceUtils.js +1 -1
- package/lib/powerquery-language-services/languageServiceUtils.js.map +1 -1
- package/lib/powerquery-language-services/library/libraryUtils.js +11 -11
- package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
- package/lib/powerquery-language-services/localization/localization.js +9 -13
- package/lib/powerquery-language-services/localization/localization.js.map +1 -1
- package/lib/powerquery-language-services/localization/localizationUtils.js +1 -1
- package/lib/powerquery-language-services/localization/localizationUtils.js.map +1 -1
- package/lib/powerquery-language-services/localization/templates.js +43 -43
- package/lib/powerquery-language-services/localization/templates.js.map +1 -1
- package/lib/powerquery-language-services/positionUtils.d.ts +5 -5
- package/lib/powerquery-language-services/positionUtils.js +47 -33
- package/lib/powerquery-language-services/positionUtils.js.map +1 -1
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.d.ts +3 -3
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +40 -95
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/librarySymbolProvider.js +63 -138
- package/lib/powerquery-language-services/providers/librarySymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.d.ts +3 -5
- package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.js +130 -194
- package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js +18 -52
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/validate/validate.d.ts +1 -1
- package/lib/powerquery-language-services/validate/validate.js +38 -42
- 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 +82 -127
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.d.ts +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js +61 -101
- 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 +61 -98
- 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 +112 -122
- package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +1 -1
- package/lib/powerquery-language-services/validate/validationSettings/validationSettingsUtils.js +1 -12
- package/lib/powerquery-language-services/validate/validationSettings/validationSettingsUtils.js.map +1 -1
- package/lib/powerquery-language-services/workspaceCache/workspaceCache.d.ts +3 -13
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.d.ts +7 -8
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js +93 -147
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js.map +1 -1
- package/package.json +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.js +0 -126
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.js.map +0 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js +0 -67
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js.map +0 -1
package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js
CHANGED
|
@@ -1,115 +1,78 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Copyright (c) Microsoft Corporation.
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
13
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
14
|
-
};
|
|
15
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
16
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
17
|
-
if (!m) return o;
|
|
18
|
-
var i = m.call(o), r, ar = [], e;
|
|
19
|
-
try {
|
|
20
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
21
|
-
}
|
|
22
|
-
catch (error) { e = { error: error }; }
|
|
23
|
-
finally {
|
|
24
|
-
try {
|
|
25
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
26
|
-
}
|
|
27
|
-
finally { if (e) throw e.error; }
|
|
28
|
-
}
|
|
29
|
-
return ar;
|
|
30
|
-
};
|
|
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));
|
|
4
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
5
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
6
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
7
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
8
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
9
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
10
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
11
|
+
});
|
|
39
12
|
};
|
|
40
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
14
|
exports.inspectTypeUnaryExpression = void 0;
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
15
|
+
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
16
|
+
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
|
+
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
18
|
+
const common_1 = require("./common");
|
|
19
|
+
const __1 = require("../../..");
|
|
47
20
|
function inspectTypeUnaryExpression(state, xorNode) {
|
|
48
|
-
var _a
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}
|
|
59
|
-
var unaryOperatorWrapper = maybeUnaryOperatorWrapper;
|
|
60
|
-
var result;
|
|
61
|
-
var maybeExpression = parser_1.NodeIdMapUtils.maybeNthChild(nodeIdMapCollection, xorNode.node.id, 1);
|
|
62
|
-
if (maybeExpression === undefined) {
|
|
63
|
-
result = language_1.Type.UnknownInstance;
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
var expression = maybeExpression;
|
|
67
|
-
var expressionType = (0, common_1.inspectXor)(state, expression);
|
|
68
|
-
if (expressionType.kind === "Number" /* Number */) {
|
|
69
|
-
result = inspectTypeUnaryNumber(state, expressionType, unaryOperatorWrapper.node.id);
|
|
21
|
+
var _a;
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const trace = state.traceManager.entry("Type" /* Type */, inspectTypeUnaryExpression.name, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
24
|
+
(_a = state.maybeCancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
|
|
25
|
+
parser_1.XorNodeUtils.assertIsNodeKind(xorNode, "UnaryExpression" /* UnaryExpression */);
|
|
26
|
+
const nodeIdMapCollection = state.nodeIdMapCollection;
|
|
27
|
+
const maybeUnaryOperatorWrapper = parser_1.NodeIdMapUtils.maybeNthChildChecked(nodeIdMapCollection, xorNode.node.id, 0, "ArrayWrapper" /* ArrayWrapper */);
|
|
28
|
+
if (maybeUnaryOperatorWrapper === undefined) {
|
|
29
|
+
trace.exit({ ["Result" /* Result */]: language_1.Type.UnknownInstance });
|
|
30
|
+
return language_1.Type.UnknownInstance;
|
|
70
31
|
}
|
|
71
|
-
|
|
72
|
-
|
|
32
|
+
const unaryOperatorWrapper = maybeUnaryOperatorWrapper;
|
|
33
|
+
let result;
|
|
34
|
+
const maybeExpression = parser_1.NodeIdMapUtils.maybeNthChild(nodeIdMapCollection, xorNode.node.id, 1);
|
|
35
|
+
if (maybeExpression === undefined) {
|
|
36
|
+
result = language_1.Type.UnknownInstance;
|
|
73
37
|
}
|
|
74
38
|
else {
|
|
75
|
-
|
|
39
|
+
const expression = maybeExpression;
|
|
40
|
+
const expressionType = yield (0, common_1.inspectXor)(state, expression);
|
|
41
|
+
if (expressionType.kind === "Number" /* Number */) {
|
|
42
|
+
result = inspectTypeUnaryNumber(state, expressionType, unaryOperatorWrapper.node.id);
|
|
43
|
+
}
|
|
44
|
+
else if (language_1.TypeUtils.isLogical(expressionType)) {
|
|
45
|
+
result = inspectTypeUnaryLogical(state, expressionType, unaryOperatorWrapper.node.id);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
result = language_1.Type.NoneInstance;
|
|
49
|
+
}
|
|
76
50
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
51
|
+
trace.exit({ ["Result" /* Result */]: __1.TraceUtils.createTypeDetails(result) });
|
|
52
|
+
return result;
|
|
53
|
+
});
|
|
80
54
|
}
|
|
81
55
|
exports.inspectTypeUnaryExpression = inspectTypeUnaryExpression;
|
|
82
56
|
function inspectTypeUnaryNumber(state, unaryExpressionType, unaryOperatorWrapperId) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
var expectedUnaryOperators = [
|
|
57
|
+
const unaryNodeOperators = powerquery_parser_1.Assert.asDefined(parser_1.NodeIdMapIterator.maybeIterChildrenAst(state.nodeIdMapCollection, unaryOperatorWrapperId));
|
|
58
|
+
const expectedUnaryOperators = [
|
|
86
59
|
"+" /* Positive */,
|
|
87
60
|
"-" /* Negative */,
|
|
88
61
|
];
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
if (expectedUnaryOperators.indexOf(operator.constantKind) === -1) {
|
|
95
|
-
return language_1.Type.NoneInstance;
|
|
96
|
-
}
|
|
97
|
-
unaryOperators.push(operator.constantKind);
|
|
98
|
-
if (operator.constantKind === "-" /* Negative */) {
|
|
99
|
-
isPositive = !isPositive;
|
|
100
|
-
}
|
|
62
|
+
const unaryOperators = [];
|
|
63
|
+
let isPositive = true;
|
|
64
|
+
for (const operator of unaryNodeOperators) {
|
|
65
|
+
if (expectedUnaryOperators.indexOf(operator.constantKind) === -1) {
|
|
66
|
+
return language_1.Type.NoneInstance;
|
|
101
67
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
try {
|
|
106
|
-
if (unaryNodeOperators_1_1 && !unaryNodeOperators_1_1.done && (_a = unaryNodeOperators_1.return)) _a.call(unaryNodeOperators_1);
|
|
68
|
+
unaryOperators.push(operator.constantKind);
|
|
69
|
+
if (operator.constantKind === "-" /* Negative */) {
|
|
70
|
+
isPositive = !isPositive;
|
|
107
71
|
}
|
|
108
|
-
finally { if (e_1) throw e_1.error; }
|
|
109
72
|
}
|
|
110
73
|
switch (unaryExpressionType.maybeExtendedKind) {
|
|
111
74
|
case "NumberLiteral" /* NumberLiteral */:
|
|
112
|
-
return language_1.TypeUtils.createNumberLiteral(unaryExpressionType.isNullable,
|
|
75
|
+
return language_1.TypeUtils.createNumberLiteral(unaryExpressionType.isNullable, [...unaryOperators, unaryExpressionType.literal].join(""));
|
|
113
76
|
case undefined:
|
|
114
77
|
return unaryExpressionType;
|
|
115
78
|
default:
|
|
@@ -117,22 +80,11 @@ function inspectTypeUnaryNumber(state, unaryExpressionType, unaryOperatorWrapper
|
|
|
117
80
|
}
|
|
118
81
|
}
|
|
119
82
|
function inspectTypeUnaryLogical(state, unaryExpressionType, unaryOperatorWrapperId) {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
var operator = unaryNodeOperators_2_1.value;
|
|
125
|
-
if (operator.constantKind !== "not" /* Not */) {
|
|
126
|
-
return language_1.Type.NoneInstance;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
131
|
-
finally {
|
|
132
|
-
try {
|
|
133
|
-
if (unaryNodeOperators_2_1 && !unaryNodeOperators_2_1.done && (_a = unaryNodeOperators_2.return)) _a.call(unaryNodeOperators_2);
|
|
83
|
+
const unaryNodeOperators = powerquery_parser_1.Assert.asDefined(parser_1.NodeIdMapIterator.maybeIterChildrenAst(state.nodeIdMapCollection, unaryOperatorWrapperId));
|
|
84
|
+
for (const operator of unaryNodeOperators) {
|
|
85
|
+
if (operator.constantKind !== "not" /* Not */) {
|
|
86
|
+
return language_1.Type.NoneInstance;
|
|
134
87
|
}
|
|
135
|
-
finally { if (e_2) throw e_2.error; }
|
|
136
88
|
}
|
|
137
89
|
return unaryExpressionType;
|
|
138
90
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectTypeUnaryExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC
|
|
1
|
+
{"version":3,"file":"inspectTypeUnaryExpression.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,5 @@ import { ScopeTypeByKey } from "../scope";
|
|
|
6
6
|
import { TypeCache } from "../typeCache";
|
|
7
7
|
export declare type TriedScopeType = PQP.Result<ScopeTypeByKey, PQP.CommonError.CommonError>;
|
|
8
8
|
export declare type TriedType = PQP.Result<Type.TPowerQueryType, PQP.CommonError.CommonError>;
|
|
9
|
-
export declare function tryScopeType(settings: InspectionSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, typeCache?: TypeCache): TriedScopeType
|
|
10
|
-
export declare function tryType(settings: InspectionSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, typeCache?: TypeCache): TriedType
|
|
9
|
+
export declare function tryScopeType(settings: InspectionSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, typeCache?: TypeCache): Promise<TriedScopeType>;
|
|
10
|
+
export declare function tryType(settings: InspectionSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, typeCache?: TypeCache): Promise<TriedType>;
|
|
@@ -1,128 +1,83 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Copyright (c) Microsoft Corporation.
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
13
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
14
|
-
};
|
|
15
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
16
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
17
|
-
if (!m) return o;
|
|
18
|
-
var i = m.call(o), r, ar = [], e;
|
|
19
|
-
try {
|
|
20
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
21
|
-
}
|
|
22
|
-
catch (error) { e = { error: error }; }
|
|
23
|
-
finally {
|
|
24
|
-
try {
|
|
25
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
26
|
-
}
|
|
27
|
-
finally { if (e) throw e.error; }
|
|
28
|
-
}
|
|
29
|
-
return ar;
|
|
4
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
5
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
6
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
7
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
8
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
9
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
10
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
11
|
+
});
|
|
30
12
|
};
|
|
31
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
14
|
exports.tryType = exports.tryScopeType = void 0;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
15
|
+
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
16
|
+
const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
|
|
17
|
+
const inspectType_1 = require("./inspectType");
|
|
18
|
+
const typeCache_1 = require("../typeCache");
|
|
19
|
+
// eslint-disable-next-line require-await
|
|
37
20
|
function tryScopeType(settings, nodeIdMapCollection, nodeId,
|
|
38
21
|
// If a TypeCache is given, then potentially add to its values and include it as part of the return,
|
|
39
22
|
// Else create a new TypeCache and include it in the return.
|
|
40
|
-
typeCache) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
23
|
+
typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
|
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
const trace = settings.traceManager.entry("Type" /* Type */, tryScopeType.name);
|
|
26
|
+
const state = {
|
|
27
|
+
locale: settings.locale,
|
|
28
|
+
maybeCancellationToken: settings.maybeCancellationToken,
|
|
29
|
+
maybeEachScopeById: settings.maybeEachScopeById,
|
|
30
|
+
maybeExternalTypeResolver: settings.maybeExternalTypeResolver,
|
|
31
|
+
traceManager: settings.traceManager,
|
|
32
|
+
givenTypeById: typeCache.typeById,
|
|
33
|
+
deltaTypeById: new Map(),
|
|
34
|
+
nodeIdMapCollection,
|
|
35
|
+
scopeById: typeCache.scopeById,
|
|
36
|
+
};
|
|
37
|
+
const result = powerquery_parser_1.ResultUtils.ensureResultAsync(settings.locale, () => inspectScopeType(state, nodeId));
|
|
38
|
+
trace.exit();
|
|
39
|
+
return result;
|
|
40
|
+
});
|
|
57
41
|
}
|
|
58
42
|
exports.tryScopeType = tryScopeType;
|
|
59
|
-
function tryType(settings, nodeIdMapCollection, nodeId, typeCache) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
43
|
+
function tryType(settings, nodeIdMapCollection, nodeId, typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
const trace = settings.traceManager.entry("Type" /* Type */, tryType.name);
|
|
46
|
+
const state = {
|
|
47
|
+
locale: settings.locale,
|
|
48
|
+
maybeCancellationToken: settings.maybeCancellationToken,
|
|
49
|
+
maybeEachScopeById: settings.maybeEachScopeById,
|
|
50
|
+
maybeExternalTypeResolver: settings.maybeExternalTypeResolver,
|
|
51
|
+
traceManager: settings.traceManager,
|
|
52
|
+
givenTypeById: typeCache.typeById,
|
|
53
|
+
deltaTypeById: new Map(),
|
|
54
|
+
nodeIdMapCollection,
|
|
55
|
+
scopeById: typeCache.scopeById,
|
|
56
|
+
};
|
|
57
|
+
const result = yield powerquery_parser_1.ResultUtils.ensureResultAsync(settings.locale, () => (0, inspectType_1.inspectXor)(state, parser_1.NodeIdMapUtils.assertGetXor(nodeIdMapCollection, nodeId)));
|
|
58
|
+
trace.exit({ ["IsError" /* IsError */]: result.kind });
|
|
59
|
+
return result;
|
|
75
60
|
});
|
|
76
|
-
trace.exit((_a = {}, _a["IsError" /* IsError */] = result.kind, _a));
|
|
77
|
-
return result;
|
|
78
61
|
}
|
|
79
62
|
exports.tryType = tryType;
|
|
80
63
|
function inspectScopeType(state, nodeId) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
for (var _d = __values(nodeScope.values()), _e = _d.next(); !_e.done; _e = _d.next()) {
|
|
85
|
-
var scopeItem = _e.value;
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
const nodeScope = yield (0, inspectType_1.assertGetOrCreateNodeScope)(state, nodeId);
|
|
66
|
+
for (const scopeItem of nodeScope.values()) {
|
|
86
67
|
if (!state.givenTypeById.has(scopeItem.id)) {
|
|
87
|
-
|
|
68
|
+
// eslint-disable-next-line no-await-in-loop
|
|
69
|
+
state.deltaTypeById.set(scopeItem.id, yield (0, inspectType_1.getOrCreateScopeItemType)(state, scopeItem));
|
|
88
70
|
}
|
|
89
71
|
}
|
|
90
|
-
|
|
91
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
92
|
-
finally {
|
|
93
|
-
try {
|
|
94
|
-
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
|
|
95
|
-
}
|
|
96
|
-
finally { if (e_1) throw e_1.error; }
|
|
97
|
-
}
|
|
98
|
-
try {
|
|
99
|
-
for (var _f = __values(state.deltaTypeById.entries()), _g = _f.next(); !_g.done; _g = _f.next()) {
|
|
100
|
-
var _h = __read(_g.value, 2), key = _h[0], value = _h[1];
|
|
72
|
+
for (const [key, value] of state.deltaTypeById.entries()) {
|
|
101
73
|
state.givenTypeById.set(key, value);
|
|
102
74
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
try {
|
|
107
|
-
if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
|
|
108
|
-
}
|
|
109
|
-
finally { if (e_2) throw e_2.error; }
|
|
110
|
-
}
|
|
111
|
-
var result = new Map();
|
|
112
|
-
try {
|
|
113
|
-
for (var _j = __values(nodeScope.entries()), _k = _j.next(); !_k.done; _k = _j.next()) {
|
|
114
|
-
var _l = __read(_k.value, 2), key = _l[0], scopeItem = _l[1];
|
|
115
|
-
var type = powerquery_parser_1.Assert.asDefined(state.givenTypeById.get(scopeItem.id), "expected nodeId to be in givenTypeById", { nodeId: scopeItem.id });
|
|
75
|
+
const result = new Map();
|
|
76
|
+
for (const [key, scopeItem] of nodeScope.entries()) {
|
|
77
|
+
const type = powerquery_parser_1.Assert.asDefined(state.givenTypeById.get(scopeItem.id), `expected nodeId to be in givenTypeById`, { nodeId: scopeItem.id });
|
|
116
78
|
result.set(key, type);
|
|
117
79
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
finally {
|
|
121
|
-
try {
|
|
122
|
-
if (_k && !_k.done && (_c = _j.return)) _c.call(_j);
|
|
123
|
-
}
|
|
124
|
-
finally { if (e_3) throw e_3.error; }
|
|
125
|
-
}
|
|
126
|
-
return result;
|
|
80
|
+
return result;
|
|
81
|
+
});
|
|
127
82
|
}
|
|
128
83
|
//# sourceMappingURL=task.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/type/task.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/type/task.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import * as PQP from "@microsoft/powerquery-parser";
|
|
2
2
|
import { ExternalType } from "./inspection/externalType";
|
|
3
|
+
import { TypeById } from "./inspection";
|
|
3
4
|
export interface InspectionSettings extends PQP.Settings {
|
|
5
|
+
readonly maybeEachScopeById: TypeById | undefined;
|
|
4
6
|
readonly maybeExternalTypeResolver: ExternalType.TExternalTypeResolverFn | undefined;
|
|
5
7
|
}
|
|
@@ -5,10 +5,11 @@ import { AutocompleteItemProviderContext, SignatureProviderContext } from "./pro
|
|
|
5
5
|
import { Inspection } from ".";
|
|
6
6
|
import { ExternalType } from "./inspection/externalType";
|
|
7
7
|
import { InspectionSettings } from "./inspectionSettings";
|
|
8
|
-
|
|
9
|
-
export declare function
|
|
8
|
+
import { TypeById } from "./inspection";
|
|
9
|
+
export declare function createInspectionSettings(settings: PQP.Settings, maybeEachScopeById: TypeById | undefined, maybeExternalTypeResolver: ExternalType.TExternalTypeResolverFn | undefined): InspectionSettings;
|
|
10
|
+
export declare function getMaybeContextForSignatureProvider(inspected: Inspection.Inspected): Promise<SignatureProviderContext | undefined>;
|
|
10
11
|
export declare function getMaybeSignatureHelp(context: SignatureProviderContext): SignatureHelp | null;
|
|
11
|
-
export declare function getMaybeType(
|
|
12
|
+
export declare function getMaybeType(inspected: Inspection.Inspected, identifier: string): Promise<Type.TPowerQueryType | undefined>;
|
|
12
13
|
export declare function getScopeItemKindText(scopeItemKind: Inspection.ScopeItemKind): string;
|
|
13
14
|
export declare function getSymbolKindFromLiteralExpression(node: Ast.LiteralExpression): SymbolKind;
|
|
14
15
|
export declare function getSymbolKindFromNode(node: Ast.TNode): SymbolKind;
|
|
@@ -16,4 +17,4 @@ export declare function getSymbolsForLetExpression(expressionNode: Ast.LetExpres
|
|
|
16
17
|
export declare function getSymbolsForRecord(recordNode: Ast.RecordExpression | Ast.RecordLiteral): ReadonlyArray<DocumentSymbol>;
|
|
17
18
|
export declare function getSymbolsForSection(sectionNode: Ast.Section): ReadonlyArray<DocumentSymbol>;
|
|
18
19
|
export declare function getSymbolForIdentifierPairedExpression(identifierPairedExpressionNode: Ast.IdentifierPairedExpression): DocumentSymbol;
|
|
19
|
-
export declare function getAutocompleteItemsFromScope(context: AutocompleteItemProviderContext, inspection: Inspection.
|
|
20
|
+
export declare function getAutocompleteItemsFromScope(context: AutocompleteItemProviderContext, inspection: Inspection.Inspected): Promise<ReadonlyArray<Inspection.AutocompleteItem>>;
|