@microsoft/powerquery-language-services 0.3.2 → 0.3.7
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 +2 -1
- package/lib/powerquery-language-services/analysis/analysisBase.d.ts +2 -1
- package/lib/powerquery-language-services/analysis/analysisBase.js +66 -2
- package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNode.d.ts +2 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +11 -10
- package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/task.js +1 -0
- package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/commonTypes.d.ts +2 -0
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +6 -0
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +7 -1
- package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +11 -6
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.d.ts +7 -1
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +47 -3
- package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
- package/lib/powerquery-language-services/inspection/task.js +69 -10
- package/lib/powerquery-language-services/inspection/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +23 -0
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
- package/lib/powerquery-language-services/localization/templates/templates.json +5 -1
- package/lib/powerquery-language-services/positionUtils.js +0 -6
- package/lib/powerquery-language-services/positionUtils.js.map +1 -1
- package/lib/powerquery-language-services/validate/validate.js +7 -1
- package/lib/powerquery-language-services/validate/validate.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.d.ts +1 -2
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js +35 -88
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateLexAndParse.js +0 -2
- package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { Hover, SignatureHelp } from "vscode-languageserver-types";
|
|
1
|
+
import type { Hover, SignatureHelp, TextEdit } from "vscode-languageserver-types";
|
|
2
2
|
import { IDisposable } from "../commonTypes";
|
|
3
3
|
import { Inspection } from "..";
|
|
4
4
|
export interface Analysis extends IDisposable {
|
|
5
5
|
getAutocompleteItems(): Promise<Inspection.AutocompleteItem[]>;
|
|
6
6
|
getHover(): Promise<Hover>;
|
|
7
7
|
getSignatureHelp(): Promise<SignatureHelp>;
|
|
8
|
+
getRenameEdits(newName: string): Promise<TextEdit[]>;
|
|
8
9
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Hover, Range, SignatureHelp } from "vscode-languageserver-types";
|
|
1
|
+
import type { Hover, Range, SignatureHelp, TextEdit } from "vscode-languageserver-types";
|
|
2
2
|
import { AutocompleteItem } from "../inspection";
|
|
3
3
|
import type { AutocompleteItemProvider, ISymbolProvider } from "../providers/commonTypes";
|
|
4
4
|
import { Inspection } from "..";
|
|
@@ -14,6 +14,7 @@ export declare abstract class AnalysisBase implements Analysis {
|
|
|
14
14
|
getAutocompleteItems(): Promise<AutocompleteItem[]>;
|
|
15
15
|
getHover(): Promise<Hover>;
|
|
16
16
|
getSignatureHelp(): Promise<SignatureHelp>;
|
|
17
|
+
getRenameEdits(newName: string): Promise<TextEdit[]>;
|
|
17
18
|
abstract dispose(): void;
|
|
18
19
|
protected abstract getText(range?: Range): string;
|
|
19
20
|
private static promiseWithTimeout;
|
|
@@ -17,7 +17,9 @@ const InspectionUtils = require("../inspectionUtils");
|
|
|
17
17
|
const inspection_1 = require("../inspection");
|
|
18
18
|
const __1 = require("..");
|
|
19
19
|
const commonTypes_1 = require("../commonTypes");
|
|
20
|
+
const scopeUtils_1 = require("../inspection/scope/scopeUtils");
|
|
20
21
|
const providers_1 = require("../providers");
|
|
22
|
+
const __2 = require("../..");
|
|
21
23
|
class AnalysisBase {
|
|
22
24
|
constructor(analysisSettings, promiseMaybeInspected) {
|
|
23
25
|
this.analysisSettings = analysisSettings;
|
|
@@ -65,7 +67,7 @@ class AnalysisBase {
|
|
|
65
67
|
getHover() {
|
|
66
68
|
return __awaiter(this, void 0, void 0, function* () {
|
|
67
69
|
const maybeActiveNode = yield this.getMaybeActiveNode();
|
|
68
|
-
const maybeIdentifierUnderPosition = maybeActiveNode === null || maybeActiveNode === void 0 ? void 0 : maybeActiveNode.
|
|
70
|
+
const maybeIdentifierUnderPosition = maybeActiveNode === null || maybeActiveNode === void 0 ? void 0 : maybeActiveNode.maybeExclusiveIdentifierUnderPosition;
|
|
69
71
|
if (maybeActiveNode === undefined ||
|
|
70
72
|
maybeIdentifierUnderPosition === undefined ||
|
|
71
73
|
!AnalysisBase.isValidHoverIdentifier(maybeActiveNode)) {
|
|
@@ -98,6 +100,68 @@ class AnalysisBase {
|
|
|
98
100
|
return AnalysisBase.resolveProviders(AnalysisBase.createSignatureHelpCalls(context, [this.localDocumentSymbolProvider, this.librarySymbolProvider], this.analysisSettings.symbolProviderTimeoutInMS), commonTypes_1.EmptySignatureHelp);
|
|
99
101
|
});
|
|
100
102
|
}
|
|
103
|
+
getRenameEdits(newName) {
|
|
104
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
105
|
+
const maybeInspected = yield this.promiseMaybeInspected;
|
|
106
|
+
const activeNode = yield this.getMaybeActiveNode();
|
|
107
|
+
const scopeById = maybeInspected === null || maybeInspected === void 0 ? void 0 : maybeInspected.typeCache.scopeById;
|
|
108
|
+
const maybeIdentifierIncludedUnderPosition = activeNode === null || activeNode === void 0 ? void 0 : activeNode.maybeInclusiveIdentifierUnderPosition;
|
|
109
|
+
if (maybeInspected === undefined || maybeIdentifierIncludedUnderPosition === undefined) {
|
|
110
|
+
return [];
|
|
111
|
+
}
|
|
112
|
+
const identifiersToBeEdited = [];
|
|
113
|
+
if (maybeIdentifierIncludedUnderPosition.kind === "GeneralizedIdentifier" /* GeneralizedIdentifier */) {
|
|
114
|
+
// merely modify the GeneralizedIdentifier
|
|
115
|
+
identifiersToBeEdited.push(maybeIdentifierIncludedUnderPosition);
|
|
116
|
+
}
|
|
117
|
+
else if (maybeIdentifierIncludedUnderPosition.kind === "Identifier" /* Identifier */ && scopeById) {
|
|
118
|
+
// need to find this key value and modify all referring it
|
|
119
|
+
const theIdentifierNode = maybeIdentifierIncludedUnderPosition;
|
|
120
|
+
let valueCreator = undefined;
|
|
121
|
+
switch (theIdentifierNode.identifierContextKind) {
|
|
122
|
+
case "Key" /* Key */:
|
|
123
|
+
case "Parameter" /* Parameter */:
|
|
124
|
+
// it is the identifier creating the value
|
|
125
|
+
valueCreator = theIdentifierNode;
|
|
126
|
+
break;
|
|
127
|
+
case "Value" /* Value */: {
|
|
128
|
+
// it is the identifier referring the value
|
|
129
|
+
const nodeScope = maybeInspected.typeCache.scopeById.get(theIdentifierNode.id);
|
|
130
|
+
const scopeItem = (0, scopeUtils_1.findScopeItemByLiteral)(nodeScope, maybeIdentifierIncludedUnderPosition.literal);
|
|
131
|
+
if (scopeItem) {
|
|
132
|
+
const maybeValueCreator = (0, scopeUtils_1.findTheCreatorIdentifierOfOneScopeItem)(scopeItem);
|
|
133
|
+
if ((maybeValueCreator === null || maybeValueCreator === void 0 ? void 0 : maybeValueCreator.kind) === "Identifier" /* Identifier */) {
|
|
134
|
+
if (maybeValueCreator.identifierContextKind === "Key" /* Key */ ||
|
|
135
|
+
maybeValueCreator.identifierContextKind === "Parameter" /* Parameter */) {
|
|
136
|
+
valueCreator = maybeValueCreator;
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
identifiersToBeEdited.push(maybeValueCreator);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
else if (maybeValueCreator) {
|
|
143
|
+
identifiersToBeEdited.push(maybeValueCreator);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
break;
|
|
147
|
+
}
|
|
148
|
+
case "Keyword" /* Keyword */:
|
|
149
|
+
default:
|
|
150
|
+
// only modify once
|
|
151
|
+
identifiersToBeEdited.push(theIdentifierNode);
|
|
152
|
+
break;
|
|
153
|
+
}
|
|
154
|
+
if (valueCreator) {
|
|
155
|
+
// need to populate the other identifiers referring it
|
|
156
|
+
identifiersToBeEdited.push(...(yield maybeInspected.collectAllIdentifiersBeneath(valueCreator)));
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return identifiersToBeEdited.map((one) => ({
|
|
160
|
+
range: __2.PositionUtils.createRangeFromTokenRange(one.tokenRange),
|
|
161
|
+
newText: newName,
|
|
162
|
+
}));
|
|
163
|
+
});
|
|
164
|
+
}
|
|
101
165
|
static promiseWithTimeout(valueFn, timeoutReturnValue, timeoutInMS) {
|
|
102
166
|
if (timeoutInMS !== undefined) {
|
|
103
167
|
// TODO: Enabling trace entry when timeout occurs
|
|
@@ -160,7 +224,7 @@ class AnalysisBase {
|
|
|
160
224
|
getMaybePositionIdentifier() {
|
|
161
225
|
return __awaiter(this, void 0, void 0, function* () {
|
|
162
226
|
const maybeActiveNode = yield this.getMaybeActiveNode();
|
|
163
|
-
return maybeActiveNode === null || maybeActiveNode === void 0 ? void 0 : maybeActiveNode.
|
|
227
|
+
return maybeActiveNode === null || maybeActiveNode === void 0 ? void 0 : maybeActiveNode.maybeExclusiveIdentifierUnderPosition;
|
|
164
228
|
});
|
|
165
229
|
}
|
|
166
230
|
getMaybeActiveNode() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysisBase.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/analysis/analysisBase.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,oEAAsD;AAItD,sDAAsD;AACtD,8CAAwE;AAUxE,0BAAkD;AAClD,gDAAgE;AAChE,4CAAoH;
|
|
1
|
+
{"version":3,"file":"analysisBase.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/analysis/analysisBase.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,oEAAsD;AAItD,sDAAsD;AACtD,8CAAwE;AAUxE,0BAAkD;AAClD,gDAAgE;AAChE,+DAAgH;AAChH,4CAAoH;AAIpH,6BAAsC;AAEtC,MAAsB,YAAY;IAK9B,YACc,gBAAkC,EAClC,qBAAgE;QADhE,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAA2C;QAE1E,MAAM,OAAO,GAAqB,gBAAgB,CAAC,OAAO,CAAC;QAE3D,IAAI,CAAC,gCAAgC;YACjC,gBAAgB,CAAC,6CAA6C,KAAK,SAAS;gBACxE,CAAC,CAAC,gBAAgB,CAAC,6CAA6C,EAAE;gBAClE,CAAC,CAAC,IAAI,4CAAgC,CAAC,qBAAqB,CAAC,CAAC;QAEtE,IAAI,CAAC,qBAAqB;YACtB,gBAAgB,CAAC,kCAAkC,KAAK,SAAS;gBAC7D,CAAC,CAAC,gBAAgB,CAAC,kCAAkC,CAAC,OAAO,CAAC;gBAC9D,CAAC,CAAC,IAAI,iCAAqB,CAAC,OAAO,CAAC,CAAC;QAE7C,IAAI,CAAC,2BAA2B;YAC5B,gBAAgB,CAAC,wCAAwC,KAAK,SAAS;gBACnE,CAAC,CAAC,gBAAgB,CAAC,wCAAwC,CACrD,OAAO,EACP,qBAAqB,EACrB,gBAAgB,CAAC,0BAA0B,CAC9C;gBACH,CAAC,CAAC,IAAI,uCAA2B,CAC3B,OAAO,EACP,qBAAqB,EACrB,gBAAgB,CAAC,0BAA0B,CAC9C,CAAC;IAChB,CAAC;IAEY,oBAAoB;;YAC7B,IAAI,OAAO,GAAoC,EAAE,CAAC;YAElD,MAAM,UAAU,GACZ,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAE5C,IAAI,UAAU,KAAK,SAAS,EAAE;gBAC1B,OAAO,GAAG;oBACN,KAAK,EAAE,oBAAgB,CAAC,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC;oBAClE,IAAI,EAAE,UAAU,CAAC,OAAO;oBACxB,SAAS,EAAE,UAAU,CAAC,IAAI;iBAC7B,CAAC;aACL;YAED,kCAAkC;YAClC,6BAA6B;YAC7B,4CAA4C;YAC5C,MAAM,CAAC,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,CAAC,GAE5D,MAAM,OAAO,CAAC,GAAG,CACjB,YAAY,CAAC,2BAA2B,CACpC,OAAO,EACP,CAAC,IAAI,CAAC,gCAAgC,EAAE,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,2BAA2B,CAAC,EACrG,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAClD,CACJ,CAAC;YAEF,MAAM,OAAO,GAAuB,EAAE,CAAC;YAEvC,KAAK,MAAM,UAAU,IAAI,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,CAAC,EAAE;gBACjF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;oBAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,WAA6B,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE;wBACjG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBACtB;iBACJ;aACJ;YAED,OAAO,OAAO,CAAC,IAAI,CAAC,kCAAqB,CAAC,SAAS,CAAC,CAAC;QACzD,CAAC;KAAA;IAEY,QAAQ;;YACjB,MAAM,eAAe,GAAsC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAE3F,MAAM,4BAA4B,GAC9B,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,qCAAqC,CAAC;YAE3D,IACI,eAAe,KAAK,SAAS;gBAC7B,4BAA4B,KAAK,SAAS;gBAC1C,CAAC,YAAY,CAAC,sBAAsB,CAAC,eAAe,CAAC,EACvD;gBACE,OAAO,wBAAU,CAAC;aACrB;YAED,MAAM,UAAU,GAA+C,4BAA4B,CAAC;YAE5F,MAAM,OAAO,GAAyB;gBAClC,KAAK,EAAE,oBAAgB,CAAC,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC;gBAClE,UAAU,EAAE,UAAU,CAAC,OAAO;aACjC,CAAC;YAEF,gEAAgE;YAChE,OAAO,YAAY,CAAC,gBAAgB,CAChC,YAAY,CAAC,gBAAgB,CACzB,OAAO,EACP,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAC9D,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAClD,EACD,wBAAU,CACb,CAAC;QACN,CAAC;KAAA;IAEY,gBAAgB;;YACzB,MAAM,cAAc,GAAqC,MAAM,IAAI,CAAC,qBAAqB,CAAC;YAE1F,IAAI,cAAc,KAAK,SAAS,EAAE;gBAC9B,OAAO,gCAAkB,CAAC;aAC7B;YAED,MAAM,YAAY,GACd,MAAM,eAAe,CAAC,mCAAmC,CAAC,cAAc,CAAC,CAAC;YAE9E,IAAI,YAAY,KAAK,SAAS,EAAE;gBAC5B,OAAO,gCAAkB,CAAC;aAC7B;YAED,MAAM,OAAO,GAA6B,YAAY,CAAC;YAEvD,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;gBACpC,OAAO,gCAAkB,CAAC;aAC7B;YAED,gEAAgE;YAChE,OAAO,YAAY,CAAC,gBAAgB,CAChC,YAAY,CAAC,wBAAwB,CACjC,OAAO,EACP,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAC9D,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAClD,EACD,gCAAkB,CACrB,CAAC;QACN,CAAC;KAAA;IAEY,cAAc,CAAC,OAAe;;YACvC,MAAM,cAAc,GAAqC,MAAM,IAAI,CAAC,qBAAqB,CAAC;YAC1F,MAAM,UAAU,GAAsC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtF,MAAM,SAAS,GAAqC,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,CAAC,SAAS,CAAC;YAExF,MAAM,oCAAoC,GACtC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,qCAAqC,CAAC;YAEtD,IAAI,cAAc,KAAK,SAAS,IAAI,oCAAoC,KAAK,SAAS,EAAE;gBACpF,OAAO,EAAE,CAAC;aACb;YAED,MAAM,qBAAqB,GAAmD,EAAE,CAAC;YAEjF,IAAI,oCAAoC,CAAC,IAAI,wDAAuC,EAAE;gBAClF,0CAA0C;gBAC1C,qBAAqB,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;aACpE;iBAAM,IAAI,oCAAoC,CAAC,IAAI,kCAA4B,IAAI,SAAS,EAAE;gBAC3F,0DAA0D;gBAC1D,MAAM,iBAAiB,GAAmB,oCAAsD,CAAC;gBACjG,IAAI,YAAY,GAA+B,SAAS,CAAC;gBAEzD,QAAQ,iBAAiB,CAAC,qBAAqB,EAAE;oBAC7C,qBAAmC;oBACnC;wBACI,0CAA0C;wBAC1C,YAAY,GAAG,iBAAiB,CAAC;wBACjC,MAAM;oBAEV,wBAAoC,CAAC,CAAC;wBAClC,2CAA2C;wBAC3C,MAAM,SAAS,GAAqC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CACtF,iBAAiB,CAAC,EAAE,CACvB,CAAC;wBAEF,MAAM,SAAS,GAAsC,IAAA,mCAAsB,EACvE,SAAS,EACT,oCAAoC,CAAC,OAAO,CAC/C,CAAC;wBAEF,IAAI,SAAS,EAAE;4BACX,MAAM,iBAAiB,GACnB,IAAA,mDAAsC,EAAC,SAAS,CAAC,CAAC;4BAEtD,IAAI,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,mCAA4B,EAAE;gCACrD,IACI,iBAAiB,CAAC,qBAAqB,oBAAkC;oCACzE,iBAAiB,CAAC,qBAAqB,gCAAwC,EACjF;oCACE,YAAY,GAAG,iBAAiB,CAAC;iCACpC;qCAAM;oCACH,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;iCACjD;6BACJ;iCAAM,IAAI,iBAAiB,EAAE;gCAC1B,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;6BACjD;yBACJ;wBAED,MAAM;qBACT;oBAED,6BAAuC;oBACvC;wBACI,mBAAmB;wBACnB,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;wBAC9C,MAAM;iBACb;gBAED,IAAI,YAAY,EAAE;oBACd,sDAAsD;oBACtD,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,4BAA4B,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;iBACpG;aACJ;YAED,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAC,GAA+C,EAAE,EAAE,CAAC,CAAC;gBACnF,KAAK,EAAE,iBAAa,CAAC,yBAAyB,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC9D,OAAO,EAAE,OAAO;aACnB,CAAC,CAAC,CAAC;QACR,CAAC;KAAA;IAMO,MAAM,CAAC,kBAAkB,CAC7B,OAAyB,EACzB,kBAAqB,EACrB,WAAoB;QAEpB,IAAI,WAAW,KAAK,SAAS,EAAE;YAC3B,iDAAiD;YACjD,OAAO,OAAO,CAAC,IAAI,CAAC;gBAChB,OAAO,EAAE;gBACT,IAAI,OAAO,CAAI,CAAC,OAA4C,EAAE,EAAE,CAC5D,UAAU,CAAC,GAAG,EAAE;oBACZ,OAAO,CAAC,kBAAkB,CAAC,CAAC;gBAChC,CAAC,EAAE,WAAW,CAAC,CAClB;aACJ,CAAC,CAAC;SACN;QAED,OAAO,OAAO,EAAE,CAAC;IACrB,CAAC;IAEO,MAAM,CAAO,gBAAgB,CACjC,KAAuC,EACvC,kBAAqB;;YAErB,MAAM,OAAO,GAAiB,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAEvD,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBAChD,MAAM,MAAM,GAAa,OAAO,CAAC,CAAC,CAAC,CAAC;gBAEpC,IAAI,MAAM,KAAK,IAAI,EAAE;oBACjB,OAAO,MAAM,CAAC;iBACjB;aACJ;YAED,OAAO,kBAAkB,CAAC;QAC9B,CAAC;KAAA;IAEO,MAAM,CAAC,2BAA2B,CACtC,OAAwC,EACxC,SAAkD,EAClD,WAAoB;QAEpB,sCAAsC;QACtC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAkC,EAAE,EAAE,CACxD,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,CACzF,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,gBAAgB,CAC3B,OAA6B,EAC7B,SAA0B,EAC1B,WAAoB;QAEpB,sCAAsC;QACtC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAuB,EAAE,EAAE,CAC7C,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAC/E,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,wBAAwB,CACnC,OAAiC,EACjC,SAAkC,EAClC,WAAoB;QAEpB,sCAAsC;QACtC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAA+B,EAAE,EAAE,CACrD,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CACvF,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,sBAAsB,CAAC,UAAiC;;QACnE,MAAM,QAAQ,GAA4B,UAAU,CAAC,QAAQ,CAAC;QAE9D,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;YACtB,OAAO,IAAI,CAAC;SACf;QAED,MAAM,IAAI,GAAa,0BAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,aAAa,GAAyB,QAAQ,CAAC,CAAC,CAAC,CAAC;QAExD,IAAI,CAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,0CAAE,IAAI,iCAA2B,EAAE;YACtD,OAAO,KAAK,CAAC;SAChB;QAED,sFAAsF;QACtF,yEAAyE;aACpE,IACD;;;;SAIC,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;YACnC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,0BAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAC1E;YACE,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEa,0BAA0B;;YACpC,MAAM,eAAe,GAAsC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAE3F,OAAO,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,qCAAqC,CAAC;QAClE,CAAC;KAAA;IAEa,kBAAkB;;YAC5B,MAAM,cAAc,GAAqC,MAAM,IAAI,CAAC,qBAAqB,CAAC;YAE1F,IAAI,cAAc,KAAK,SAAS,EAAE;gBAC9B,OAAO,SAAS,CAAC;aACpB;YAED,OAAO,cAAU,CAAC,eAAe,CAAC,kBAAkB,CAAC,cAAc,CAAC,eAAe,CAAC;gBAChF,CAAC,CAAC,cAAc,CAAC,eAAe;gBAChC,CAAC,CAAC,SAAS,CAAC;QACpB,CAAC;KAAA;CACJ;AAnVD,oCAmVC"}
|
|
@@ -10,7 +10,8 @@ export interface ActiveNode extends IActiveNode {
|
|
|
10
10
|
readonly kind: ActiveNodeKind.ActiveNode;
|
|
11
11
|
readonly leafKind: ActiveNodeLeafKind;
|
|
12
12
|
readonly ancestry: ReadonlyArray<TXorNode>;
|
|
13
|
-
readonly
|
|
13
|
+
readonly maybeExclusiveIdentifierUnderPosition: Ast.Identifier | Ast.GeneralizedIdentifier | undefined;
|
|
14
|
+
readonly maybeInclusiveIdentifierUnderPosition: Ast.Identifier | Ast.GeneralizedIdentifier | undefined;
|
|
14
15
|
}
|
|
15
16
|
export interface OutOfBoundPosition extends IActiveNode {
|
|
16
17
|
readonly kind: ActiveNodeKind.OutOfBoundPosition;
|
|
@@ -3,7 +3,7 @@ import { Ast } from "@microsoft/powerquery-parser/lib/powerquery-parser/language
|
|
|
3
3
|
import type { Position } from "vscode-languageserver-types";
|
|
4
4
|
import { ActiveNode, ActiveNodeLeafKind, OutOfBoundPosition, TMaybeActiveNode } from "./activeNode";
|
|
5
5
|
export declare function maybeActiveNode(nodeIdMapCollection: NodeIdMap.Collection, position: Position): TMaybeActiveNode;
|
|
6
|
-
export declare function createActiveNode(leafKind: ActiveNodeLeafKind, position: Position, ancestry: ReadonlyArray<TXorNode>,
|
|
6
|
+
export declare function createActiveNode(leafKind: ActiveNodeLeafKind, position: Position, ancestry: ReadonlyArray<TXorNode>, maybeExclusiveIdentifierUnderPosition: Ast.Identifier | Ast.GeneralizedIdentifier | undefined, maybeInclusiveIdentifierUnderPosition: Ast.Identifier | Ast.GeneralizedIdentifier | undefined): ActiveNode;
|
|
7
7
|
export declare function createOutOfBoundPosition(position: Position): OutOfBoundPosition;
|
|
8
8
|
export declare function assertActiveNode(nodeIdMapCollection: NodeIdMap.Collection, position: Position): ActiveNode;
|
|
9
9
|
export declare function assertGetLeaf(activeNode: ActiveNode): TXorNode;
|
|
@@ -58,16 +58,22 @@ function maybeActiveNode(nodeIdMapCollection, position) {
|
|
|
58
58
|
return createOutOfBoundPosition(position);
|
|
59
59
|
}
|
|
60
60
|
const leaf = maybeLeaf;
|
|
61
|
-
|
|
61
|
+
const maybeInclusiveIdentifierUnderPosition = findIdentifierUnderPosition(nodeIdMapCollection, leaf);
|
|
62
|
+
const maybeExclusiveIdentifierUnderPosition = maybeInclusiveIdentifierUnderPosition &&
|
|
63
|
+
__1.PositionUtils.isInAst(position, maybeInclusiveIdentifierUnderPosition, false, true)
|
|
64
|
+
? maybeInclusiveIdentifierUnderPosition
|
|
65
|
+
: undefined;
|
|
66
|
+
return createActiveNode(leafKind, position, parser_1.AncestryUtils.assertGetAncestry(nodeIdMapCollection, leaf.node.id), maybeExclusiveIdentifierUnderPosition, maybeInclusiveIdentifierUnderPosition);
|
|
62
67
|
}
|
|
63
68
|
exports.maybeActiveNode = maybeActiveNode;
|
|
64
|
-
function createActiveNode(leafKind, position, ancestry,
|
|
69
|
+
function createActiveNode(leafKind, position, ancestry, maybeExclusiveIdentifierUnderPosition, maybeInclusiveIdentifierUnderPosition) {
|
|
65
70
|
return {
|
|
66
71
|
kind: "ActiveNode" /* ActiveNode */,
|
|
67
72
|
leafKind,
|
|
68
73
|
position,
|
|
69
74
|
ancestry,
|
|
70
|
-
|
|
75
|
+
maybeExclusiveIdentifierUnderPosition,
|
|
76
|
+
maybeInclusiveIdentifierUnderPosition,
|
|
71
77
|
};
|
|
72
78
|
}
|
|
73
79
|
exports.createActiveNode = createActiveNode;
|
|
@@ -245,7 +251,7 @@ function maybeFindContext(nodeIdMapCollection, astNodeSearch) {
|
|
|
245
251
|
}
|
|
246
252
|
return maybeCurrent;
|
|
247
253
|
}
|
|
248
|
-
function findIdentifierUnderPosition(nodeIdMapCollection,
|
|
254
|
+
function findIdentifierUnderPosition(nodeIdMapCollection, leaf) {
|
|
249
255
|
if (parser_1.XorNodeUtils.isContextXor(leaf)) {
|
|
250
256
|
return undefined;
|
|
251
257
|
}
|
|
@@ -269,11 +275,6 @@ function findIdentifierUnderPosition(nodeIdMapCollection, position, leaf) {
|
|
|
269
275
|
else {
|
|
270
276
|
return undefined;
|
|
271
277
|
}
|
|
272
|
-
|
|
273
|
-
return identifier;
|
|
274
|
-
}
|
|
275
|
-
else {
|
|
276
|
-
return undefined;
|
|
277
|
-
}
|
|
278
|
+
return identifier;
|
|
278
279
|
}
|
|
279
280
|
//# sourceMappingURL=activeNodeUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activeNodeUtils.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/activeNode/activeNodeUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,oDAAoD;AACpD,sFAOmE;AAKnE,6BAAsC;AAEtC,gFAAgF;AAChF,8EAA8E;AAC9E,2DAA2D;AAC3D,kEAAkE;AAClE,EAAE;AACF,6GAA6G;AAC7G,iDAAiD;AACjD,EAAE;AACF,yDAAyD;AACzD,mEAAmE;AACnE,uGAAuG;AACvG,sEAAsE;AACtE,iHAAiH;AACjH,EAAE;AACF,2CAA2C;AAC3C,uDAAuD;AACvD,0GAA0G;AAC1G,SAAgB,eAAe,CAAC,mBAAyC,EAAE,QAAkB;IACzF,gHAAgH;IAChH,MAAM,SAAS,GAAkB,iBAAiB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAElF,kFAAkF;IAClF,MAAM,gBAAgB,GAA8C,gBAAgB,CAChF,mBAAmB,EACnB,SAAS,CACZ,CAAC;IAEF,IAAI,SAA+B,CAAC;IACpC,IAAI,QAA4B,CAAC;IAEjC,0BAA0B;IAC1B,aAAa;IACb,YAAY;IACZ,aAAa;IACb,SAAS;IACT,IAAI,SAAS,CAAC,qBAAqB,KAAK,SAAS,EAAE;QAC/C,SAAS,GAAG,qBAAY,CAAC,MAAM,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QACjE,QAAQ,oCAAkC,CAAC;KAC9C;SAAM,IACH,SAAS,CAAC,uBAAuB,KAAK,SAAS;QAC/C,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,uBAAuB,CAAC,EAC3D;QACE,SAAS,GAAG,qBAAY,CAAC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACnE,QAAQ,4BAA8B,CAAC;KAC1C;SAAM,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACvC,SAAS,GAAG,qBAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACtD,QAAQ,8BAAiC,CAAC;KAC7C;SAAM,IAAI,SAAS,CAAC,uBAAuB,KAAK,SAAS,EAAE;QACxD,SAAS,GAAG,qBAAY,CAAC,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAEnE,QAAQ,GAAG,iBAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,uBAAuB,EAAE,KAAK,CAAC;YACnF,CAAC;YACD,CAAC,4BAA6B,CAAC;KACtC;SAAM;QACH,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;KAC7C;IAED,MAAM,IAAI,GAAa,SAAS,CAAC;IAEjC,OAAO,gBAAgB,CACnB,QAAQ,EACR,QAAQ,EACR,sBAAa,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAClE,
|
|
1
|
+
{"version":3,"file":"activeNodeUtils.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/activeNode/activeNodeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,8 +41,8 @@ function autocompleteKeyword(nodeIdMapCollection, activeNode, maybeTrailingToken
|
|
|
41
41
|
const ancestryLeaf = activeNode_1.ActiveNodeUtils.assertGetLeaf(activeNode);
|
|
42
42
|
let maybePositionName;
|
|
43
43
|
if (__1.PositionUtils.isInXor(nodeIdMapCollection, activeNode.position, ancestryLeaf, false, true)) {
|
|
44
|
-
if (activeNode.
|
|
45
|
-
maybePositionName = activeNode.
|
|
44
|
+
if (activeNode.maybeExclusiveIdentifierUnderPosition !== undefined) {
|
|
45
|
+
maybePositionName = activeNode.maybeExclusiveIdentifierUnderPosition.literal;
|
|
46
46
|
}
|
|
47
47
|
// Matches 'null', 'true', and 'false'.
|
|
48
48
|
else if (parser_1.XorNodeUtils.isAstXorChecked(ancestryLeaf, "LiteralExpression" /* LiteralExpression */) &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocompleteKeyword.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,0FAA2F;AAC3F,sFAA8G;AAC9G,oEAA2D;AAE3D,iDAAqG;AACrG,0DAA8E;AAE9E,6EAA0E;AAC1E,6GAA0G;AAC1G,mHAAgH;AAChH,yFAAsF;AACtF,2FAAwF;AACxF,yFAAsF;AACtF,uFAAoF;AAEpF,gCAAyC;AAEzC,SAAgB,sBAAsB,CAClC,QAA4B,EAC5B,mBAAyC,EACzC,eAAiC,EACjC,kBAA6C;IAE7C,IAAI,CAAC,4BAAe,CAAC,kBAAkB,CAAC,eAAe,CAAC,EAAE;QACtD,OAAO,OAAO,CAAC,OAAO,CAClB,+BAAW,CAAC,KAAK,CAAC;YACd,GAAG,kBAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,WAAgC,EAAE,EAAE,CACvE,wCAAqB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAC3D;YACD,wCAAqB,CAAC,qBAAqB,yBAA6B;SAC3E,CAAC,CACL,CAAC;KACL;IAED,OAAO,+BAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,CACvD,mBAAmB,CAAC,mBAAmB,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAChF,CAAC;AACN,CAAC;AApBD,wDAoBC;AAED,SAAsB,mBAAmB,CACrC,mBAAyC,EACzC,UAAsB,EACtB,kBAA6C;;QAE7C,MAAM,YAAY,GAAa,4BAAe,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACzE,IAAI,iBAAqC,CAAC;QAE1C,IAAI,iBAAa,CAAC,OAAO,CAAC,mBAAmB,EAAE,UAAU,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE;YAC5F,IAAI,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"autocompleteKeyword.js","sourceRoot":"","sources":["../../../../../src/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ const autocompleteFieldAccess_1 = require("./autocompleteFieldAccess");
|
|
|
18
18
|
const autocompleteKeyword_1 = require("./autocompleteKeyword/autocompleteKeyword");
|
|
19
19
|
const autocompleteLanguageConstant_1 = require("./autocompleteLanguageConstant");
|
|
20
20
|
const autocompletePrimitiveType_1 = require("./autocompletePrimitiveType");
|
|
21
|
+
// Given some Position and ParseState, return autocomplete suggestions.
|
|
21
22
|
function autocomplete(settings, parseState, typeCache, maybeActiveNode, maybeParseError) {
|
|
22
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
24
|
const trace = settings.traceManager.entry("Autocomplete" /* Autocomplete */, autocomplete.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/autocomplete/task.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AAapD,qCAA+C;AAG/C,uEAAuE;AACvE,mFAAmF;AACnF,iFAAiF;AACjF,2EAA2E;AAG3E,SAAsB,YAAY,CAC9B,QAA4B,EAC5B,UAAiC,EACjC,SAAoB,EACpB,eAAiC,EACjC,eAA6D;;QAE7D,MAAM,KAAK,GAAU,QAAQ,CAAC,YAAY,CAAC,KAAK,oCAAyC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE5G,MAAM,mBAAmB,GAAyB,UAAU,CAAC,YAAY,CAAC,mBAAmB,CAAC;QAE9F,IAAI,kBAA6C,CAAC;QAElD,IAAI,eAAe,KAAK,SAAS,EAAE;YAC/B,MAAM,oBAAoB,GAAyC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CACnG,eAAe,CAAC,UAAU,CAC7B,CAAC;YAEF,IAAI,oBAAoB,KAAK,SAAS,EAAE;gBACpC,kBAAkB,GAAG,IAAA,4BAAmB,EAAC,eAAe,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;aAC5F;SACJ;QAED,MAAM,gBAAgB,GAAiC,MAAM,IAAA,oDAA0B,EACnF,QAAQ,EACR,UAAU,EACV,eAAe,EACf,SAAS,CACZ,CAAC;QAEF,MAAM,YAAY,GAA6B,MAAM,IAAA,4CAAsB,EACvE,QAAQ,EACR,mBAAmB,EACnB,eAAe,EACf,kBAAkB,CACrB,CAAC;QAEF,MAAM,qBAAqB,GAAsC,IAAA,8DAA+B,EAC5F,QAAQ,EACR,eAAe,CAClB,CAAC;QAEF,MAAM,kBAAkB,GAAmC,IAAA,wDAA4B,EACnF,QAAQ,EACR,eAAe,EACf,kBAAkB,CACrB,CAAC;QAEF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO;YACH,gBAAgB;YAChB,YAAY;YACZ,qBAAqB;YACrB,kBAAkB;SACrB,CAAC;IACN,CAAC;CAAA;AAxDD,oCAwDC"}
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/autocomplete/task.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AAapD,qCAA+C;AAG/C,uEAAuE;AACvE,mFAAmF;AACnF,iFAAiF;AACjF,2EAA2E;AAG3E,uEAAuE;AACvE,SAAsB,YAAY,CAC9B,QAA4B,EAC5B,UAAiC,EACjC,SAAoB,EACpB,eAAiC,EACjC,eAA6D;;QAE7D,MAAM,KAAK,GAAU,QAAQ,CAAC,YAAY,CAAC,KAAK,oCAAyC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE5G,MAAM,mBAAmB,GAAyB,UAAU,CAAC,YAAY,CAAC,mBAAmB,CAAC;QAE9F,IAAI,kBAA6C,CAAC;QAElD,IAAI,eAAe,KAAK,SAAS,EAAE;YAC/B,MAAM,oBAAoB,GAAyC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CACnG,eAAe,CAAC,UAAU,CAC7B,CAAC;YAEF,IAAI,oBAAoB,KAAK,SAAS,EAAE;gBACpC,kBAAkB,GAAG,IAAA,4BAAmB,EAAC,eAAe,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;aAC5F;SACJ;QAED,MAAM,gBAAgB,GAAiC,MAAM,IAAA,oDAA0B,EACnF,QAAQ,EACR,UAAU,EACV,eAAe,EACf,SAAS,CACZ,CAAC;QAEF,MAAM,YAAY,GAA6B,MAAM,IAAA,4CAAsB,EACvE,QAAQ,EACR,mBAAmB,EACnB,eAAe,EACf,kBAAkB,CACrB,CAAC;QAEF,MAAM,qBAAqB,GAAsC,IAAA,8DAA+B,EAC5F,QAAQ,EACR,eAAe,CAClB,CAAC;QAEF,MAAM,kBAAkB,GAAmC,IAAA,wDAA4B,EACnF,QAAQ,EACR,eAAe,EACf,kBAAkB,CACrB,CAAC;QAEF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO;YACH,gBAAgB;YAChB,YAAY;YACZ,qBAAqB;YACrB,kBAAkB;SACrB,CAAC;IACN,CAAC;CAAA;AAxDD,oCAwDC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as PQP from "@microsoft/powerquery-parser";
|
|
2
|
+
import { Ast } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
2
3
|
import { Inspection } from "..";
|
|
3
4
|
import { TMaybeActiveNode } from "./activeNode";
|
|
4
5
|
import { TriedExpectedType } from "./expectedType";
|
|
@@ -13,4 +14,5 @@ export interface Inspected {
|
|
|
13
14
|
readonly triedExpectedType: TriedExpectedType;
|
|
14
15
|
readonly typeCache: TypeCache;
|
|
15
16
|
readonly parseState: PQP.Parser.ParseState;
|
|
17
|
+
readonly collectAllIdentifiersBeneath: (entryNodeId: Ast.Identifier) => Promise<Ast.Identifier[]>;
|
|
16
18
|
}
|
package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js
CHANGED
|
@@ -18,6 +18,12 @@ const powerquery_parser_1 = require("@microsoft/powerquery-parser");
|
|
|
18
18
|
const activeNode_1 = require("../activeNode");
|
|
19
19
|
const invokeExpression_1 = require("./invokeExpression");
|
|
20
20
|
const typeCache_1 = require("../typeCache");
|
|
21
|
+
// If the cursor is in an InvokeExpression then return:
|
|
22
|
+
// * the number of given arguments
|
|
23
|
+
// * the number of expected arguments
|
|
24
|
+
// * the given argument nodes
|
|
25
|
+
// * the given argument types
|
|
26
|
+
// * type checking for parameter types vs given types
|
|
21
27
|
function tryCurrentInvokeExpression(settings, nodeIdMapCollection, maybeActiveNode,
|
|
22
28
|
// If a TypeCache is given, then potentially add to its values and include it as part of the return,
|
|
23
29
|
// Else create a new TypeCache and include it in the return.
|
package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"currentInvokeExpression.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,sFAKmE;AAEnE,oEAA2D;AAE3D,8CAA8E;AAE9E,yDAAkG;AAClG,4CAAyD;AAezD,SAAsB,0BAA0B,CAC5C,QAA4B,EAC5B,mBAAyC,EACzC,eAAiC;AACjC,oGAAoG;AACpG,4DAA4D;AAC5D,YAAuB,0BAAc,CAAC,gBAAgB,EAAE;;QAExD,MAAM,KAAK,GAAU,QAAQ,CAAC,YAAY,CAAC,KAAK,0DAE5C,0BAA0B,CAAC,IAAI,CAClC,CAAC;QAEF,IAAI,CAAC,4BAAe,CAAC,kBAAkB,CAAC,eAAe,CAAC,EAAE;YACtD,OAAO,OAAO,CAAC,OAAO,CAAC,+BAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;SACxD;QAED,MAAM,MAAM,GAAiC,MAAM,+BAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,CACnG,uBAAuB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,eAAe,EAAE,SAAS,CAAC,CACrF,CAAC;QAEF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC;IAClB,CAAC;CAAA;AAxBD,gEAwBC;AAED,SAAe,uBAAuB,CAClC,QAA4B,EAC5B,mBAAyC,EACzC,UAAsB,EACtB,SAAoB;;QAEpB,MAAM,QAAQ,GAA4B,UAAU,CAAC,QAAQ,CAAC;QAE9D,MAAM,qBAAqB,GAAmC,sBAAa,CAAC,+BAA+B,CACvG,QAAQ,4CAEX,CAAC;QAEF,IAAI,CAAC,qBAAqB,EAAE;YACxB,OAAO,SAAS,CAAC;SACpB;QAED,MAAM,CAAC,uBAAuB,EAAE,aAAa,CAAC,GAAuB,qBAAqB,CAAC;QAE3F,MAAM,qBAAqB,GAA0B,MAAM,IAAA,sCAAmB,EAC1E,QAAQ,EACR,mBAAmB,EACnB,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAC/B,SAAS,CACZ,CAAC;QAEF,IAAI,+BAAW,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE;YAC5C,MAAM,qBAAqB,CAAC;SAC/B;QAED,MAAM,gBAAgB,GAAqB,qBAAqB,CAAC,KAAK,CAAC;QACvE,MAAM,cAAc,GAA0C,gBAAgB,CAAC,cAAc,CAAC;QAE9F,IAAI,wBAAsE,CAAC;QAE3E,IAAI,cAAc,KAAK,SAAS,EAAE;YAC9B,wBAAwB,mCACjB,cAAc,KACjB,eAAe,EAAE,kBAAkB,CAC/B,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,uBAAuB,CAC1B,GACJ,CAAC;SACL;QAED,uCACO,gBAAgB,KACnB,cAAc,EAAE,wBAAwB,IAC1C;IACN,CAAC;CAAA;AAED,SAAS,kBAAkB,CACvB,mBAAyC,EACzC,UAAsB,EACtB,aAAqB,EACrB,uBAAiC;;IAEjC,WAAW;IACX,MAAM,iBAAiB,GAAyB,sBAAa,CAAC,0BAA0B,CACpF,UAAU,CAAC,QAAQ,EACnB,aAAa,EACb,CAAC,kBAEJ,CAAC;IAEF,IAAI,iBAAiB,KAAK,SAAS,EAAE;QACjC,OAAO,MAAA,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,mCAAI,CAAC,CAAC;KAC1D;IAED,MAAM,gBAAgB,GAAyB,sBAAa,CAAC,uBAAuB,CAElF,UAAU,CAAC,QAAQ,EAAE,aAAa,EAAE;;;KAKrC,CAAC,CAAC;IAEH,IAAI,mBAA6B,CAAC;IAElC,QAAQ,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,CAAC,IAAI,EAAE;QACjC,8BAA0B,CAAC,CAAC;YACxB,mBAAmB,GAAG,uBAAc,CAAC,wBAAwB,CACzD,mBAAmB,EACnB,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAC/B,CAAC,oCAEJ,CAAC;YAEF,MAAM;SACT;QAED,sCAA8B,CAAC,CAAC;YAC5B,mBAAmB,GAAG,gBAAgB,CAAC;YACvC,MAAM;SACT;QAED,KAAK,SAAS,CAAC;QACf;YACI,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC,wDAAwD,EAAE;gBAC/F,aAAa;gBACb,iBAAiB,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAiB,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;aACvF,CAAC,CAAC;KACV;IAED,MAAM,yBAAyB,GAAsC,mBAAmB,CAAC,YAAY,CAAC,GAAG,CACrG,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAC9B,CAAC;IAEF,OAAO,yBAAyB,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC"}
|
|
1
|
+
{"version":3,"file":"currentInvokeExpression.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,13 @@ function pseudoFunctionExpressionType(nodeIdMapCollection, fnExpr) {
|
|
|
17
17
|
}
|
|
18
18
|
const maybeExaminable = language_1.TypeUtils.inspectParameter(nodeIdMapCollection, parser_1.XorNodeUtils.assertAsParameter(parameter));
|
|
19
19
|
if (maybeExaminable !== undefined) {
|
|
20
|
-
examinedParameters.push(
|
|
20
|
+
examinedParameters.push({
|
|
21
|
+
id: parameter.node.id,
|
|
22
|
+
isNullable: maybeExaminable.isNullable,
|
|
23
|
+
isOptional: maybeExaminable.isOptional,
|
|
24
|
+
maybeType: maybeExaminable.maybeType,
|
|
25
|
+
name: maybeName,
|
|
26
|
+
});
|
|
21
27
|
}
|
|
22
28
|
}
|
|
23
29
|
const maybeReturnType = parser_1.NodeIdMapUtils.maybeUnboxNthChildIfAstChecked(nodeIdMapCollection, fnExpr.node.id, 1, "AsNullablePrimitiveType" /* AsNullablePrimitiveType */);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pseudoFunctionExpressionType.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/pseudoFunctionExpressionType.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,0FAA6G;AAC7G,sFAOmE;AAcnE,SAAgB,4BAA4B,CACxC,mBAAyC,EACzC,MAAgB;IAEhB,qBAAY,CAAC,gBAAgB,CAAyB,MAAM,gDAAkC,CAAC;IAE/F,MAAM,kBAAkB,GAAkC,EAAE,CAAC;IAE7D,iGAAiG;IACjG,KAAK,MAAM,SAAS,IAAI,yBAAyB,CAAC,mBAAmB,EAAE,MAAM,CAAC,EAAE;QAC5E,kFAAkF;QAClF,MAAM,SAAS,GAA+B,uBAAc,CAAC,8BAA8B,CACvF,mBAAmB,EACnB,SAAS,CAAC,IAAI,CAAC,EAAE,EACjB,CAAC,gCAEJ,CAAC;QAEF,IAAI,SAAS,KAAK,SAAS,EAAE;YACzB,MAAM;SACT;QAED,MAAM,eAAe,GAAuC,oBAAS,CAAC,gBAAgB,CAClF,mBAAmB,EACnB,qBAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAC5C,CAAC;QAEF,IAAI,eAAe,KAAK,SAAS,EAAE;YAC/B,kBAAkB,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"pseudoFunctionExpressionType.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/pseudoFunctionExpressionType.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,0FAA6G;AAC7G,sFAOmE;AAcnE,SAAgB,4BAA4B,CACxC,mBAAyC,EACzC,MAAgB;IAEhB,qBAAY,CAAC,gBAAgB,CAAyB,MAAM,gDAAkC,CAAC;IAE/F,MAAM,kBAAkB,GAAkC,EAAE,CAAC;IAE7D,iGAAiG;IACjG,KAAK,MAAM,SAAS,IAAI,yBAAyB,CAAC,mBAAmB,EAAE,MAAM,CAAC,EAAE;QAC5E,kFAAkF;QAClF,MAAM,SAAS,GAA+B,uBAAc,CAAC,8BAA8B,CACvF,mBAAmB,EACnB,SAAS,CAAC,IAAI,CAAC,EAAE,EACjB,CAAC,gCAEJ,CAAC;QAEF,IAAI,SAAS,KAAK,SAAS,EAAE;YACzB,MAAM;SACT;QAED,MAAM,eAAe,GAAuC,oBAAS,CAAC,gBAAgB,CAClF,mBAAmB,EACnB,qBAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAC5C,CAAC;QAEF,IAAI,eAAe,KAAK,SAAS,EAAE;YAC/B,kBAAkB,CAAC,IAAI,CAAC;gBACpB,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE;gBACrB,UAAU,EAAE,eAAe,CAAC,UAAU;gBACtC,UAAU,EAAE,eAAe,CAAC,UAAU;gBACtC,SAAS,EAAE,eAAe,CAAC,SAAS;gBACpC,IAAI,EAAE,SAAS;aAClB,CAAC,CAAC;SACN;KACJ;IAED,MAAM,eAAe,GACjB,uBAAc,CAAC,8BAA8B,CACzC,mBAAmB,EACnB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,CAAC,0DAEJ,CAAC;IAEN,IAAI,gBAAyB,CAAC;IAC9B,IAAI,UAAyB,CAAC;IAE9B,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,MAAM,UAAU,GAA4B,mBAAQ,CAAC,+BAA+B,CAAC,eAAe,CAAC,CAAC;QACtG,gBAAgB,GAAG,UAAU,CAAC,UAAU,CAAC;QACzC,UAAU,GAAG,oBAAS,CAAC,qCAAqC,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;KACtG;SAAM;QACH,gBAAgB,GAAG,IAAI,CAAC;QACxB,UAAU,kBAAoB,CAAC;KAClC;IAED,OAAO;QACH,UAAU,EAAE,kBAAkB;QAC9B,UAAU,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,iBAAiB,EAAE,SAAS;YAC5B,UAAU,EAAE,gBAAgB;SAC/B;KACJ,CAAC;AACN,CAAC;AAlED,oEAkEC;AAED,SAAS,yBAAyB,CAC9B,mBAAyC,EACzC,MAAgB;IAEhB,MAAM,kBAAkB,GACpB,uBAAc,CAAC,oBAAoB,CAC/B,mBAAmB,EACnB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,CAAC,sCAEJ,CAAC;IAEN,IAAI,kBAAkB,KAAK,SAAS,EAAE;QAClC,OAAO,EAAE,CAAC;KACb;IAED,MAAM,mBAAmB,GAAyB,uBAAc,CAAC,wBAAwB,CACrF,mBAAmB,EACnB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAC7B,CAAC;IAEF,OAAO,mBAAmB,KAAK,SAAS;QACpC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,0BAAiB,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;AACvF,CAAC"}
|
|
@@ -28,8 +28,14 @@ scopeById) {
|
|
|
28
28
|
if (ancestry.length === 0) {
|
|
29
29
|
return new Map();
|
|
30
30
|
}
|
|
31
|
-
const
|
|
32
|
-
|
|
31
|
+
const inspectedDeltaScope = yield inspectScope(settings, nodeIdMapCollection, ancestry, scopeById);
|
|
32
|
+
const result = powerquery_parser_1.MapUtils.assertGet(inspectedDeltaScope, nodeId, `expected nodeId in scope result`, {
|
|
33
|
+
nodeId,
|
|
34
|
+
});
|
|
35
|
+
for (const [key, value] of inspectedDeltaScope.entries()) {
|
|
36
|
+
scopeById.set(key, value);
|
|
37
|
+
}
|
|
38
|
+
return result;
|
|
33
39
|
}));
|
|
34
40
|
trace.exit();
|
|
35
41
|
return result;
|
|
@@ -144,13 +150,12 @@ scopeById) {
|
|
|
144
150
|
trace.exit();
|
|
145
151
|
return scopeById;
|
|
146
152
|
}
|
|
147
|
-
// Store the delta between the given scope and what's found in a temporary map.
|
|
148
|
-
// This will prevent mutation in the given map if an error is thrown.
|
|
149
|
-
const scopeChanges = new Map();
|
|
150
153
|
const state = {
|
|
151
154
|
traceManager: settings.traceManager,
|
|
152
155
|
givenScope: scopeById,
|
|
153
|
-
|
|
156
|
+
// Store the delta between the given scope and what's found in a temporary map.
|
|
157
|
+
// This will prevent mutation in the given map if an error is thrown.
|
|
158
|
+
deltaScope: new Map(),
|
|
154
159
|
ancestry,
|
|
155
160
|
nodeIdMapCollection,
|
|
156
161
|
ancestryIndex: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeInspection.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/scope/scopeInspection.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAGlC,sFAOmE;AACnE,oEAAmE;AACnE,0FAA6F;AAE7F,6BAA6E;AAY7E,kFAIyC;AAGzC,qCAAqC;AACrC,SAAsB,YAAY,CAC9B,QAA4B,EAC5B,mBAAyC,EACzC,MAAc;AACd,mDAAmD;AACnD,SAAoB;;QAEpB,MAAM,KAAK,GAAU,QAAQ,CAAC,YAAY,CAAC,KAAK,sBAAqC,YAAY,CAAC,IAAI,CAAC,CAAC;QAExG,MAAM,MAAM,GAAmB,MAAM,+BAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAS,EAAE;YAC3F,MAAM,QAAQ,GAA4B,sBAAa,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;YAEvG,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBACvB,OAAO,IAAI,GAAG,EAAE,CAAC;aACpB;YAED,MAAM,SAAS,GAAc,MAAM,YAAY,CAAC,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YAEpG,OAAO,0BAAM,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,iCAAiC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAClG,CAAC,CAAA,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC;IAClB,CAAC;CAAA;AAxBD,oCAwBC;AAED,SAAsB,0BAA0B,CAC5C,QAA4B,EAC5B,mBAAyC,EACzC,MAAc;AACd,mDAAmD;AACnD,SAAoB;;QAEpB,MAAM,KAAK,GAAU,QAAQ,CAAC,YAAY,CAAC,KAAK,sBAE5C,0BAA0B,CAAC,IAAI,CAClC,CAAC;QAEF,MAAM,UAAU,GAA0B,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEhE,IAAI,UAAU,KAAK,SAAS,EAAE;YAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,+BAA0B,EAAE,KAAK,EAAE,CAAC,CAAC;YAElD,OAAO,+BAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;SACxC;QAED,MAAM,cAAc,GAAmB,MAAM,YAAY,CAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAE5G,IAAI,+BAAW,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,+BAA0B,EAAE,IAAI,EAAE,CAAC,CAAC;YAEjD,MAAM,cAAc,CAAC;SACxB;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,+BAA0B,EAAE,KAAK,EAAE,CAAC,CAAC;QAElD,OAAO,cAAc,CAAC;IAC1B,CAAC;CAAA;AA/BD,gEA+BC;AAED,yEAAyE;AACzE,yCAAyC;AACzC,SAAsB,2BAA2B,CAC7C,QAA4B,EAC5B,mBAAyC,EACzC,OAAiB;AACjB,qDAAqD;AACrD,0DAA0D;AAC1D,YAAuB,IAAI,GAAG,EAAE;;QAEhC,MAAM,KAAK,GAAU,QAAQ,CAAC,YAAY,CAAC,KAAK,sBAE5C,2BAA2B,CAAC,IAAI,EAChC,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,qBAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEzC,IAAI,qBAAY,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;YACpC,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,SAAS,EAAE,CAAC,CAAC;YAElD,OAAO,+BAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SACvC;QAED,MAAM,UAAU,GAA8C,OAAO,CAAC,IAExC,CAAC;QAE/B,IAAI,iBAAyB,CAAC;QAC9B,IAAI,qBAA8B,CAAC;QAEnC,QAAQ,UAAU,CAAC,IAAI,EAAE;YACrB;gBACI,iBAAiB,GAAG,UAAU,CAAC,OAAO,CAAC;gBACvC,qBAAqB,GAAG,KAAK,CAAC;gBAC9B,MAAM;YAEV;gBACI,iBAAiB,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC;gBAClD,qBAAqB,GAAG,UAAU,CAAC,sBAAsB,KAAK,SAAS,CAAC;gBACxE,MAAM;YAEV;gBACI,MAAM,0BAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;SACxC;QAED,MAAM,cAAc,GAA8B,MAAM,0BAA0B,CAC9E,QAAQ,EACR,mBAAmB,EACnB,OAAO,CAAC,IAAI,CAAC,EAAE,EACf,SAAS,CACZ,CAAC;QAEF,IAAI,+BAAW,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;YAE5D,OAAO,cAAc,CAAC;SACzB;QAED,MAAM,SAAS,GAAc,cAAc,CAAC,KAAK,CAAC;QAClD,MAAM,cAAc,GAA2B,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEhF;QACI,8DAA8D;QAC9D,gFAAgF;QAChF,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,MAAK,qBAAqB,EACvD;YACE,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,SAAS,EAAE,CAAC,CAAC;YAElD,OAAO,+BAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SACvC;QAED,MAAM,SAAS,GAAe,cAAc,CAAC;QAE7C,IAAI,gBAAsC,CAAC;QAE3C,QAAQ,SAAS,CAAC,IAAI,EAAE;YACpB,uBAAwB;YACxB,iCAA6B;YAC7B;gBACI,MAAM;YAEV,qCAA+B;YAC/B;gBACI,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAC;gBACxC,MAAM;YAEV;gBACI,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAC;gBACxC,MAAM;YAEV;gBACI,MAAM,0BAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACvC;QAED,IAAI,MAA8E,CAAC;QAEnF,IAAI,gBAAgB,KAAK,SAAS,EAAE;YAChC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,+BAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;SACxD;aAAM,IACH,qBAAY,CAAC,YAAY,CAAC,gBAAgB,CAAC;YAC3C,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,kCAA4B;gBACnD,gBAAgB,CAAC,IAAI,CAAC,IAAI,sDAAsC,CAAC,EACvE;YACE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,+BAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;SACxD;aAAM;YACH,MAAM,GAAG,2BAA2B,CAAC,QAAQ,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;SACpG;QAED,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC;IAClB,CAAC;CAAA;AA9GD,kEA8GC;AAUD,SAAe,YAAY,CACvB,QAA4B,EAC5B,mBAAyC,EACzC,QAAiC;AACjC,mDAAmD;AACnD,SAAoB;;QAEpB,MAAM,KAAK,GAAU,QAAQ,CAAC,YAAY,CAAC,KAAK,sBAAqC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxG,MAAM,MAAM,GAAW,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAE3C,6DAA6D;QAC7D,MAAM,WAAW,GAA0B,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEjE,IAAI,WAAW,KAAK,SAAS,EAAE;YAC3B,KAAK,CAAC,IAAI,EAAE,CAAC;YAEb,OAAO,SAAS,CAAC;SACpB;QAED,+EAA+E;QAC/E,qEAAqE;QACrE,MAAM,YAAY,GAAc,IAAI,GAAG,EAAE,CAAC;QAE1C,MAAM,KAAK,GAAyB;YAChC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,YAAY;YACxB,QAAQ;YACR,mBAAmB;YACnB,aAAa,EAAE,CAAC;SACnB,CAAC;QAEF,oDAAoD;QACpD,MAAM,QAAQ,GAAW,QAAQ,CAAC,MAAM,CAAC;QAEzC,KAAK,IAAI,aAAa,GAAW,QAAQ,GAAG,CAAC,EAAE,aAAa,IAAI,CAAC,EAAE,aAAa,IAAI,CAAC,EAAE;YACnF,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;YACpC,MAAM,OAAO,GAAa,QAAQ,CAAC,aAAa,CAAC,CAAC;YAElD,4CAA4C;YAC5C,MAAM,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACrC;QAED,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,KAAK,CAAC,UAAU,CAAC;IAC5B,CAAC;CAAA;AAED,yCAAyC;AACzC,SAAe,WAAW,CAAC,KAA2B,EAAE,OAAiB;;QACrE,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sBAEzC,WAAW,CAAC,IAAI,EAChB,cAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAC3C,CAAC;QAEF,QAAQ,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;YACvB;gBACI,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACtC,MAAM;YAEV;gBACI,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC1C,MAAM;YAEV;gBACI,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACrC,MAAM;YAEV,+CAAmC;YACnC;gBACI,sCAAsC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACvD,MAAM;YAEV;gBACI,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC/B,MAAM;YAEV;gBACI,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;SACpE;QAED,KAAK,CAAC,IAAI,EAAE,CAAC;IACjB,CAAC;CAAA;AAED,SAAS,qBAAqB,CAAC,KAA2B,EAAE,QAAkB;IAC1E,qBAAY,CAAC,gBAAgB,CAAqB,QAAQ,wCAA8B,CAAC;IAEzF,gBAAgB,CACZ,KAAK,EACL,QAAQ,EACR,CAAC,CAAC,CAAC,EACH;QACI;YACI,GAAG;YACH;gBACI,IAAI,mBAAoB;gBACxB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACpB,WAAW,EAAE,KAAK;gBAClB,cAAc,EAAE,QAAQ;aAC3B;SACJ;KACJ,EACD,SAAS,CACZ,CAAC;AACN,CAAC;AAED,SAAS,yBAAyB,CAAC,KAA2B,EAAE,MAAgB;IAC5E,qBAAY,CAAC,gBAAgB,CAAyB,MAAM,gDAAkC,CAAC;IAE/F,iCAAiC;IACjC,MAAM,SAAS,GAAc,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IACzF,MAAM,UAAU,GAAiC,IAAA,2DAA4B,EAAC,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAEjH,MAAM,UAAU,GAAgD,UAAU,CAAC,UAAU,CAAC,GAAG,CACrF,CAAC,SAAsC,EAAE,EAAE,CAAC;QACxC,SAAS,CAAC,IAAI,CAAC,OAAO;QACtB;YACI,IAAI,6BAAyB;YAC7B,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,WAAW,EAAE,KAAK;YAClB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,SAAS,EACL,SAAS,CAAC,SAAS,KAAK,SAAS;gBAC7B,CAAC,CAAC,oBAAS,CAAC,0CAA0C,CAAC,SAAS,CAAC,SAAS,CAAC;gBAC3E,CAAC,CAAC,SAAS;SACtB;KACJ,CACJ,CAAC;IAEF,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,oBAAoB,CAAC,KAA2B,EAAE,OAAiB;IACxE,qBAAY,CAAC,gBAAgB,CAAoB,OAAO,sCAA6B,CAAC;IAEtF,iCAAiC;IACjC,MAAM,SAAS,GAAc,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAE1F,MAAM,aAAa,GAAqD,0BAAiB,CAAC,iBAAiB,CACvG,KAAK,CAAC,mBAAmB,EACzB,OAAO,CACV,CAAC;IAEF,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,0BAA0B,CAAC,CAAC;IAElF,sEAAsE;IACtE,MAAM,UAAU,GAAkD,2BAA2B,CACzF,aAAa,EACb,CAAC,CAAC,EACF,0BAA0B,CAC7B,CAAC;IAEF,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,sCAAsC,CAAC,KAA2B,EAAE,MAAgB;IACzF,qBAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAEpC,iCAAiC;IACjC,MAAM,SAAS,GAAc,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAEzF,MAAM,aAAa,GAAwD,0BAAiB,CAAC,UAAU,CACnG,KAAK,CAAC,mBAAmB,EACzB,MAAM,CACT,CAAC;IAEF,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,2BAA2B,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,cAAc,CAAC,KAA2B,EAAE,OAAiB;IAClE,qBAAY,CAAC,gBAAgB,CAAc,OAAO,0BAAuB,CAAC;IAE1E,MAAM,aAAa,GAAyD,0BAAiB,CAAC,WAAW,CACrG,KAAK,CAAC,mBAAmB,EACzB,OAAO,CACV,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;QAC7B,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE;YAC9B,SAAS;SACZ;QAED,MAAM,aAAa,GAAoD,2BAA2B,CAC9F,aAAa,EACb,GAAG,CAAC,GAAG,CAAC,EAAE,EACV,4BAA4B,CAC/B,CAAC;QAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;SAChE;KACJ;AACL,CAAC;AAED,6DAA6D;AAC7D,SAAS,oBAAoB,CACzB,KAA2B,EAC3B,WAAsB,EACtB,aAAiC,EACjC,QAAsD;IAEtD,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;QAC7B,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE;YAC9B,SAAS;SACZ;QAED,MAAM,aAAa,GAA+B,2BAA2B,CACzE,aAAa,EACb,GAAG,CAAC,GAAG,CAAC,EAAE,EACV,QAAQ,CACX,CAAC;QAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;SAClE;KACJ;AACL,CAAC;AAED,SAAS,WAAW,CAChB,KAA2B,EAC3B,OAAiB,EACjB,UAA+C,EAC/C,iBAAwC;IAExC,MAAM,SAAS,GAAc,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAElG,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE;QACnC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;KAC7D;AACL,CAAC;AAED,SAAS,gBAAgB,CACrB,KAA2B,EAC3B,MAAgB,EAChB,iBAAwC,EACxC,UAA+C,EAC/C,iBAAwC;IAExC,MAAM,mBAAmB,GAAyB,KAAK,CAAC,mBAAmB,CAAC;IAC5E,MAAM,QAAQ,GAAW,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;IAExC,sBAAsB;IACtB,KAAK,MAAM,WAAW,IAAI,iBAAiB,EAAE;QACzC,MAAM,UAAU,GAAyB,uBAAc,CAAC,aAAa,CACjE,mBAAmB,EACnB,QAAQ,EACR,WAAW,CACd,CAAC;QAEF,IAAI,UAAU,KAAK,SAAS,EAAE;YAC1B,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC;SACjE;KACJ;AACL,CAAC;AAED,mFAAmF;AACnF,SAAS,yBAAyB,CAC9B,KAA2B,EAC3B,MAAc,EACd,iBAAwC;IAExC,MAAM,KAAK,GAAU,KAAK,CAAC,YAAY,CAAC,KAAK,sBAAqC,yBAAyB,CAAC,IAAI,EAAE;QAC9G,MAAM;KACT,CAAC,CAAC;IAEH,uFAAuF;IACvF,MAAM,eAAe,GAA0B,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5E,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,sBAAsB,EAAE,CAAC,CAAC;QAE/D,OAAO,eAAe,CAAC;KAC1B;IAED,kEAAkE;IAClE,oBAAoB;IACpB,MAAM,eAAe,GAA0B,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5E,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,MAAM,WAAW,GAAc,IAAI,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAClE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,sBAAsB,EAAE,CAAC,CAAC;QAE/D,OAAO,WAAW,CAAC;KACtB;IAED,IAAI,iBAAiB,KAAK,SAAS,EAAE;QACjC,MAAM,WAAW,GAAc,IAAI,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAE7D,OAAO,WAAW,CAAC;KACtB;IAED,wDAAwD;IACxD,MAAM,WAAW,GAAyB,uBAAc,CAAC,cAAc,CAAC,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAE3G,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,MAAM,YAAY,GAAW,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QAEjD,MAAM,qBAAqB,GAA0B,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAExF,IAAI,qBAAqB,KAAK,SAAS,EAAE;YACrC,MAAM,WAAW,GAAc,IAAI,GAAG,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC;YACxE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAEhE,OAAO,WAAW,CAAC;SACtB;QAED,MAAM,qBAAqB,GAA0B,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAExF,IAAI,qBAAqB,KAAK,SAAS,EAAE;YACrC,MAAM,WAAW,GAAc,IAAI,GAAG,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC;YACxE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAEhE,OAAO,WAAW,CAAC;SACtB;KACJ;IAED,oDAAoD;IACpD,MAAM,QAAQ,GAAc,IAAI,GAAG,EAAE,CAAC;IACtC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvC,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAsB,EAAE,eAAe,EAAE,CAAC,CAAC;IAExD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,2BAA2B,CAChC,aAAiC,EACjC,iBAAyB,EACzB,QAAwD;IAExD,OAAO,aAAa;SACf,MAAM,CAAC,CAAC,YAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,UAAU,KAAK,SAAS,CAAC;SACpE,GAAG,CAAC,CAAC,YAAiB,EAAE,EAAE,CAAC;QACxB,YAAY,CAAC,UAAU;QACvB,QAAQ,CAAC,YAAY,EAAE,iBAAiB,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;KACpE,CAAC,CAAC;AACX,CAAC;AAED,SAAS,4BAA4B,CACjC,YAAmD,EACnD,WAAoB;IAEpB,OAAO;QACH,IAAI,qCAA6B;QACjC,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/B,WAAW;QACX,GAAG,EAAE,YAAY,CAAC,GAAG;QACrB,UAAU,EAAE,YAAY,CAAC,UAAU;KACtC,CAAC;AACN,CAAC;AAED,SAAS,0BAA0B,CAC/B,YAA+C,EAC/C,WAAoB;IAEpB,OAAO;QACH,IAAI,iCAA2B;QAC/B,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/B,WAAW;QACX,GAAG,EAAE,YAAY,CAAC,GAAG;QACrB,UAAU,EAAE,YAAY,CAAC,UAAU;KACtC,CAAC;AACN,CAAC;AAED,SAAS,2BAA2B,CAChC,YAAkD,EAClD,WAAoB;IAEpB,OAAO;QACH,IAAI,iCAA2B;QAC/B,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/B,WAAW;QACX,GAAG,EAAE,YAAY,CAAC,GAAG;QACrB,UAAU,EAAE,YAAY,CAAC,UAAU;KACtC,CAAC;AACN,CAAC"}
|
|
1
|
+
{"version":3,"file":"scopeInspection.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/scope/scopeInspection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EachExpression, FunctionExpression, LetExpression, RecordExpression, RecordLiteral, SectionMember } from "@microsoft/powerquery-parser/lib/powerquery-parser/language/ast/ast";
|
|
2
|
+
import { EachScopeItem, LetVariableScopeItem, NodeScope, ParameterScopeItem, RecordFieldScopeItem, SectionMemberScopeItem, TScopeItem, UndefinedScopeItem } from "./scope";
|
|
3
|
+
import { Ast } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
4
|
+
import { NodeIdMap } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
|
|
2
5
|
export * from "./scope";
|
|
3
6
|
export * from "./scopeInspection";
|
|
4
7
|
export declare function isEach(maybeValue: TScopeItem | undefined): maybeValue is EachScopeItem;
|
|
@@ -7,3 +10,6 @@ export declare function isParameter(maybeValue: TScopeItem | undefined): maybeVa
|
|
|
7
10
|
export declare function isRecordField(maybeValue: TScopeItem | undefined): maybeValue is RecordFieldScopeItem;
|
|
8
11
|
export declare function isSectionMember(maybeValue: TScopeItem | undefined): maybeValue is SectionMemberScopeItem;
|
|
9
12
|
export declare function isUndefined(maybeValue: TScopeItem | undefined): maybeValue is UndefinedScopeItem;
|
|
13
|
+
export declare function findScopeItemByLiteral(nodeScope: NodeScope | undefined, literalString: string): TScopeItem | undefined;
|
|
14
|
+
export declare function findTheCreatorIdentifierOfOneScopeItem(scopeItem: TScopeItem | undefined): Ast.Identifier | Ast.GeneralizedIdentifier | undefined;
|
|
15
|
+
export declare function findDirectUpperScopeExpression(nodeIdMapCollection: NodeIdMap.Collection, nodeId: number): EachExpression | FunctionExpression | LetExpression | RecordExpression | RecordLiteral | SectionMember | undefined;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright (c) Microsoft Corporation.
|
|
3
|
-
// Licensed under the MIT license.
|
|
4
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
3
|
if (k2 === undefined) k2 = k;
|
|
6
4
|
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
@@ -12,7 +10,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
12
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
13
11
|
};
|
|
14
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.isUndefined = exports.isSectionMember = exports.isRecordField = exports.isParameter = exports.isLetVariable = exports.isEach = void 0;
|
|
13
|
+
exports.findDirectUpperScopeExpression = exports.findTheCreatorIdentifierOfOneScopeItem = exports.findScopeItemByLiteral = exports.isUndefined = exports.isSectionMember = exports.isRecordField = exports.isParameter = exports.isLetVariable = exports.isEach = void 0;
|
|
14
|
+
// Copyright (c) Microsoft Corporation.
|
|
15
|
+
// Licensed under the MIT license.
|
|
16
|
+
const PQP = require("@microsoft/powerquery-parser");
|
|
16
17
|
__exportStar(require("./scope"), exports);
|
|
17
18
|
__exportStar(require("./scopeInspection"), exports);
|
|
18
19
|
function isEach(maybeValue) {
|
|
@@ -39,4 +40,47 @@ function isUndefined(maybeValue) {
|
|
|
39
40
|
return (maybeValue === null || maybeValue === void 0 ? void 0 : maybeValue.kind) === "Undefined" /* Undefined */;
|
|
40
41
|
}
|
|
41
42
|
exports.isUndefined = isUndefined;
|
|
43
|
+
function findScopeItemByLiteral(nodeScope, literalString) {
|
|
44
|
+
var _a;
|
|
45
|
+
return (_a = nodeScope === null || nodeScope === void 0 ? void 0 : nodeScope.get(`@${literalString}`)) !== null && _a !== void 0 ? _a : nodeScope === null || nodeScope === void 0 ? void 0 : nodeScope.get(literalString);
|
|
46
|
+
}
|
|
47
|
+
exports.findScopeItemByLiteral = findScopeItemByLiteral;
|
|
48
|
+
function findTheCreatorIdentifierOfOneScopeItem(scopeItem) {
|
|
49
|
+
if (!scopeItem) {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
switch (scopeItem.kind) {
|
|
53
|
+
case "Each" /* Each */:
|
|
54
|
+
case "Undefined" /* Undefined */:
|
|
55
|
+
return undefined;
|
|
56
|
+
case "LetVariable" /* LetVariable */:
|
|
57
|
+
return scopeItem.key;
|
|
58
|
+
case "Parameter" /* Parameter */:
|
|
59
|
+
return scopeItem.name;
|
|
60
|
+
case "RecordField" /* RecordField */:
|
|
61
|
+
return scopeItem.key;
|
|
62
|
+
case "SectionMember" /* SectionMember */:
|
|
63
|
+
return scopeItem.key;
|
|
64
|
+
default:
|
|
65
|
+
throw PQP.Assert.isNever(scopeItem);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.findTheCreatorIdentifierOfOneScopeItem = findTheCreatorIdentifierOfOneScopeItem;
|
|
69
|
+
function findDirectUpperScopeExpression(nodeIdMapCollection, nodeId) {
|
|
70
|
+
const astNodeById = nodeIdMapCollection.astNodeById;
|
|
71
|
+
const parentIdById = nodeIdMapCollection.parentIdById;
|
|
72
|
+
let currentNode = astNodeById.get(nodeId);
|
|
73
|
+
while (currentNode &&
|
|
74
|
+
currentNode.kind !== "EachExpression" /* EachExpression */ &&
|
|
75
|
+
currentNode.kind !== "FunctionExpression" /* FunctionExpression */ &&
|
|
76
|
+
currentNode.kind !== "LetExpression" /* LetExpression */ &&
|
|
77
|
+
currentNode.kind !== "RecordExpression" /* RecordExpression */ &&
|
|
78
|
+
currentNode.kind !== "RecordLiteral" /* RecordLiteral */ &&
|
|
79
|
+
currentNode.kind !== "Section" /* Section */) {
|
|
80
|
+
const currentParentId = parentIdById.get(currentNode.id) || -1;
|
|
81
|
+
currentNode = astNodeById.get(currentParentId);
|
|
82
|
+
}
|
|
83
|
+
return currentNode;
|
|
84
|
+
}
|
|
85
|
+
exports.findDirectUpperScopeExpression = findDirectUpperScopeExpression;
|
|
42
86
|
//# sourceMappingURL=scopeUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeUtils.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/scope/scopeUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scopeUtils.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/scope/scopeUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,oDAAoD;AA2BpD,0CAAwB;AACxB,oDAAkC;AAElC,SAAgB,MAAM,CAAC,UAAkC;IACrD,OAAO,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,uBAAuB,CAAC;AACnD,CAAC;AAFD,wBAEC;AAED,SAAgB,aAAa,CAAC,UAAkC;IAC5D,OAAO,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,qCAA8B,CAAC;AAC1D,CAAC;AAFD,sCAEC;AAED,SAAgB,WAAW,CAAC,UAAkC;IAC1D,OAAO,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,iCAA4B,CAAC;AACxD,CAAC;AAFD,kCAEC;AAED,SAAgB,aAAa,CAAC,UAAkC;IAC5D,OAAO,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,qCAA8B,CAAC;AAC1D,CAAC;AAFD,sCAEC;AAED,SAAgB,eAAe,CAAC,UAAkC;IAC9D,OAAO,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,yCAAgC,CAAC;AAC5D,CAAC;AAFD,0CAEC;AAED,SAAgB,WAAW,CAAC,UAAkC;IAC1D,OAAO,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,iCAA4B,CAAC;AACxD,CAAC;AAFD,kCAEC;AAED,SAAgB,sBAAsB,CAClC,SAAgC,EAChC,aAAqB;;IAErB,OAAO,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,CAAC,IAAI,aAAa,EAAE,CAAC,mCAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,CAAC,aAAa,CAAC,CAAC;AAChF,CAAC;AALD,wDAKC;AAED,SAAgB,sCAAsC,CAClD,SAAiC;IAEjC,IAAI,CAAC,SAAS,EAAE;QACZ,OAAO,SAAS,CAAC;KACpB;IAED,QAAQ,SAAS,CAAC,IAAI,EAAE;QACpB,uBAAwB;QACxB;YACI,OAAO,SAAS,CAAC;QACrB;YACI,OAAO,SAAS,CAAC,GAAG,CAAC;QACzB;YACI,OAAO,SAAS,CAAC,IAAI,CAAC;QAC1B;YACI,OAAO,SAAS,CAAC,GAAG,CAAC;QACzB;YACI,OAAO,SAAS,CAAC,GAAG,CAAC;QACzB;YACI,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KAC3C;AACL,CAAC;AAtBD,wFAsBC;AAED,SAAgB,8BAA8B,CAC1C,mBAAyC,EACzC,MAAc;IAEd,MAAM,WAAW,GAAgB,mBAAmB,CAAC,WAAW,CAAC;IACjE,MAAM,YAAY,GAAiB,mBAAmB,CAAC,YAAY,CAAC;IAEpE,IAAI,WAAW,GAA0B,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEjE,OACI,WAAW;QACX,WAAW,CAAC,IAAI,0CAAgC;QAChD,WAAW,CAAC,IAAI,kDAAoC;QACpD,WAAW,CAAC,IAAI,wCAA+B;QAC/C,WAAW,CAAC,IAAI,8CAAkC;QAClD,WAAW,CAAC,IAAI,wCAA+B;QAC/C,WAAW,CAAC,IAAI,4BAAyB,EAC3C;QACE,MAAM,eAAe,GAAW,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACvE,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;KAClD;IAED,OAAO,WAOQ,CAAC;AACpB,CAAC;AA9BD,wEA8BC"}
|