@microsoft/powerquery-language-services 0.6.12 → 0.9.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/powerquery-language-services/analysis/analysis.d.ts +12 -11
- package/lib/powerquery-language-services/analysis/analysisBase.d.ts +31 -25
- package/lib/powerquery-language-services/analysis/analysisBase.js +239 -195
- package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
- package/lib/powerquery-language-services/analysis/analysisUtils.d.ts +1 -1
- package/lib/powerquery-language-services/analysis/analysisUtils.js +3 -3
- package/lib/powerquery-language-services/analysis/analysisUtils.js.map +1 -1
- package/lib/powerquery-language-services/analysis/memoizedAnalysis.d.ts +6 -6
- package/lib/powerquery-language-services/analysis/memoizedAnalysis.js.map +1 -1
- package/lib/powerquery-language-services/documentSymbols.js +8 -7
- package/lib/powerquery-language-services/documentSymbols.js.map +1 -1
- package/lib/powerquery-language-services/externalType/externalType.d.ts +1 -1
- package/lib/powerquery-language-services/externalType/externalType.js.map +1 -1
- package/lib/powerquery-language-services/externalType/externalTypeUtils.d.ts +2 -2
- package/lib/powerquery-language-services/externalType/externalTypeUtils.js +8 -7
- package/lib/powerquery-language-services/externalType/externalTypeUtils.js.map +1 -1
- package/lib/powerquery-language-services/index.d.ts +2 -1
- package/lib/powerquery-language-services/index.js +4 -3
- package/lib/powerquery-language-services/index.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +7 -8
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.js +3 -4
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +227 -193
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.d.ts +4 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +121 -98
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.d.ts +3 -6
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +13 -46
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.d.ts +2 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +42 -43
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +24 -23
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js +7 -7
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +8 -8
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js +8 -9
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js +6 -5
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/commonTypes.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.d.ts +4 -3
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +126 -82
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.d.ts +5 -3
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +305 -53
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/commonTypes.d.ts +6 -7
- package/lib/powerquery-language-services/inspection/autocomplete/task.js +8 -11
- package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/trailingToken.d.ts +7 -0
- package/lib/powerquery-language-services/inspection/autocomplete/trailingToken.js +5 -0
- package/lib/powerquery-language-services/inspection/autocomplete/trailingToken.js.map +1 -0
- package/lib/powerquery-language-services/inspection/autocomplete/{common.d.ts → trailingTokenUtils.d.ts} +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/trailingTokenUtils.js +19 -0
- package/lib/powerquery-language-services/inspection/autocomplete/trailingTokenUtils.js.map +1 -0
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js +23 -20
- package/lib/powerquery-language-services/inspection/deferenceIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/expectedType.js +62 -61
- package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +20 -15
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +12 -10
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +7 -7
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scope.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/scope/scope.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +38 -36
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +20 -18
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/task.js +24 -21
- package/lib/powerquery-language-services/inspection/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +85 -84
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +4 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js +38 -38
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +6 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +10 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +6 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +25 -24
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +15 -13
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +14 -12
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +8 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +10 -8
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +10 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +5 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +6 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +10 -8
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +8 -6
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +9 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +11 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +89 -88
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +12 -10
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +14 -13
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/task.js +9 -7
- package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/typeCache/typeCacheUtils.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/typeCache/typeCacheUtils.js +3 -3
- package/lib/powerquery-language-services/inspection/typeCache/typeCacheUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspectionSettings.d.ts +1 -1
- package/lib/powerquery-language-services/inspectionSettings.js.map +1 -1
- package/lib/powerquery-language-services/inspectionUtils.d.ts +3 -3
- package/lib/powerquery-language-services/inspectionUtils.js +51 -52
- package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
- package/lib/powerquery-language-services/library/library.d.ts +1 -1
- package/lib/powerquery-language-services/library/library.js.map +1 -1
- package/lib/powerquery-language-services/library/librarySymbolUtils.d.ts +10 -2
- package/lib/powerquery-language-services/library/librarySymbolUtils.js +27 -21
- package/lib/powerquery-language-services/library/librarySymbolUtils.js.map +1 -1
- package/lib/powerquery-language-services/library/libraryUtils.d.ts +5 -5
- package/lib/powerquery-language-services/library/libraryUtils.js +24 -23
- package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
- package/lib/powerquery-language-services/localization/templates.js +42 -42
- package/lib/powerquery-language-services/localization/templates.js.map +1 -1
- package/lib/powerquery-language-services/positionUtils.d.ts +9 -4
- package/lib/powerquery-language-services/positionUtils.js +55 -23
- package/lib/powerquery-language-services/positionUtils.js.map +1 -1
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +15 -15
- package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/libraryProvider.js +9 -8
- package/lib/powerquery-language-services/providers/libraryProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js +16 -14
- package/lib/powerquery-language-services/providers/localDocumentProvider/foldingRanges.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js +24 -23
- package/lib/powerquery-language-services/providers/localDocumentProvider/localDocumentProvider.js.map +1 -1
- package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js +73 -71
- package/lib/powerquery-language-services/providers/localDocumentProvider/partialSemanticToken.js.map +1 -1
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js +6 -6
- package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
- package/lib/powerquery-language-services/tokenPositionComparison.d.ts +5 -0
- package/lib/powerquery-language-services/tokenPositionComparison.js +13 -0
- package/lib/powerquery-language-services/tokenPositionComparison.js.map +1 -0
- package/lib/powerquery-language-services/trace.d.ts +4 -4
- package/lib/powerquery-language-services/trace.js.map +1 -1
- package/lib/powerquery-language-services/traceUtils.d.ts +2 -2
- package/lib/powerquery-language-services/traceUtils.js +5 -5
- package/lib/powerquery-language-services/traceUtils.js.map +1 -1
- package/lib/powerquery-language-services/validate/validate.js +6 -5
- package/lib/powerquery-language-services/validate/validate.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +16 -14
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js +6 -4
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js +7 -5
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js +10 -7
- package/lib/powerquery-language-services/validate/validateUnknownIdentifiers.js.map +1 -1
- package/package.json +10 -8
- package/lib/powerquery-language-services/inspection/autocomplete/common.js +0 -11
- package/lib/powerquery-language-services/inspection/autocomplete/common.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typeCacheUtils.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/typeCache/typeCacheUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAIlC,4EAA4E;AAC5E,SAAgB,
|
|
1
|
+
{"version":3,"file":"typeCacheUtils.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/typeCache/typeCacheUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAIlC,4EAA4E;AAC5E,SAAgB,UAAU;IACtB,OAAO;QACH,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,QAAQ,EAAE,IAAI,GAAG,EAAE;KACtB,CAAC;AACN,CAAC;AALD,gCAKC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as PQP from "@microsoft/powerquery-parser";
|
|
2
2
|
import { Library } from "./library";
|
|
3
3
|
import { TypeById } from "./inspection";
|
|
4
|
-
export declare
|
|
4
|
+
export declare enum TypeStrategy {
|
|
5
5
|
Extended = "Extended",
|
|
6
6
|
Primitive = "Primitive"
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectionSettings.js","sourceRoot":"","sources":["../../src/powerquery-language-services/inspectionSettings.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAOlC,
|
|
1
|
+
{"version":3,"file":"inspectionSettings.js","sourceRoot":"","sources":["../../src/powerquery-language-services/inspectionSettings.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAOlC,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,yDAAyD;IACzD,qCAAqB,CAAA;IACrB,wCAAwC;IACxC,uCAAuB,CAAA;AAC3B,CAAC,EALW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAKvB"}
|
|
@@ -4,8 +4,9 @@ import { DocumentSymbol, SymbolKind } from "vscode-languageserver-types";
|
|
|
4
4
|
import { Inspection } from ".";
|
|
5
5
|
import { InspectionSettings } from "./inspectionSettings";
|
|
6
6
|
import { AutocompleteItemProviderContext } from "./providers/commonTypes";
|
|
7
|
-
export declare function
|
|
8
|
-
export declare function
|
|
7
|
+
export declare function inspectionSettings(settings: PQP.Settings, overrides?: Partial<InspectionSettings>): InspectionSettings;
|
|
8
|
+
export declare function getAutocompleteItemsFromScope(context: AutocompleteItemProviderContext): ReadonlyArray<Inspection.AutocompleteItem>;
|
|
9
|
+
export declare function getIdentifierType(inspected: Inspection.Inspected, identifier: string): Promise<Type.TPowerQueryType | undefined>;
|
|
9
10
|
export declare function getScopeItemKindText(scopeItemKind: Inspection.ScopeItemKind): string;
|
|
10
11
|
export declare function getSymbolKindFromLiteralExpression(node: Ast.LiteralExpression): SymbolKind;
|
|
11
12
|
export declare function getSymbolKindFromNode(node: Ast.TNode): SymbolKind;
|
|
@@ -13,4 +14,3 @@ export declare function getSymbolsForLetExpression(expressionNode: Ast.LetExpres
|
|
|
13
14
|
export declare function getSymbolsForRecord(recordNode: Ast.RecordExpression | Ast.RecordLiteral): ReadonlyArray<DocumentSymbol>;
|
|
14
15
|
export declare function getSymbolsForSection(sectionNode: Ast.Section): ReadonlyArray<DocumentSymbol>;
|
|
15
16
|
export declare function getSymbolForIdentifierPairedExpression(identifierPairedExpressionNode: Ast.IdentifierPairedExpression): DocumentSymbol;
|
|
16
|
-
export declare function getAutocompleteItemsFromScope(context: AutocompleteItemProviderContext): ReadonlyArray<Inspection.AutocompleteItem>;
|
|
@@ -11,38 +11,59 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
});
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.
|
|
14
|
+
exports.getSymbolForIdentifierPairedExpression = exports.getSymbolsForSection = exports.getSymbolsForRecord = exports.getSymbolsForLetExpression = exports.getSymbolKindFromNode = exports.getSymbolKindFromLiteralExpression = exports.getScopeItemKindText = exports.getIdentifierType = exports.getAutocompleteItemsFromScope = exports.inspectionSettings = void 0;
|
|
15
15
|
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
16
16
|
const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
|
|
17
17
|
const vscode_languageserver_types_1 = require("vscode-languageserver-types");
|
|
18
18
|
const _1 = require(".");
|
|
19
|
+
const inspectionSettings_1 = require("./inspectionSettings");
|
|
19
20
|
const autocomplete_1 = require("./inspection/autocomplete");
|
|
20
21
|
const library_1 = require("./library");
|
|
21
|
-
function
|
|
22
|
+
function inspectionSettings(settings, overrides) {
|
|
22
23
|
var _a, _b, _c, _d;
|
|
23
|
-
return Object.assign(Object.assign({}, settings), { isWorkspaceCacheAllowed: (_a = overrides === null || overrides === void 0 ? void 0 : overrides.isWorkspaceCacheAllowed) !== null && _a !== void 0 ? _a : true, library: (_b = overrides === null || overrides === void 0 ? void 0 : overrides.library) !== null && _b !== void 0 ? _b : library_1.Library.NoOpLibrary, typeStrategy: (_c = overrides === null || overrides === void 0 ? void 0 : overrides.typeStrategy) !== null && _c !== void 0 ? _c :
|
|
24
|
+
return Object.assign(Object.assign({}, settings), { isWorkspaceCacheAllowed: (_a = overrides === null || overrides === void 0 ? void 0 : overrides.isWorkspaceCacheAllowed) !== null && _a !== void 0 ? _a : true, library: (_b = overrides === null || overrides === void 0 ? void 0 : overrides.library) !== null && _b !== void 0 ? _b : library_1.Library.NoOpLibrary, typeStrategy: (_c = overrides === null || overrides === void 0 ? void 0 : overrides.typeStrategy) !== null && _c !== void 0 ? _c : inspectionSettings_1.TypeStrategy.Extended, eachScopeById: (_d = overrides === null || overrides === void 0 ? void 0 : overrides.eachScopeById) !== null && _d !== void 0 ? _d : undefined });
|
|
24
25
|
}
|
|
25
|
-
exports.
|
|
26
|
-
function
|
|
26
|
+
exports.inspectionSettings = inspectionSettings;
|
|
27
|
+
function getAutocompleteItemsFromScope(context) {
|
|
28
|
+
var _a;
|
|
29
|
+
const triedNodeScope = context.triedNodeScope;
|
|
30
|
+
const triedScopeType = context.triedScopeType;
|
|
31
|
+
if (powerquery_parser_1.ResultUtils.isError(triedNodeScope)) {
|
|
32
|
+
return [];
|
|
33
|
+
}
|
|
34
|
+
const nodeScope = triedNodeScope.value;
|
|
35
|
+
const scopeTypeByKey = powerquery_parser_1.ResultUtils.okOrDefault(triedScopeType, new Map());
|
|
36
|
+
const contextText = context.text;
|
|
37
|
+
const partial = [];
|
|
38
|
+
for (const [label, scopeItem] of nodeScope.entries()) {
|
|
39
|
+
const autocompleteItem = autocomplete_1.AutocompleteItemUtils.fromScopeItem(label, scopeItem, (_a = scopeTypeByKey.get(label)) !== null && _a !== void 0 ? _a : language_1.Type.UnknownInstance, contextText);
|
|
40
|
+
if (autocompleteItem) {
|
|
41
|
+
partial.push(autocompleteItem);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return partial;
|
|
45
|
+
}
|
|
46
|
+
exports.getAutocompleteItemsFromScope = getAutocompleteItemsFromScope;
|
|
47
|
+
function getIdentifierType(inspected, identifier) {
|
|
27
48
|
return __awaiter(this, void 0, void 0, function* () {
|
|
28
49
|
const triedScopeType = yield inspected.triedScopeType;
|
|
29
50
|
return powerquery_parser_1.ResultUtils.isOk(triedScopeType) ? triedScopeType.value.get(identifier) : undefined;
|
|
30
51
|
});
|
|
31
52
|
}
|
|
32
|
-
exports.
|
|
53
|
+
exports.getIdentifierType = getIdentifierType;
|
|
33
54
|
function getScopeItemKindText(scopeItemKind) {
|
|
34
55
|
switch (scopeItemKind) {
|
|
35
|
-
case
|
|
56
|
+
case _1.Inspection.ScopeItemKind.Each:
|
|
36
57
|
return "each";
|
|
37
|
-
case
|
|
58
|
+
case _1.Inspection.ScopeItemKind.LetVariable:
|
|
38
59
|
return "let-variable";
|
|
39
|
-
case
|
|
60
|
+
case _1.Inspection.ScopeItemKind.Parameter:
|
|
40
61
|
return "parameter";
|
|
41
|
-
case
|
|
62
|
+
case _1.Inspection.ScopeItemKind.RecordField:
|
|
42
63
|
return "record-field";
|
|
43
|
-
case
|
|
64
|
+
case _1.Inspection.ScopeItemKind.SectionMember:
|
|
44
65
|
return "section-member";
|
|
45
|
-
case
|
|
66
|
+
case _1.Inspection.ScopeItemKind.Undefined:
|
|
46
67
|
return "unknown";
|
|
47
68
|
default:
|
|
48
69
|
throw powerquery_parser_1.Assert.isNever(scopeItemKind);
|
|
@@ -51,15 +72,15 @@ function getScopeItemKindText(scopeItemKind) {
|
|
|
51
72
|
exports.getScopeItemKindText = getScopeItemKindText;
|
|
52
73
|
function getSymbolKindFromLiteralExpression(node) {
|
|
53
74
|
switch (node.literalKind) {
|
|
54
|
-
case
|
|
75
|
+
case language_1.Ast.LiteralKind.List:
|
|
55
76
|
return vscode_languageserver_types_1.SymbolKind.Array;
|
|
56
|
-
case
|
|
77
|
+
case language_1.Ast.LiteralKind.Logical:
|
|
57
78
|
return vscode_languageserver_types_1.SymbolKind.Boolean;
|
|
58
|
-
case
|
|
79
|
+
case language_1.Ast.LiteralKind.Null:
|
|
59
80
|
return vscode_languageserver_types_1.SymbolKind.Null;
|
|
60
|
-
case
|
|
81
|
+
case language_1.Ast.LiteralKind.Numeric:
|
|
61
82
|
return vscode_languageserver_types_1.SymbolKind.Number;
|
|
62
|
-
case
|
|
83
|
+
case language_1.Ast.LiteralKind.Text:
|
|
63
84
|
return vscode_languageserver_types_1.SymbolKind.String;
|
|
64
85
|
default:
|
|
65
86
|
return powerquery_parser_1.Assert.isNever(node.literalKind);
|
|
@@ -68,21 +89,21 @@ function getSymbolKindFromLiteralExpression(node) {
|
|
|
68
89
|
exports.getSymbolKindFromLiteralExpression = getSymbolKindFromLiteralExpression;
|
|
69
90
|
function getSymbolKindFromNode(node) {
|
|
70
91
|
switch (node.kind) {
|
|
71
|
-
case
|
|
92
|
+
case language_1.Ast.NodeKind.Constant:
|
|
72
93
|
return vscode_languageserver_types_1.SymbolKind.Constant;
|
|
73
|
-
case
|
|
94
|
+
case language_1.Ast.NodeKind.FunctionExpression:
|
|
74
95
|
return vscode_languageserver_types_1.SymbolKind.Function;
|
|
75
|
-
case
|
|
76
|
-
case
|
|
96
|
+
case language_1.Ast.NodeKind.ListExpression:
|
|
97
|
+
case language_1.Ast.NodeKind.ListLiteral:
|
|
77
98
|
return vscode_languageserver_types_1.SymbolKind.Array;
|
|
78
|
-
case
|
|
99
|
+
case language_1.Ast.NodeKind.LiteralExpression:
|
|
79
100
|
return getSymbolKindFromLiteralExpression(node);
|
|
80
|
-
case
|
|
101
|
+
case language_1.Ast.NodeKind.MetadataExpression:
|
|
81
102
|
return vscode_languageserver_types_1.SymbolKind.TypeParameter;
|
|
82
|
-
case
|
|
83
|
-
case
|
|
103
|
+
case language_1.Ast.NodeKind.RecordExpression:
|
|
104
|
+
case language_1.Ast.NodeKind.RecordLiteral:
|
|
84
105
|
return vscode_languageserver_types_1.SymbolKind.Struct;
|
|
85
|
-
case
|
|
106
|
+
case language_1.Ast.NodeKind.Section:
|
|
86
107
|
return vscode_languageserver_types_1.SymbolKind.Module;
|
|
87
108
|
default:
|
|
88
109
|
return vscode_languageserver_types_1.SymbolKind.Variable;
|
|
@@ -106,8 +127,8 @@ function getSymbolsForRecord(recordNode) {
|
|
|
106
127
|
kind: vscode_languageserver_types_1.SymbolKind.Field,
|
|
107
128
|
deprecated: false,
|
|
108
129
|
name: element.node.key.literal,
|
|
109
|
-
range: _1.PositionUtils.
|
|
110
|
-
selectionRange: _1.PositionUtils.
|
|
130
|
+
range: _1.PositionUtils.rangeFromTokenRange(element.node.tokenRange),
|
|
131
|
+
selectionRange: _1.PositionUtils.rangeFromTokenRange(element.node.key.tokenRange),
|
|
111
132
|
});
|
|
112
133
|
}
|
|
113
134
|
return documentSymbols;
|
|
@@ -122,31 +143,9 @@ function getSymbolForIdentifierPairedExpression(identifierPairedExpressionNode)
|
|
|
122
143
|
kind: getSymbolKindFromNode(identifierPairedExpressionNode.value),
|
|
123
144
|
deprecated: false,
|
|
124
145
|
name: identifierPairedExpressionNode.key.literal,
|
|
125
|
-
range: _1.PositionUtils.
|
|
126
|
-
selectionRange: _1.PositionUtils.
|
|
146
|
+
range: _1.PositionUtils.rangeFromTokenRange(identifierPairedExpressionNode.tokenRange),
|
|
147
|
+
selectionRange: _1.PositionUtils.rangeFromTokenRange(identifierPairedExpressionNode.key.tokenRange),
|
|
127
148
|
};
|
|
128
149
|
}
|
|
129
150
|
exports.getSymbolForIdentifierPairedExpression = getSymbolForIdentifierPairedExpression;
|
|
130
|
-
function getAutocompleteItemsFromScope(context) {
|
|
131
|
-
var _a;
|
|
132
|
-
const triedNodeScope = context.triedNodeScope;
|
|
133
|
-
const triedScopeType = context.triedScopeType;
|
|
134
|
-
if (powerquery_parser_1.ResultUtils.isError(triedNodeScope)) {
|
|
135
|
-
return [];
|
|
136
|
-
}
|
|
137
|
-
const nodeScope = triedNodeScope.value;
|
|
138
|
-
const scopeTypeByKey = powerquery_parser_1.ResultUtils.isOk(triedScopeType)
|
|
139
|
-
? triedScopeType.value
|
|
140
|
-
: new Map();
|
|
141
|
-
const contextText = context.text;
|
|
142
|
-
const partial = [];
|
|
143
|
-
for (const [label, scopeItem] of nodeScope.entries()) {
|
|
144
|
-
const autocompleteItem = autocomplete_1.AutocompleteItemUtils.fromScopeItem(label, scopeItem, (_a = scopeTypeByKey.get(label)) !== null && _a !== void 0 ? _a : language_1.Type.UnknownInstance, contextText);
|
|
145
|
-
if (autocompleteItem) {
|
|
146
|
-
partial.push(autocompleteItem);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
return partial;
|
|
150
|
-
}
|
|
151
|
-
exports.getAutocompleteItemsFromScope = getAutocompleteItemsFromScope;
|
|
152
151
|
//# sourceMappingURL=inspectionUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectionUtils.js","sourceRoot":"","sources":["../../src/powerquery-language-services/inspectionUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,oEAAmE;AACnE,0FAAwF;AACxF,6EAAyE;AAEzE,wBAA8C;
|
|
1
|
+
{"version":3,"file":"inspectionUtils.js","sourceRoot":"","sources":["../../src/powerquery-language-services/inspectionUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { Type } from "@microsoft/powerquery-parser/lib/powerquery-parser/languag
|
|
|
3
3
|
import { ExternalType } from "../externalType";
|
|
4
4
|
export declare type LibraryDefinitions = ReadonlyMap<string, TLibraryDefinition>;
|
|
5
5
|
export declare type TLibraryDefinition = LibraryConstant | LibraryFunction | LibraryType;
|
|
6
|
-
export declare
|
|
6
|
+
export declare enum LibraryDefinitionKind {
|
|
7
7
|
Constant = "Constant",
|
|
8
8
|
Function = "Function",
|
|
9
9
|
Type = "Type"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"library.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/library.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAKlC,kDAA+C;AAM/C,
|
|
1
|
+
{"version":3,"file":"library.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/library.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAKlC,kDAA+C;AAM/C,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC7B,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;IACrB,sCAAa,CAAA;AACjB,CAAC,EAJW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAIhC;AAoCY,QAAA,WAAW,GAAa;IACjC,oBAAoB,EAAE,2BAAY,CAAC,wBAAwB;IAC3D,kBAAkB,EAAE,IAAI,GAAG,EAAE;CAChC,CAAC"}
|
|
@@ -2,6 +2,14 @@ import { PartialResult } from "@microsoft/powerquery-parser";
|
|
|
2
2
|
import { ExternalType } from "../externalType";
|
|
3
3
|
import { Library } from "../library";
|
|
4
4
|
import { LibrarySymbol } from "./librarySymbol";
|
|
5
|
-
export declare
|
|
6
|
-
|
|
5
|
+
export declare type IncompleteLibrary = {
|
|
6
|
+
readonly library: Library.ILibrary;
|
|
7
|
+
readonly invalidSymbols: ReadonlyArray<LibrarySymbol>;
|
|
8
|
+
};
|
|
9
|
+
export declare type IncompleteLibraryDefinitions = {
|
|
10
|
+
readonly libraryDefinitions: Library.LibraryDefinitions;
|
|
11
|
+
readonly invalidSymbols: ReadonlyArray<LibrarySymbol>;
|
|
12
|
+
};
|
|
13
|
+
export declare function createLibrary(librarySymbols: ReadonlyArray<LibrarySymbol>, externalTypeResolverFn: ExternalType.TExternalTypeResolverFn | undefined): PartialResult<Library.ILibrary, IncompleteLibrary, ReadonlyArray<LibrarySymbol>>;
|
|
14
|
+
export declare function createLibraryDefinitions(librarySymbols: ReadonlyArray<LibrarySymbol>): PartialResult<Library.LibraryDefinitions, IncompleteLibraryDefinitions, ReadonlyArray<LibrarySymbol>>;
|
|
7
15
|
export declare function librarySymbolToLibraryDefinition(librarySymbol: LibrarySymbol): Library.TLibraryDefinition | undefined;
|
|
@@ -15,17 +15,17 @@ function createLibrary(librarySymbols, externalTypeResolverFn) {
|
|
|
15
15
|
libraryDefinitions = libraryDefinitionsResult.value;
|
|
16
16
|
invalidSymbols = [];
|
|
17
17
|
}
|
|
18
|
-
else if (powerquery_parser_1.PartialResultUtils.
|
|
19
|
-
libraryDefinitions = libraryDefinitionsResult.
|
|
20
|
-
invalidSymbols = libraryDefinitionsResult.
|
|
18
|
+
else if (powerquery_parser_1.PartialResultUtils.isIncomplete(libraryDefinitionsResult)) {
|
|
19
|
+
libraryDefinitions = libraryDefinitionsResult.partial.libraryDefinitions;
|
|
20
|
+
invalidSymbols = libraryDefinitionsResult.partial.invalidSymbols;
|
|
21
21
|
}
|
|
22
22
|
else if (powerquery_parser_1.PartialResultUtils.isError(libraryDefinitionsResult)) {
|
|
23
|
-
return powerquery_parser_1.PartialResultUtils.
|
|
23
|
+
return powerquery_parser_1.PartialResultUtils.error(libraryDefinitionsResult.error);
|
|
24
24
|
}
|
|
25
25
|
else {
|
|
26
26
|
powerquery_parser_1.Assert.isNever(libraryDefinitionsResult);
|
|
27
27
|
}
|
|
28
|
-
const definitionResolverFn = library_1.LibraryUtils.
|
|
28
|
+
const definitionResolverFn = library_1.LibraryUtils.externalTypeResolver(libraryDefinitions);
|
|
29
29
|
const library = {
|
|
30
30
|
libraryDefinitions,
|
|
31
31
|
externalTypeResolver: externalTypeResolverFn
|
|
@@ -33,10 +33,13 @@ function createLibrary(librarySymbols, externalTypeResolverFn) {
|
|
|
33
33
|
: definitionResolverFn,
|
|
34
34
|
};
|
|
35
35
|
if (invalidSymbols.length > 0) {
|
|
36
|
-
return powerquery_parser_1.PartialResultUtils.
|
|
36
|
+
return powerquery_parser_1.PartialResultUtils.incomplete({
|
|
37
|
+
library,
|
|
38
|
+
invalidSymbols,
|
|
39
|
+
});
|
|
37
40
|
}
|
|
38
41
|
else {
|
|
39
|
-
return powerquery_parser_1.PartialResultUtils.
|
|
42
|
+
return powerquery_parser_1.PartialResultUtils.ok(library);
|
|
40
43
|
}
|
|
41
44
|
}
|
|
42
45
|
exports.createLibrary = createLibrary;
|
|
@@ -53,13 +56,16 @@ function createLibraryDefinitions(librarySymbols) {
|
|
|
53
56
|
}
|
|
54
57
|
}
|
|
55
58
|
if (invalidSymbols.length === 0) {
|
|
56
|
-
return powerquery_parser_1.PartialResultUtils.
|
|
59
|
+
return powerquery_parser_1.PartialResultUtils.ok(libraryDefinitions);
|
|
57
60
|
}
|
|
58
61
|
else if (libraryDefinitions.size > 0) {
|
|
59
|
-
return powerquery_parser_1.PartialResultUtils.
|
|
62
|
+
return powerquery_parser_1.PartialResultUtils.incomplete({
|
|
63
|
+
libraryDefinitions,
|
|
64
|
+
invalidSymbols,
|
|
65
|
+
});
|
|
60
66
|
}
|
|
61
67
|
else {
|
|
62
|
-
return powerquery_parser_1.PartialResultUtils.
|
|
68
|
+
return powerquery_parser_1.PartialResultUtils.error(invalidSymbols);
|
|
63
69
|
}
|
|
64
70
|
}
|
|
65
71
|
exports.createLibraryDefinitions = createLibraryDefinitions;
|
|
@@ -72,9 +78,9 @@ function librarySymbolToLibraryDefinition(librarySymbol) {
|
|
|
72
78
|
}
|
|
73
79
|
const label = librarySymbol.name;
|
|
74
80
|
const description = (_b = (_a = librarySymbol.documentation) === null || _a === void 0 ? void 0 : _a.description) !== null && _b !== void 0 ? _b : "No description available";
|
|
75
|
-
if (primitiveType.kind ===
|
|
81
|
+
if (primitiveType.kind === language_1.Type.TypeKind.Type) {
|
|
76
82
|
return {
|
|
77
|
-
kind:
|
|
83
|
+
kind: library_1.Library.LibraryDefinitionKind.Type,
|
|
78
84
|
label,
|
|
79
85
|
description,
|
|
80
86
|
asPowerQueryType: primitiveType,
|
|
@@ -95,7 +101,7 @@ function librarySymbolToLibraryDefinition(librarySymbol) {
|
|
|
95
101
|
parameters.push(libraryParameter);
|
|
96
102
|
}
|
|
97
103
|
return {
|
|
98
|
-
kind:
|
|
104
|
+
kind: library_1.Library.LibraryDefinitionKind.Function,
|
|
99
105
|
label: language_1.TypeUtils.nameOf(asPowerQueryType, trace_1.NoOpTraceManagerInstance, undefined),
|
|
100
106
|
description,
|
|
101
107
|
asPowerQueryType,
|
|
@@ -105,7 +111,7 @@ function librarySymbolToLibraryDefinition(librarySymbol) {
|
|
|
105
111
|
}
|
|
106
112
|
else {
|
|
107
113
|
return {
|
|
108
|
-
kind:
|
|
114
|
+
kind: library_1.Library.LibraryDefinitionKind.Constant,
|
|
109
115
|
label,
|
|
110
116
|
description,
|
|
111
117
|
asPowerQueryType: primitiveType,
|
|
@@ -129,7 +135,7 @@ function librarySymbolFunctionSignatureToType(librarySymbol, returnType) {
|
|
|
129
135
|
nameLiteral: parameter.name,
|
|
130
136
|
});
|
|
131
137
|
}
|
|
132
|
-
return language_1.TypeUtils.
|
|
138
|
+
return language_1.TypeUtils.definedFunction(false, parameters, returnType);
|
|
133
139
|
}
|
|
134
140
|
function librarySymbolFunctionParameterToLibraryParameter(parameter) {
|
|
135
141
|
var _a;
|
|
@@ -195,14 +201,14 @@ function stringToPrimitiveType(text) {
|
|
|
195
201
|
// Either `nullable $typeKind` or `list {$typeKind}`
|
|
196
202
|
case 2: {
|
|
197
203
|
const first = split[0];
|
|
198
|
-
if (first ===
|
|
204
|
+
if (first === language_1.Constant.LanguageConstant.Nullable) {
|
|
199
205
|
isNullable = true;
|
|
200
206
|
typeKind = stringToTypeKind(split[1]);
|
|
201
207
|
break;
|
|
202
208
|
}
|
|
203
|
-
else if (first ===
|
|
209
|
+
else if (first === language_1.Constant.PrimitiveTypeConstant.List) {
|
|
204
210
|
isNullable = false;
|
|
205
|
-
typeKind =
|
|
211
|
+
typeKind = language_1.Type.TypeKind.List;
|
|
206
212
|
break;
|
|
207
213
|
}
|
|
208
214
|
else {
|
|
@@ -211,17 +217,17 @@ function stringToPrimitiveType(text) {
|
|
|
211
217
|
}
|
|
212
218
|
// `nullable list {$typeKind}`
|
|
213
219
|
case 3: {
|
|
214
|
-
if (split[0] !==
|
|
220
|
+
if (split[0] !== language_1.Constant.LanguageConstant.Nullable || split[1] !== language_1.Constant.PrimitiveTypeConstant.List) {
|
|
215
221
|
return undefined;
|
|
216
222
|
}
|
|
217
223
|
isNullable = true;
|
|
218
|
-
typeKind =
|
|
224
|
+
typeKind = language_1.Type.TypeKind.List;
|
|
219
225
|
break;
|
|
220
226
|
}
|
|
221
227
|
default:
|
|
222
228
|
return undefined;
|
|
223
229
|
}
|
|
224
|
-
return typeKind ? language_1.TypeUtils.
|
|
230
|
+
return typeKind ? language_1.TypeUtils.primitiveType(isNullable, typeKind) : undefined;
|
|
225
231
|
}
|
|
226
232
|
function stringToTypeKind(text) {
|
|
227
233
|
return language_1.ConstantUtils.isPrimitiveTypeConstant(text)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"librarySymbolUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/librarySymbolUtils.ts"],"names":[],"mappings":";;;AAAA,oEAAyF;AACzF,0FAAuH;AACvH,2FAA2G;AAE3G,kDAAkE;AAClE,wCAAmD;AAEnD,gDAAoD;
|
|
1
|
+
{"version":3,"file":"librarySymbolUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/librarySymbolUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,12 @@ export declare function assertAsType(definition: TLibraryDefinition | undefined)
|
|
|
8
8
|
export declare function assertIsConstant(definition: TLibraryDefinition | undefined): asserts definition is LibraryConstant;
|
|
9
9
|
export declare function assertIsFunction(definition: TLibraryDefinition | undefined): asserts definition is LibraryFunction;
|
|
10
10
|
export declare function assertIsType(definition: TLibraryDefinition | undefined): asserts definition is LibraryType;
|
|
11
|
-
export declare function
|
|
12
|
-
export declare function
|
|
13
|
-
export declare function
|
|
11
|
+
export declare function constantDefinition(label: string, description: string, asType: Type.TPowerQueryType, completionItemKind: CompletionItemKind): LibraryConstant;
|
|
12
|
+
export declare function externalTypeResolver(libraryDefinitions: LibraryDefinitions): ExternalType.TExternalTypeResolverFn;
|
|
13
|
+
export declare function functionDefinition(label: string, description: string, asType: Type.TPowerQueryType, completionItemKind: CompletionItemKind, parameters: ReadonlyArray<LibraryParameter>): LibraryFunction;
|
|
14
14
|
export declare function isConstant(definition: TLibraryDefinition | undefined): definition is LibraryConstant;
|
|
15
15
|
export declare function isFunction(definition: TLibraryDefinition | undefined): definition is LibraryFunction;
|
|
16
16
|
export declare function isType(definition: TLibraryDefinition | undefined): definition is LibraryType;
|
|
17
|
-
export declare function
|
|
18
|
-
export declare function
|
|
17
|
+
export declare function signatureInformation(libraryFunctionSignature: LibraryFunction): SignatureInformation;
|
|
18
|
+
export declare function parameterInformation(libraryParameter: LibraryParameter): ParameterInformation;
|
|
19
19
|
export declare function nameOf(kind: LibraryDefinitionKind): string;
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
// Copyright (c) Microsoft Corporation.
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.nameOf = exports.
|
|
5
|
+
exports.nameOf = exports.parameterInformation = exports.signatureInformation = exports.isType = exports.isFunction = exports.isConstant = exports.functionDefinition = exports.externalTypeResolver = exports.constantDefinition = exports.assertIsType = exports.assertIsFunction = exports.assertIsConstant = exports.assertAsType = exports.assertAsFunction = exports.assertAsConstant = void 0;
|
|
6
6
|
const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
7
|
+
const library_1 = require("./library");
|
|
7
8
|
function assertAsConstant(definition) {
|
|
8
9
|
assertIsConstant(definition);
|
|
9
10
|
return definition;
|
|
@@ -21,39 +22,39 @@ function assertAsType(definition) {
|
|
|
21
22
|
exports.assertAsType = assertAsType;
|
|
22
23
|
function assertIsConstant(definition) {
|
|
23
24
|
if (!isConstant(definition)) {
|
|
24
|
-
throw new Error(`expected definition to be ${
|
|
25
|
+
throw new Error(`expected definition to be ${library_1.LibraryDefinitionKind.Constant}`);
|
|
25
26
|
}
|
|
26
27
|
}
|
|
27
28
|
exports.assertIsConstant = assertIsConstant;
|
|
28
29
|
function assertIsFunction(definition) {
|
|
29
30
|
if (!isFunction(definition)) {
|
|
30
|
-
throw new Error(`expected definition to be ${
|
|
31
|
+
throw new Error(`expected definition to be ${library_1.LibraryDefinitionKind.Function}`);
|
|
31
32
|
}
|
|
32
33
|
}
|
|
33
34
|
exports.assertIsFunction = assertIsFunction;
|
|
34
35
|
function assertIsType(definition) {
|
|
35
36
|
if (!isType(definition)) {
|
|
36
|
-
throw new Error(`expected definition to be ${
|
|
37
|
+
throw new Error(`expected definition to be ${library_1.LibraryDefinitionKind.Type}`);
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
40
|
exports.assertIsType = assertIsType;
|
|
40
|
-
function
|
|
41
|
+
function constantDefinition(label, description, asType, completionItemKind) {
|
|
41
42
|
return {
|
|
42
|
-
kind:
|
|
43
|
+
kind: library_1.LibraryDefinitionKind.Constant,
|
|
43
44
|
asPowerQueryType: asType,
|
|
44
45
|
completionItemKind,
|
|
45
46
|
description,
|
|
46
47
|
label,
|
|
47
48
|
};
|
|
48
49
|
}
|
|
49
|
-
exports.
|
|
50
|
-
function
|
|
50
|
+
exports.constantDefinition = constantDefinition;
|
|
51
|
+
function externalTypeResolver(libraryDefinitions) {
|
|
51
52
|
return (request) => { var _a; return (_a = libraryDefinitions.get(request.identifierLiteral)) === null || _a === void 0 ? void 0 : _a.asPowerQueryType; };
|
|
52
53
|
}
|
|
53
|
-
exports.
|
|
54
|
-
function
|
|
54
|
+
exports.externalTypeResolver = externalTypeResolver;
|
|
55
|
+
function functionDefinition(label, description, asType, completionItemKind, parameters) {
|
|
55
56
|
return {
|
|
56
|
-
kind:
|
|
57
|
+
kind: library_1.LibraryDefinitionKind.Function,
|
|
57
58
|
asPowerQueryType: asType,
|
|
58
59
|
completionItemKind,
|
|
59
60
|
description,
|
|
@@ -61,41 +62,41 @@ function createFunctionDefinition(label, description, asType, completionItemKind
|
|
|
61
62
|
parameters,
|
|
62
63
|
};
|
|
63
64
|
}
|
|
64
|
-
exports.
|
|
65
|
+
exports.functionDefinition = functionDefinition;
|
|
65
66
|
function isConstant(definition) {
|
|
66
|
-
return (definition === null || definition === void 0 ? void 0 : definition.kind) ===
|
|
67
|
+
return (definition === null || definition === void 0 ? void 0 : definition.kind) === library_1.LibraryDefinitionKind.Constant;
|
|
67
68
|
}
|
|
68
69
|
exports.isConstant = isConstant;
|
|
69
70
|
function isFunction(definition) {
|
|
70
|
-
return (definition === null || definition === void 0 ? void 0 : definition.kind) ===
|
|
71
|
+
return (definition === null || definition === void 0 ? void 0 : definition.kind) === library_1.LibraryDefinitionKind.Function;
|
|
71
72
|
}
|
|
72
73
|
exports.isFunction = isFunction;
|
|
73
74
|
function isType(definition) {
|
|
74
|
-
return (definition === null || definition === void 0 ? void 0 : definition.kind) ===
|
|
75
|
+
return (definition === null || definition === void 0 ? void 0 : definition.kind) === library_1.LibraryDefinitionKind.Type;
|
|
75
76
|
}
|
|
76
77
|
exports.isType = isType;
|
|
77
|
-
function
|
|
78
|
+
function signatureInformation(libraryFunctionSignature) {
|
|
78
79
|
return {
|
|
79
80
|
label: libraryFunctionSignature.label,
|
|
80
81
|
documentation: libraryFunctionSignature.description,
|
|
81
|
-
parameters: libraryFunctionSignature.parameters.map(
|
|
82
|
+
parameters: libraryFunctionSignature.parameters.map(parameterInformation),
|
|
82
83
|
};
|
|
83
84
|
}
|
|
84
|
-
exports.
|
|
85
|
-
function
|
|
85
|
+
exports.signatureInformation = signatureInformation;
|
|
86
|
+
function parameterInformation(libraryParameter) {
|
|
86
87
|
return {
|
|
87
88
|
label: libraryParameter.label,
|
|
88
89
|
documentation: undefined,
|
|
89
90
|
};
|
|
90
91
|
}
|
|
91
|
-
exports.
|
|
92
|
+
exports.parameterInformation = parameterInformation;
|
|
92
93
|
function nameOf(kind) {
|
|
93
94
|
switch (kind) {
|
|
94
|
-
case
|
|
95
|
+
case library_1.LibraryDefinitionKind.Function:
|
|
95
96
|
return "library function";
|
|
96
|
-
case
|
|
97
|
+
case library_1.LibraryDefinitionKind.Constant:
|
|
97
98
|
return "library constant";
|
|
98
|
-
case
|
|
99
|
+
case library_1.LibraryDefinitionKind.Type:
|
|
99
100
|
return "library type";
|
|
100
101
|
default:
|
|
101
102
|
throw powerquery_parser_1.Assert.isNever(kind);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libraryUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/libraryUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,oEAAsD;
|
|
1
|
+
{"version":3,"file":"libraryUtils.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/library/libraryUtils.ts"],"names":[],"mappings":"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"}
|