@microsoft/powerquery-language-services 0.3.11 → 0.3.14
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/analysisSettings.d.ts +1 -1
- package/lib/powerquery-language-services/analysis/documentAnalysis.js +1 -1
- package/lib/powerquery-language-services/analysis/documentAnalysis.js.map +1 -1
- package/lib/powerquery-language-services/documentSymbols.d.ts +1 -1
- package/lib/powerquery-language-services/documentSymbols.js +3 -5
- package/lib/powerquery-language-services/documentSymbols.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +3 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +2 -2
- package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/autocomplete/task.js +6 -5
- package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/expectedType.js +5 -1
- package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +13 -5
- package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +17 -6
- package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +57 -42
- package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/task.d.ts +2 -2
- package/lib/powerquery-language-services/inspection/task.js +22 -9
- package/lib/powerquery-language-services/inspection/task.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +7 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js +78 -55
- package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +5 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +12 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +13 -9
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +2 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +5 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +2 -2
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +3 -3
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +7 -7
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +5 -5
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.d.ts +1 -1
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +4 -4
- package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
- package/lib/powerquery-language-services/inspection/type/task.js +12 -6
- package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
- package/lib/powerquery-language-services/inspectionSettings.d.ts +1 -0
- package/lib/powerquery-language-services/inspectionUtils.d.ts +1 -1
- package/lib/powerquery-language-services/inspectionUtils.js +3 -2
- package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
- package/lib/powerquery-language-services/trace.d.ts +16 -8
- package/lib/powerquery-language-services/validate/validate.js +12 -7
- package/lib/powerquery-language-services/validate/validate.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +13 -6
- package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js +6 -2
- package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js +7 -2
- package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
- package/lib/powerquery-language-services/validate/validateLexAndParse.js +10 -4
- package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +1 -1
- package/lib/powerquery-language-services/validate/validationSettings/validationSettings.d.ts +1 -0
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.d.ts +4 -4
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js +24 -14
- package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js.map +1 -1
- package/package.json +3 -3
|
@@ -22,13 +22,14 @@ function tryNodeScope(settings, nodeIdMapCollection, nodeId,
|
|
|
22
22
|
// scopeById may get mutated by adding new entries.
|
|
23
23
|
scopeById) {
|
|
24
24
|
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
const trace = settings.traceManager.entry("Scope" /*
|
|
26
|
-
const
|
|
25
|
+
const trace = settings.traceManager.entry("Inspection.Scope" /* InspectScope */, tryNodeScope.name, settings.maybeInitialCorrelationId);
|
|
26
|
+
const updatedSettings = Object.assign(Object.assign({}, settings), { maybeInitialCorrelationId: trace.id });
|
|
27
|
+
const result = yield powerquery_parser_1.ResultUtils.ensureResultAsync(() => __awaiter(this, void 0, void 0, function* () {
|
|
27
28
|
const ancestry = parser_1.AncestryUtils.assertGetAncestry(nodeIdMapCollection, nodeId);
|
|
28
29
|
if (ancestry.length === 0) {
|
|
29
30
|
return new Map();
|
|
30
31
|
}
|
|
31
|
-
const inspectedDeltaScope = yield inspectScope(
|
|
32
|
+
const inspectedDeltaScope = yield inspectScope(updatedSettings, nodeIdMapCollection, ancestry, scopeById, trace.id);
|
|
32
33
|
const result = powerquery_parser_1.MapUtils.assertGet(inspectedDeltaScope, nodeId, `expected nodeId in scope result`, {
|
|
33
34
|
nodeId,
|
|
34
35
|
});
|
|
@@ -36,7 +37,7 @@ scopeById) {
|
|
|
36
37
|
scopeById.set(key, value);
|
|
37
38
|
}
|
|
38
39
|
return result;
|
|
39
|
-
}));
|
|
40
|
+
}), updatedSettings.locale);
|
|
40
41
|
trace.exit();
|
|
41
42
|
return result;
|
|
42
43
|
});
|
|
@@ -46,13 +47,14 @@ function assertGetOrCreateNodeScope(settings, nodeIdMapCollection, nodeId,
|
|
|
46
47
|
// scopeById may get mutated by adding new entries.
|
|
47
48
|
scopeById) {
|
|
48
49
|
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
-
const trace = settings.traceManager.entry("Scope" /*
|
|
50
|
+
const trace = settings.traceManager.entry("Inspection.Scope" /* InspectScope */, assertGetOrCreateNodeScope.name, settings.maybeInitialCorrelationId);
|
|
51
|
+
const updatedSettings = Object.assign(Object.assign({}, settings), { maybeInitialCorrelationId: trace.id });
|
|
50
52
|
const maybeScope = scopeById.get(nodeId);
|
|
51
53
|
if (maybeScope !== undefined) {
|
|
52
54
|
trace.exit({ ["IsThrowing" /* IsThrowing */]: false });
|
|
53
55
|
return powerquery_parser_1.ResultUtils.boxOk(maybeScope);
|
|
54
56
|
}
|
|
55
|
-
const triedNodeScope = yield tryNodeScope(
|
|
57
|
+
const triedNodeScope = yield tryNodeScope(updatedSettings, nodeIdMapCollection, nodeId, scopeById);
|
|
56
58
|
if (powerquery_parser_1.ResultUtils.isError(triedNodeScope)) {
|
|
57
59
|
trace.exit({ ["IsThrowing" /* IsThrowing */]: true });
|
|
58
60
|
throw triedNodeScope;
|
|
@@ -69,7 +71,8 @@ function maybeDereferencedIdentifier(settings, nodeIdMapCollection, xorNode,
|
|
|
69
71
|
// Else create a new Map instance and return that instead.
|
|
70
72
|
scopeById = new Map()) {
|
|
71
73
|
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
-
const trace = settings.traceManager.entry("Scope" /*
|
|
74
|
+
const trace = settings.traceManager.entry("Inspection.Scope" /* InspectScope */, maybeDereferencedIdentifier.name, settings.maybeInitialCorrelationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
75
|
+
const updatedSettings = Object.assign(Object.assign({}, settings), { maybeInitialCorrelationId: trace.id });
|
|
73
76
|
parser_1.XorNodeUtils.assertIsIdentifier(xorNode);
|
|
74
77
|
if (parser_1.XorNodeUtils.isContextXor(xorNode)) {
|
|
75
78
|
trace.exit({ ["Result" /* Result */]: undefined });
|
|
@@ -90,7 +93,7 @@ scopeById = new Map()) {
|
|
|
90
93
|
default:
|
|
91
94
|
throw powerquery_parser_1.Assert.isNever(identifier);
|
|
92
95
|
}
|
|
93
|
-
const triedNodeScope = yield assertGetOrCreateNodeScope(
|
|
96
|
+
const triedNodeScope = yield assertGetOrCreateNodeScope(updatedSettings, nodeIdMapCollection, xorNode.node.id, scopeById);
|
|
94
97
|
if (powerquery_parser_1.ResultUtils.isError(triedNodeScope)) {
|
|
95
98
|
trace.exit({ ["Result" /* Result */]: triedNodeScope.kind });
|
|
96
99
|
return triedNodeScope;
|
|
@@ -131,7 +134,7 @@ scopeById = new Map()) {
|
|
|
131
134
|
result = Promise.resolve(powerquery_parser_1.ResultUtils.boxOk(xorNode));
|
|
132
135
|
}
|
|
133
136
|
else {
|
|
134
|
-
result = maybeDereferencedIdentifier(
|
|
137
|
+
result = maybeDereferencedIdentifier(updatedSettings, nodeIdMapCollection, maybeNextXorNode, scopeById);
|
|
135
138
|
}
|
|
136
139
|
trace.exit();
|
|
137
140
|
return result;
|
|
@@ -140,9 +143,9 @@ scopeById = new Map()) {
|
|
|
140
143
|
exports.maybeDereferencedIdentifier = maybeDereferencedIdentifier;
|
|
141
144
|
function inspectScope(settings, nodeIdMapCollection, ancestry,
|
|
142
145
|
// scopeById may get mutated by adding new entries.
|
|
143
|
-
scopeById) {
|
|
146
|
+
scopeById, correlationId) {
|
|
144
147
|
return __awaiter(this, void 0, void 0, function* () {
|
|
145
|
-
const trace = settings.traceManager.entry("Scope" /*
|
|
148
|
+
const trace = settings.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectScope.name, correlationId);
|
|
146
149
|
const rootId = ancestry[0].node.id;
|
|
147
150
|
// A scope for the given ancestry has already been generated.
|
|
148
151
|
const maybeCached = scopeById.get(rootId);
|
|
@@ -166,40 +169,41 @@ scopeById) {
|
|
|
166
169
|
state.ancestryIndex = ancestryIndex;
|
|
167
170
|
const xorNode = ancestry[ancestryIndex];
|
|
168
171
|
// eslint-disable-next-line no-await-in-loop
|
|
169
|
-
yield inspectNode(state, xorNode);
|
|
172
|
+
yield inspectNode(state, xorNode, trace.id);
|
|
170
173
|
}
|
|
171
174
|
trace.exit();
|
|
172
175
|
return state.deltaScope;
|
|
173
176
|
});
|
|
174
177
|
}
|
|
175
178
|
// eslint-disable-next-line require-await
|
|
176
|
-
function inspectNode(state, xorNode) {
|
|
179
|
+
function inspectNode(state, xorNode, correlationId) {
|
|
177
180
|
return __awaiter(this, void 0, void 0, function* () {
|
|
178
|
-
const trace = state.traceManager.entry("Scope" /*
|
|
181
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectNode.name, correlationId, __1.TraceUtils.createXorNodeDetails(xorNode));
|
|
179
182
|
switch (xorNode.node.kind) {
|
|
180
183
|
case "EachExpression" /* EachExpression */:
|
|
181
|
-
inspectEachExpression(state, xorNode);
|
|
184
|
+
inspectEachExpression(state, xorNode, trace.id);
|
|
182
185
|
break;
|
|
183
186
|
case "FunctionExpression" /* FunctionExpression */:
|
|
184
|
-
inspectFunctionExpression(state, xorNode);
|
|
187
|
+
inspectFunctionExpression(state, xorNode, trace.id);
|
|
185
188
|
break;
|
|
186
189
|
case "LetExpression" /* LetExpression */:
|
|
187
|
-
inspectLetExpression(state, xorNode);
|
|
190
|
+
inspectLetExpression(state, xorNode, trace.id);
|
|
188
191
|
break;
|
|
189
192
|
case "RecordExpression" /* RecordExpression */:
|
|
190
193
|
case "RecordLiteral" /* RecordLiteral */:
|
|
191
|
-
inspectRecordExpressionOrRecordLiteral(state, xorNode);
|
|
194
|
+
inspectRecordExpressionOrRecordLiteral(state, xorNode, trace.id);
|
|
192
195
|
break;
|
|
193
196
|
case "Section" /* Section */:
|
|
194
|
-
inspectSection(state, xorNode);
|
|
197
|
+
inspectSection(state, xorNode, trace.id);
|
|
195
198
|
break;
|
|
196
199
|
default:
|
|
197
|
-
localGetOrCreateNodeScope(state, xorNode.node.id, undefined);
|
|
200
|
+
localGetOrCreateNodeScope(state, xorNode.node.id, undefined, trace.id);
|
|
198
201
|
}
|
|
199
202
|
trace.exit();
|
|
200
203
|
});
|
|
201
204
|
}
|
|
202
|
-
function inspectEachExpression(state, eachExpr) {
|
|
205
|
+
function inspectEachExpression(state, eachExpr, correlationId) {
|
|
206
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectEachExpression.name, correlationId);
|
|
203
207
|
parser_1.XorNodeUtils.assertIsNodeKind(eachExpr, "EachExpression" /* EachExpression */);
|
|
204
208
|
expandChildScope(state, eachExpr, [1], [
|
|
205
209
|
[
|
|
@@ -211,12 +215,14 @@ function inspectEachExpression(state, eachExpr) {
|
|
|
211
215
|
eachExpression: eachExpr,
|
|
212
216
|
},
|
|
213
217
|
],
|
|
214
|
-
], undefined);
|
|
218
|
+
], undefined, trace.id);
|
|
219
|
+
trace.exit();
|
|
215
220
|
}
|
|
216
|
-
function inspectFunctionExpression(state, fnExpr) {
|
|
221
|
+
function inspectFunctionExpression(state, fnExpr, correlationId) {
|
|
222
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectFunctionExpression.name, correlationId);
|
|
217
223
|
parser_1.XorNodeUtils.assertIsNodeKind(fnExpr, "FunctionExpression" /* FunctionExpression */);
|
|
218
224
|
// Propegates the parent's scope.
|
|
219
|
-
const nodeScope = localGetOrCreateNodeScope(state, fnExpr.node.id, undefined);
|
|
225
|
+
const nodeScope = localGetOrCreateNodeScope(state, fnExpr.node.id, undefined, trace.id);
|
|
220
226
|
const pseudoType = (0, pseudoFunctionExpressionType_1.pseudoFunctionExpressionType)(state.nodeIdMapCollection, fnExpr);
|
|
221
227
|
const newEntries = pseudoType.parameters.map((parameter) => [
|
|
222
228
|
parameter.name.literal,
|
|
@@ -232,26 +238,32 @@ function inspectFunctionExpression(state, fnExpr) {
|
|
|
232
238
|
: undefined,
|
|
233
239
|
},
|
|
234
240
|
]);
|
|
235
|
-
expandChildScope(state, fnExpr, [3], newEntries, nodeScope);
|
|
241
|
+
expandChildScope(state, fnExpr, [3], newEntries, nodeScope, trace.id);
|
|
242
|
+
trace.exit();
|
|
236
243
|
}
|
|
237
|
-
function inspectLetExpression(state, letExpr) {
|
|
244
|
+
function inspectLetExpression(state, letExpr, correlationId) {
|
|
245
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectLetExpression.name, correlationId);
|
|
238
246
|
parser_1.XorNodeUtils.assertIsNodeKind(letExpr, "LetExpression" /* LetExpression */);
|
|
239
247
|
// Propegates the parent's scope.
|
|
240
|
-
const nodeScope = localGetOrCreateNodeScope(state, letExpr.node.id, undefined);
|
|
248
|
+
const nodeScope = localGetOrCreateNodeScope(state, letExpr.node.id, undefined, trace.id);
|
|
241
249
|
const keyValuePairs = parser_1.NodeIdMapIterator.iterLetExpression(state.nodeIdMapCollection, letExpr);
|
|
242
|
-
inspectKeyValuePairs(state, nodeScope, keyValuePairs, createLetVariableScopeItem);
|
|
250
|
+
inspectKeyValuePairs(state, nodeScope, keyValuePairs, createLetVariableScopeItem, trace.id);
|
|
243
251
|
// Places the assignments from the 'let' into LetExpression.expression
|
|
244
252
|
const newEntries = scopeItemsFromKeyValuePairs(keyValuePairs, -1, createLetVariableScopeItem);
|
|
245
|
-
expandChildScope(state, letExpr, [3], newEntries, nodeScope);
|
|
253
|
+
expandChildScope(state, letExpr, [3], newEntries, nodeScope, trace.id);
|
|
254
|
+
trace.exit();
|
|
246
255
|
}
|
|
247
|
-
function inspectRecordExpressionOrRecordLiteral(state, record) {
|
|
256
|
+
function inspectRecordExpressionOrRecordLiteral(state, record, correlationId) {
|
|
257
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectRecordExpressionOrRecordLiteral.name, correlationId);
|
|
248
258
|
parser_1.XorNodeUtils.assertIsRecord(record);
|
|
249
259
|
// Propegates the parent's scope.
|
|
250
|
-
const nodeScope = localGetOrCreateNodeScope(state, record.node.id, undefined);
|
|
260
|
+
const nodeScope = localGetOrCreateNodeScope(state, record.node.id, undefined, trace.id);
|
|
251
261
|
const keyValuePairs = parser_1.NodeIdMapIterator.iterRecord(state.nodeIdMapCollection, record);
|
|
252
|
-
inspectKeyValuePairs(state, nodeScope, keyValuePairs, createRecordMemberScopeItem);
|
|
262
|
+
inspectKeyValuePairs(state, nodeScope, keyValuePairs, createRecordMemberScopeItem, trace.id);
|
|
263
|
+
trace.exit();
|
|
253
264
|
}
|
|
254
|
-
function inspectSection(state, section) {
|
|
265
|
+
function inspectSection(state, section, correlationId) {
|
|
266
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectSection.name, correlationId);
|
|
255
267
|
parser_1.XorNodeUtils.assertIsNodeKind(section, "Section" /* Section */);
|
|
256
268
|
const keyValuePairs = parser_1.NodeIdMapIterator.iterSection(state.nodeIdMapCollection, section);
|
|
257
269
|
for (const kvp of keyValuePairs) {
|
|
@@ -260,42 +272,45 @@ function inspectSection(state, section) {
|
|
|
260
272
|
}
|
|
261
273
|
const newScopeItems = scopeItemsFromKeyValuePairs(keyValuePairs, kvp.key.id, createSectionMemberScopeItem);
|
|
262
274
|
if (newScopeItems.length !== 0) {
|
|
263
|
-
expandScope(state, kvp.maybeValue, newScopeItems, new Map());
|
|
275
|
+
expandScope(state, kvp.maybeValue, newScopeItems, new Map(), trace.id);
|
|
264
276
|
}
|
|
265
277
|
}
|
|
278
|
+
trace.exit();
|
|
266
279
|
}
|
|
267
280
|
// Expands the scope on the value part of the key value pair.
|
|
268
|
-
function inspectKeyValuePairs(state, parentScope, keyValuePairs, createFn) {
|
|
281
|
+
function inspectKeyValuePairs(state, parentScope, keyValuePairs, createFn, correlationId) {
|
|
282
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, inspectKeyValuePairs.name, correlationId);
|
|
269
283
|
for (const kvp of keyValuePairs) {
|
|
270
284
|
if (kvp.maybeValue === undefined) {
|
|
271
285
|
continue;
|
|
272
286
|
}
|
|
273
287
|
const newScopeItems = scopeItemsFromKeyValuePairs(keyValuePairs, kvp.key.id, createFn);
|
|
274
288
|
if (newScopeItems.length !== 0) {
|
|
275
|
-
expandScope(state, kvp.maybeValue, newScopeItems, parentScope);
|
|
289
|
+
expandScope(state, kvp.maybeValue, newScopeItems, parentScope, trace.id);
|
|
276
290
|
}
|
|
277
291
|
}
|
|
292
|
+
trace.exit();
|
|
278
293
|
}
|
|
279
|
-
function expandScope(state, xorNode, newEntries, maybeDefaultScope) {
|
|
280
|
-
const nodeScope = localGetOrCreateNodeScope(state, xorNode.node.id, maybeDefaultScope);
|
|
294
|
+
function expandScope(state, xorNode, newEntries, maybeDefaultScope, correlationId) {
|
|
295
|
+
const nodeScope = localGetOrCreateNodeScope(state, xorNode.node.id, maybeDefaultScope, correlationId);
|
|
281
296
|
for (const [key, value] of newEntries) {
|
|
282
297
|
nodeScope.set(value.isRecursive ? `@${key}` : key, value);
|
|
283
298
|
}
|
|
284
299
|
}
|
|
285
|
-
function expandChildScope(state, parent, childAttributeIds, newEntries, maybeDefaultScope) {
|
|
300
|
+
function expandChildScope(state, parent, childAttributeIds, newEntries, maybeDefaultScope, correlationId) {
|
|
286
301
|
const nodeIdMapCollection = state.nodeIdMapCollection;
|
|
287
302
|
const parentId = parent.node.id;
|
|
288
303
|
// TODO: optimize this
|
|
289
304
|
for (const attributeId of childAttributeIds) {
|
|
290
305
|
const maybeChild = parser_1.NodeIdMapUtils.maybeNthChild(nodeIdMapCollection, parentId, attributeId);
|
|
291
306
|
if (maybeChild !== undefined) {
|
|
292
|
-
expandScope(state, maybeChild, newEntries, maybeDefaultScope);
|
|
307
|
+
expandScope(state, maybeChild, newEntries, maybeDefaultScope, correlationId);
|
|
293
308
|
}
|
|
294
309
|
}
|
|
295
310
|
}
|
|
296
311
|
// Any operation done on a scope should first invoke `scopeFor` for data integrity.
|
|
297
|
-
function localGetOrCreateNodeScope(state, nodeId, maybeDefaultScope) {
|
|
298
|
-
const trace = state.traceManager.entry("Scope" /*
|
|
312
|
+
function localGetOrCreateNodeScope(state, nodeId, maybeDefaultScope, correlationId) {
|
|
313
|
+
const trace = state.traceManager.entry("Inspection.Scope" /* InspectScope */, localGetOrCreateNodeScope.name, correlationId, {
|
|
299
314
|
nodeId,
|
|
300
315
|
});
|
|
301
316
|
// If scopeFor has already been called then there should be a nodeId in the deltaScope.
|
|
@@ -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,oEAA6E;AAC7E,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,mBAAmB,GAAc,MAAM,YAAY,CAAC,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YAE9G,MAAM,MAAM,GAAc,4BAAQ,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,EAAE,iCAAiC,EAAE;gBACzG,MAAM;aACT,CAAC,CAAC;YAEH,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAE;gBACtD,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAC7B;YAED,OAAO,MAAM,CAAC;QAClB,CAAC,CAAA,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,MAAM,CAAC;IAClB,CAAC;CAAA;AAhCD,oCAgCC;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,MAAM,KAAK,GAAyB;YAChC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,UAAU,EAAE,SAAS;YACrB,+EAA+E;YAC/E,qEAAqE;YACrE,UAAU,EAAE,IAAI,GAAG,EAAE;YACrB,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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"}
|
|
@@ -3,11 +3,11 @@ import { NodeIdMap } from "@microsoft/powerquery-parser/lib/powerquery-parser/pa
|
|
|
3
3
|
import { Ast } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
|
|
4
4
|
import type { Position } from "vscode-languageserver-types";
|
|
5
5
|
import { TMaybeActiveNode } from "./activeNode";
|
|
6
|
-
import {
|
|
6
|
+
import { Inspection } from "..";
|
|
7
7
|
import { TriedExpectedType } from "./expectedType";
|
|
8
|
+
import { TriedNodeScope } from "./scope";
|
|
8
9
|
import { TypeCache } from "./typeCache";
|
|
9
10
|
import { Inspected } from "./commonTypes";
|
|
10
|
-
import { Inspection } from "..";
|
|
11
11
|
import { InspectionSettings } from "../inspectionSettings";
|
|
12
12
|
export declare class InspectionInstance implements Inspected {
|
|
13
13
|
readonly settings: InspectionSettings;
|
|
@@ -14,9 +14,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
exports.tryInspect = exports.inspect = exports.InspectionInstance = void 0;
|
|
15
15
|
const PQP = require("@microsoft/powerquery-parser");
|
|
16
16
|
const activeNode_1 = require("./activeNode");
|
|
17
|
-
const scope_1 = require("./scope");
|
|
18
17
|
const scopeUtils_1 = require("./scope/scopeUtils");
|
|
19
18
|
const expectedType_1 = require("./expectedType");
|
|
19
|
+
const scope_1 = require("./scope");
|
|
20
20
|
const type_1 = require("./type");
|
|
21
21
|
const typeCache_1 = require("./typeCache");
|
|
22
22
|
const autocomplete_1 = require("./autocomplete");
|
|
@@ -35,7 +35,11 @@ class InspectionInstance {
|
|
|
35
35
|
this.parseState = parseState;
|
|
36
36
|
}
|
|
37
37
|
tryNodeScope(id) {
|
|
38
|
-
|
|
38
|
+
const trace = this.settings.traceManager.entry("Inspect" /* Inspect */, scope_1.tryNodeScope.name, this.settings.maybeInitialCorrelationId);
|
|
39
|
+
const updatedSettings = Object.assign(Object.assign({}, this.settings), { maybeInitialCorrelationId: trace.id });
|
|
40
|
+
const result = (0, scope_1.tryNodeScope)(updatedSettings, this.nodeIdMapCollection, id, this.typeCache.scopeById);
|
|
41
|
+
trace.exit();
|
|
42
|
+
return result;
|
|
39
43
|
}
|
|
40
44
|
collectAllIdentifiersBeneath(valueCreator) {
|
|
41
45
|
var _a, _b, _c, _d, _e;
|
|
@@ -101,35 +105,42 @@ function inspect(settings, parseState, maybeParseError, position,
|
|
|
101
105
|
// Else create a new TypeCache and include it in the return.
|
|
102
106
|
typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
|
|
103
107
|
return __awaiter(this, void 0, void 0, function* () {
|
|
108
|
+
const trace = settings.traceManager.entry("Inspect" /* Inspect */, inspect.name, settings.maybeInitialCorrelationId);
|
|
109
|
+
const updatedSettings = Object.assign(Object.assign({}, settings), { maybeInitialCorrelationId: trace.id });
|
|
104
110
|
const nodeIdMapCollection = parseState.contextState.nodeIdMapCollection;
|
|
105
111
|
// We should only get an undefined for activeNode iff the document is empty
|
|
106
112
|
const maybeActiveNode = activeNode_1.ActiveNodeUtils.maybeActiveNode(nodeIdMapCollection, position);
|
|
107
|
-
const triedCurrentInvokeExpression = (0, currentInvokeExpression_1.tryCurrentInvokeExpression)(
|
|
113
|
+
const triedCurrentInvokeExpression = (0, currentInvokeExpression_1.tryCurrentInvokeExpression)(updatedSettings, nodeIdMapCollection, maybeActiveNode, typeCache);
|
|
108
114
|
let triedNodeScope;
|
|
109
115
|
let triedScopeType;
|
|
110
116
|
let triedExpectedType;
|
|
111
117
|
if (activeNode_1.ActiveNodeUtils.isPositionInBounds(maybeActiveNode)) {
|
|
112
118
|
const activeNode = maybeActiveNode;
|
|
113
|
-
triedNodeScope = (0, scope_1.tryNodeScope)(
|
|
119
|
+
triedNodeScope = (0, scope_1.tryNodeScope)(updatedSettings, nodeIdMapCollection, activeNode_1.ActiveNodeUtils.assertGetLeaf(activeNode).node.id, typeCache.scopeById);
|
|
114
120
|
const ancestryLeaf = PQP.Parser.AncestryUtils.assertGetLeaf(activeNode.ancestry);
|
|
115
|
-
triedScopeType = (0, type_1.tryScopeType)(
|
|
116
|
-
triedExpectedType = (0, expectedType_1.tryExpectedType)(
|
|
121
|
+
triedScopeType = (0, type_1.tryScopeType)(updatedSettings, nodeIdMapCollection, ancestryLeaf.node.id, typeCache);
|
|
122
|
+
triedExpectedType = (0, expectedType_1.tryExpectedType)(updatedSettings, activeNode);
|
|
117
123
|
}
|
|
118
124
|
else {
|
|
119
125
|
triedNodeScope = Promise.resolve(PQP.ResultUtils.boxOk(new Map()));
|
|
120
126
|
triedScopeType = Promise.resolve(PQP.ResultUtils.boxOk(new Map()));
|
|
121
127
|
triedExpectedType = PQP.ResultUtils.boxOk(undefined);
|
|
122
128
|
}
|
|
123
|
-
|
|
129
|
+
const result = new InspectionInstance(updatedSettings, nodeIdMapCollection, maybeActiveNode, yield (0, autocomplete_1.autocomplete)(updatedSettings, parseState, typeCache, maybeActiveNode, maybeParseError), triedCurrentInvokeExpression, triedNodeScope, triedScopeType, triedExpectedType, typeCache, parseState);
|
|
130
|
+
trace.exit();
|
|
131
|
+
return result;
|
|
124
132
|
});
|
|
125
133
|
}
|
|
126
134
|
exports.inspect = inspect;
|
|
127
135
|
function tryInspect(settings, text, position, typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
|
|
128
136
|
return __awaiter(this, void 0, void 0, function* () {
|
|
129
|
-
const
|
|
137
|
+
const trace = settings.traceManager.entry("Inspect" /* Inspect */, tryInspect.name, settings.maybeInitialCorrelationId);
|
|
138
|
+
const updatedSettings = Object.assign(Object.assign({}, settings), { maybeInitialCorrelationId: trace.id });
|
|
139
|
+
const triedLexParse = yield PQP.TaskUtils.tryLexParse(updatedSettings, text);
|
|
130
140
|
let parseState;
|
|
131
141
|
let maybeParseError;
|
|
132
142
|
if (PQP.TaskUtils.isLexStageError(triedLexParse) || PQP.TaskUtils.isParseStageCommonError(triedLexParse)) {
|
|
143
|
+
trace.exit({ ["IsError" /* IsError */]: true });
|
|
133
144
|
return PQP.ResultUtils.boxError(triedLexParse.error);
|
|
134
145
|
}
|
|
135
146
|
else if (PQP.TaskUtils.isParseStageError(triedLexParse)) {
|
|
@@ -139,7 +150,9 @@ function tryInspect(settings, text, position, typeCache = typeCache_1.TypeCacheU
|
|
|
139
150
|
else {
|
|
140
151
|
parseState = triedLexParse.parseState;
|
|
141
152
|
}
|
|
142
|
-
|
|
153
|
+
const result = PQP.ResultUtils.boxOk(inspect(updatedSettings, parseState, maybeParseError, position, typeCache));
|
|
154
|
+
trace.exit({ ["IsError" /* IsError */]: false });
|
|
155
|
+
return result;
|
|
143
156
|
});
|
|
144
157
|
}
|
|
145
158
|
exports.tryInspect = tryInspect;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/task.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AAKpD,6CAA6E;
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/task.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,12 +12,12 @@ export interface InspectTypeState extends PQP.CommonSettings, Omit<InspectionSet
|
|
|
12
12
|
readonly scopeById: ScopeById;
|
|
13
13
|
}
|
|
14
14
|
export declare function allForAnyUnion(anyUnion: Type.AnyUnion, conditionFn: (type: Type.TPowerQueryType) => boolean): boolean;
|
|
15
|
-
export declare function assertGetOrCreateNodeScope(state: InspectTypeState, nodeId: number): Promise<NodeScope>;
|
|
16
|
-
export declare function getOrCreateScope(state: InspectTypeState, nodeId: number): Promise<Inspection.TriedNodeScope>;
|
|
15
|
+
export declare function assertGetOrCreateNodeScope(state: InspectTypeState, nodeId: number, maybeCorrelationId: number | undefined): Promise<NodeScope>;
|
|
16
|
+
export declare function getOrCreateScope(state: InspectTypeState, nodeId: number, maybeCorrelationId: number | undefined): Promise<Inspection.TriedNodeScope>;
|
|
17
17
|
export declare function getOrCreateScopeItemType(state: InspectTypeState, scopeItem: TScopeItem): Promise<Type.TPowerQueryType>;
|
|
18
|
-
export declare function inspectScopeItem(state: InspectTypeState, scopeItem: TScopeItem): Promise<Type.TPowerQueryType>;
|
|
19
|
-
export declare function inspectTypeFromChildAttributeIndex(state: InspectTypeState, parentXorNode: TXorNode, attributeIndex: number): Promise<Type.TPowerQueryType>;
|
|
20
|
-
export declare function inspectXor(state: InspectTypeState, xorNode: TXorNode): Promise<Type.TPowerQueryType>;
|
|
21
|
-
export declare function maybeDereferencedIdentifierType(state: InspectTypeState, xorNode: TXorNode): Promise<Type.TPowerQueryType | undefined>;
|
|
22
|
-
export declare function recursiveIdentifierDereference(state: InspectTypeState, xorNode: TXorNode): Promise<TXorNode>;
|
|
18
|
+
export declare function inspectScopeItem(state: InspectTypeState, scopeItem: TScopeItem, maybeCorrelationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
19
|
+
export declare function inspectTypeFromChildAttributeIndex(state: InspectTypeState, parentXorNode: TXorNode, attributeIndex: number, maybeCorrelationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
20
|
+
export declare function inspectXor(state: InspectTypeState, xorNode: TXorNode, maybeCorrelationId: number | undefined): Promise<Type.TPowerQueryType>;
|
|
21
|
+
export declare function maybeDereferencedIdentifierType(state: InspectTypeState, xorNode: TXorNode, maybeCorrelationId: number | undefined): Promise<Type.TPowerQueryType | undefined>;
|
|
22
|
+
export declare function recursiveIdentifierDereference(state: InspectTypeState, xorNode: TXorNode, maybeCorrelationId: number | undefined): Promise<TXorNode>;
|
|
23
23
|
export declare function createParameterType(parameter: ParameterScopeItem): Type.TPrimitiveType;
|