@microsoft/powerquery-language-services 0.3.9 → 0.3.12

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.
Files changed (121) hide show
  1. package/lib/powerquery-language-services/analysis/analysisBase.js +25 -14
  2. package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
  3. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +3 -2
  4. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
  5. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +1 -1
  6. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
  7. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +2 -2
  8. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
  9. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +2 -2
  10. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
  11. package/lib/powerquery-language-services/inspection/autocomplete/task.js +6 -5
  12. package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
  13. package/lib/powerquery-language-services/inspection/commonTypes.d.ts +3 -1
  14. package/lib/powerquery-language-services/inspection/expectedType.js +5 -1
  15. package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
  16. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +13 -5
  17. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
  18. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +17 -6
  19. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
  20. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +57 -42
  21. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
  22. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js +1 -2
  23. package/lib/powerquery-language-services/inspection/scope/scopeUtils.js.map +1 -1
  24. package/lib/powerquery-language-services/inspection/task.d.ts +21 -0
  25. package/lib/powerquery-language-services/inspection/task.js +41 -20
  26. package/lib/powerquery-language-services/inspection/task.js.map +1 -1
  27. package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +7 -7
  28. package/lib/powerquery-language-services/inspection/type/inspectType/common.js +78 -55
  29. package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
  30. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.d.ts +1 -1
  31. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +3 -3
  32. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
  33. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts +1 -1
  34. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +4 -4
  35. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
  36. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.d.ts +1 -1
  37. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +5 -5
  38. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
  39. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.d.ts +1 -1
  40. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +4 -4
  41. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -1
  42. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.d.ts +1 -1
  43. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +3 -3
  44. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -1
  45. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.d.ts +1 -1
  46. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +3 -3
  47. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -1
  48. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +1 -1
  49. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +4 -4
  50. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
  51. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.d.ts +1 -1
  52. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +3 -3
  53. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
  54. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.d.ts +1 -1
  55. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +3 -3
  56. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
  57. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.d.ts +1 -1
  58. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +4 -4
  59. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
  60. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.d.ts +1 -1
  61. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +4 -4
  62. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
  63. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.d.ts +1 -1
  64. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +12 -9
  65. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
  66. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.d.ts +1 -1
  67. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +13 -9
  68. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
  69. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.d.ts +1 -1
  70. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +4 -4
  71. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
  72. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.d.ts +1 -1
  73. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +4 -4
  74. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
  75. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.d.ts +1 -1
  76. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +2 -2
  77. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
  78. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.d.ts +1 -1
  79. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +5 -5
  80. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
  81. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.d.ts +1 -1
  82. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +4 -4
  83. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
  84. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.d.ts +1 -1
  85. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +2 -2
  86. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
  87. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.d.ts +1 -1
  88. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +4 -4
  89. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
  90. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.d.ts +1 -1
  91. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +4 -4
  92. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
  93. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.d.ts +1 -1
  94. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +3 -3
  95. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
  96. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.d.ts +1 -1
  97. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +4 -4
  98. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
  99. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.d.ts +1 -1
  100. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +7 -7
  101. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
  102. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.d.ts +1 -1
  103. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +5 -5
  104. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
  105. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.d.ts +1 -1
  106. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +4 -4
  107. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
  108. package/lib/powerquery-language-services/inspection/type/task.js +10 -6
  109. package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
  110. package/lib/powerquery-language-services/trace.d.ts +16 -8
  111. package/lib/powerquery-language-services/validate/validate.js +12 -7
  112. package/lib/powerquery-language-services/validate/validate.js.map +1 -1
  113. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +13 -6
  114. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
  115. package/lib/powerquery-language-services/validate/validateFunctionExpression.js +6 -2
  116. package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
  117. package/lib/powerquery-language-services/validate/validateInvokeExpression.js +7 -2
  118. package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
  119. package/lib/powerquery-language-services/validate/validateLexAndParse.js +10 -4
  120. package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +1 -1
  121. package/package.json +7 -4
@@ -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" /* Scope */, tryNodeScope.name);
26
- const result = yield powerquery_parser_1.ResultUtils.ensureResultAsync(settings.locale, () => __awaiter(this, void 0, void 0, function* () {
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(settings, nodeIdMapCollection, ancestry, scopeById);
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" /* Scope */, assertGetOrCreateNodeScope.name);
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(settings, nodeIdMapCollection, nodeId, scopeById);
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" /* Scope */, maybeDereferencedIdentifier.name, __1.TraceUtils.createXorNodeDetails(xorNode));
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(settings, nodeIdMapCollection, xorNode.node.id, scopeById);
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(settings, nodeIdMapCollection, maybeNextXorNode, scopeById);
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" /* Scope */, inspectScope.name);
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" /* Scope */, inspectNode.name, __1.TraceUtils.createXorNodeDetails(xorNode));
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" /* Scope */, localGetOrCreateNodeScope.name, {
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":"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"}
1
+ {"version":3,"file":"scopeInspection.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/scope/scopeInspection.ts"],"names":[],"mappings":"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"}
@@ -41,8 +41,7 @@ function isUndefined(maybeValue) {
41
41
  }
42
42
  exports.isUndefined = isUndefined;
43
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);
44
+ return nodeScope === null || nodeScope === void 0 ? void 0 : nodeScope.get(literalString);
46
45
  }
47
46
  exports.findScopeItemByLiteral = findScopeItemByLiteral;
48
47
  function findTheCreatorIdentifierOfOneScopeItem(scopeItem) {
@@ -1 +1 @@
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"}
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,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,CAAC,aAAa,CAAC,CAAC;AACzC,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"}
@@ -1,7 +1,28 @@
1
1
  import * as PQP from "@microsoft/powerquery-parser";
2
+ import { NodeIdMap } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
3
+ import { Ast } from "@microsoft/powerquery-parser/lib/powerquery-parser/language";
2
4
  import type { Position } from "vscode-languageserver-types";
5
+ import { TMaybeActiveNode } from "./activeNode";
6
+ import { Inspection } from "..";
7
+ import { TriedExpectedType } from "./expectedType";
8
+ import { TriedNodeScope } from "./scope";
3
9
  import { TypeCache } from "./typeCache";
4
10
  import { Inspected } from "./commonTypes";
5
11
  import { InspectionSettings } from "../inspectionSettings";
12
+ export declare class InspectionInstance implements Inspected {
13
+ readonly settings: InspectionSettings;
14
+ readonly nodeIdMapCollection: NodeIdMap.Collection;
15
+ readonly maybeActiveNode: TMaybeActiveNode;
16
+ readonly autocomplete: Inspection.Autocomplete;
17
+ readonly triedCurrentInvokeExpression: Promise<Inspection.TriedCurrentInvokeExpression>;
18
+ readonly triedNodeScope: Promise<Inspection.TriedNodeScope>;
19
+ readonly triedScopeType: Promise<Inspection.TriedScopeType>;
20
+ readonly triedExpectedType: TriedExpectedType;
21
+ readonly typeCache: TypeCache;
22
+ readonly parseState: PQP.Parser.ParseState;
23
+ constructor(settings: InspectionSettings, nodeIdMapCollection: NodeIdMap.Collection, maybeActiveNode: TMaybeActiveNode, autocomplete: Inspection.Autocomplete, triedCurrentInvokeExpression: Promise<Inspection.TriedCurrentInvokeExpression>, triedNodeScope: Promise<Inspection.TriedNodeScope>, triedScopeType: Promise<Inspection.TriedScopeType>, triedExpectedType: TriedExpectedType, typeCache: TypeCache, parseState: PQP.Parser.ParseState);
24
+ tryNodeScope(id: number): Promise<TriedNodeScope>;
25
+ collectAllIdentifiersBeneath(valueCreator: Ast.Identifier | Ast.GeneralizedIdentifier): Promise<Array<Ast.Identifier | Ast.GeneralizedIdentifier>>;
26
+ }
6
27
  export declare function inspect(settings: InspectionSettings, parseState: PQP.Parser.ParseState, maybeParseError: PQP.Parser.ParseError.ParseError | undefined, position: Position, typeCache?: TypeCache): Promise<Inspected>;
7
28
  export declare function tryInspect(settings: InspectionSettings, text: string, position: Position, typeCache?: TypeCache): Promise<PQP.Result<Promise<Inspected>, PQP.Lexer.LexError.TLexError | PQP.Parser.ParseError.TParseError>>;
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  });
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.tryInspect = exports.inspect = void 0;
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
17
  const scopeUtils_1 = require("./scope/scopeUtils");
@@ -34,47 +34,58 @@ class InspectionInstance {
34
34
  this.typeCache = typeCache;
35
35
  this.parseState = parseState;
36
36
  }
37
+ tryNodeScope(id) {
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;
43
+ }
37
44
  collectAllIdentifiersBeneath(valueCreator) {
45
+ var _a, _b, _c, _d, _e;
38
46
  return __awaiter(this, void 0, void 0, function* () {
39
47
  const astNodeById = this.nodeIdMapCollection.astNodeById;
40
48
  const childIdsById = this.nodeIdMapCollection.childIdsById;
41
49
  const originLiteral = valueCreator.literal;
42
50
  const entry = (0, scopeUtils_1.findDirectUpperScopeExpression)(this.nodeIdMapCollection, valueCreator.id);
43
51
  if (entry) {
44
- const allIdentifierIdSet = this.nodeIdMapCollection.idsByNodeKind.get("Identifier" /* Identifier */) || new Set();
52
+ const allIdentifierIdSet = (_a = this.nodeIdMapCollection.idsByNodeKind.get("Identifier" /* Identifier */)) !== null && _a !== void 0 ? _a : new Set();
53
+ const allGeneralizedIdentifierIdSet = (_b = this.nodeIdMapCollection.idsByNodeKind.get("GeneralizedIdentifier" /* GeneralizedIdentifier */)) !== null && _b !== void 0 ? _b : new Set();
45
54
  const current = entry;
46
55
  const idsByTiers = [];
47
- let currentTier = (childIdsById.get(current.id) || []).slice();
56
+ let currentTier = ((_c = childIdsById.get(current.id)) !== null && _c !== void 0 ? _c : []).slice();
48
57
  while (currentTier.length) {
49
- const toBePushed = currentTier.filter((one) => allIdentifierIdSet.has(one));
58
+ const toBePushed = currentTier.filter((one) => allIdentifierIdSet.has(one) || allGeneralizedIdentifierIdSet.has(one));
50
59
  toBePushed.length && idsByTiers.push(toBePushed);
51
60
  currentTier = currentTier.slice();
52
61
  let nextTier = [];
53
62
  while (currentTier.length) {
54
- const oneNode = currentTier.shift() || -1;
55
- const childrenOfTheNode = (childIdsById.get(oneNode) || []).slice();
63
+ const oneNode = (_d = currentTier.shift()) !== null && _d !== void 0 ? _d : -1;
64
+ const childrenOfTheNode = ((_e = childIdsById.get(oneNode)) !== null && _e !== void 0 ? _e : []).slice();
56
65
  nextTier = nextTier.concat(childrenOfTheNode);
57
66
  }
58
67
  currentTier = nextTier;
59
68
  }
60
69
  // filter literal names
61
70
  const completeIdentifierNodes = idsByTiers
62
- .reduce((previousValue, currentValue) => currentValue.concat(previousValue), [])
71
+ .flat(1)
63
72
  .map((one) => astNodeById.get(one))
64
73
  .filter(Boolean);
65
74
  let filteredIdentifierNodes = completeIdentifierNodes.filter((one) => one.literal === originLiteral);
66
75
  // populate the scope items for each
67
76
  yield Promise.all(filteredIdentifierNodes
68
- .filter((oneIdentifier) => oneIdentifier.identifierContextKind === "Value" /* Value */)
69
- .map((oneIdentifier) => (0, scope_1.tryNodeScope)(this.settings, this.nodeIdMapCollection, oneIdentifier.id, this.typeCache.scopeById)));
77
+ .filter((oneIdentifier) => oneIdentifier.kind === "GeneralizedIdentifier" /* GeneralizedIdentifier */ ||
78
+ oneIdentifier.identifierContextKind === "Value" /* Value */)
79
+ .map((oneIdentifier) => this.tryNodeScope(oneIdentifier.id)));
70
80
  filteredIdentifierNodes = filteredIdentifierNodes.filter((oneIdentifierNode) => {
71
- if (oneIdentifierNode.identifierContextKind === "Value" /* Value */) {
81
+ if (oneIdentifierNode.kind === "GeneralizedIdentifier" /* GeneralizedIdentifier */) {
82
+ return oneIdentifierNode.id === valueCreator.id;
83
+ }
84
+ else if (oneIdentifierNode.identifierContextKind === "Value" /* Value */) {
72
85
  const theScope = this.typeCache.scopeById.get(oneIdentifierNode.id);
73
86
  const theScopeItem = (0, scopeUtils_1.findScopeItemByLiteral)(theScope, originLiteral);
74
87
  const theCreatorIdentifier = (0, scopeUtils_1.findTheCreatorIdentifierOfOneScopeItem)(theScopeItem);
75
- return (theCreatorIdentifier &&
76
- theCreatorIdentifier.kind === "Identifier" /* Identifier */ &&
77
- theCreatorIdentifier.id === valueCreator.id);
88
+ return theCreatorIdentifier && theCreatorIdentifier.id === valueCreator.id;
78
89
  }
79
90
  else if (oneIdentifierNode.identifierContextKind === "Key" /* Key */ ||
80
91
  oneIdentifierNode.identifierContextKind === "Parameter" /* Parameter */) {
@@ -88,40 +99,48 @@ class InspectionInstance {
88
99
  });
89
100
  }
90
101
  }
102
+ exports.InspectionInstance = InspectionInstance;
91
103
  function inspect(settings, parseState, maybeParseError, position,
92
104
  // If a TypeCache is given, then potentially add to its values and include it as part of the return,
93
105
  // Else create a new TypeCache and include it in the return.
94
106
  typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
95
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 });
96
110
  const nodeIdMapCollection = parseState.contextState.nodeIdMapCollection;
97
111
  // We should only get an undefined for activeNode iff the document is empty
98
112
  const maybeActiveNode = activeNode_1.ActiveNodeUtils.maybeActiveNode(nodeIdMapCollection, position);
99
- const triedCurrentInvokeExpression = (0, currentInvokeExpression_1.tryCurrentInvokeExpression)(settings, nodeIdMapCollection, maybeActiveNode, typeCache);
113
+ const triedCurrentInvokeExpression = (0, currentInvokeExpression_1.tryCurrentInvokeExpression)(updatedSettings, nodeIdMapCollection, maybeActiveNode, typeCache);
100
114
  let triedNodeScope;
101
115
  let triedScopeType;
102
116
  let triedExpectedType;
103
117
  if (activeNode_1.ActiveNodeUtils.isPositionInBounds(maybeActiveNode)) {
104
118
  const activeNode = maybeActiveNode;
105
- triedNodeScope = (0, scope_1.tryNodeScope)(settings, nodeIdMapCollection, activeNode_1.ActiveNodeUtils.assertGetLeaf(activeNode).node.id, typeCache.scopeById);
119
+ triedNodeScope = (0, scope_1.tryNodeScope)(updatedSettings, nodeIdMapCollection, activeNode_1.ActiveNodeUtils.assertGetLeaf(activeNode).node.id, typeCache.scopeById);
106
120
  const ancestryLeaf = PQP.Parser.AncestryUtils.assertGetLeaf(activeNode.ancestry);
107
- triedScopeType = (0, type_1.tryScopeType)(settings, nodeIdMapCollection, ancestryLeaf.node.id, typeCache);
108
- triedExpectedType = (0, expectedType_1.tryExpectedType)(settings, activeNode);
121
+ triedScopeType = (0, type_1.tryScopeType)(updatedSettings, nodeIdMapCollection, ancestryLeaf.node.id, typeCache);
122
+ triedExpectedType = (0, expectedType_1.tryExpectedType)(updatedSettings, activeNode);
109
123
  }
110
124
  else {
111
125
  triedNodeScope = Promise.resolve(PQP.ResultUtils.boxOk(new Map()));
112
126
  triedScopeType = Promise.resolve(PQP.ResultUtils.boxOk(new Map()));
113
127
  triedExpectedType = PQP.ResultUtils.boxOk(undefined);
114
128
  }
115
- return new InspectionInstance(settings, nodeIdMapCollection, maybeActiveNode, yield (0, autocomplete_1.autocomplete)(settings, parseState, typeCache, maybeActiveNode, maybeParseError), triedCurrentInvokeExpression, triedNodeScope, triedScopeType, triedExpectedType, typeCache, parseState);
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;
116
132
  });
117
133
  }
118
134
  exports.inspect = inspect;
119
135
  function tryInspect(settings, text, position, typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
120
136
  return __awaiter(this, void 0, void 0, function* () {
121
- const triedLexParse = yield PQP.TaskUtils.tryLexParse(settings, text);
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);
122
140
  let parseState;
123
141
  let maybeParseError;
124
142
  if (PQP.TaskUtils.isLexStageError(triedLexParse) || PQP.TaskUtils.isParseStageCommonError(triedLexParse)) {
143
+ trace.exit({ ["IsError" /* IsError */]: true });
125
144
  return PQP.ResultUtils.boxError(triedLexParse.error);
126
145
  }
127
146
  else if (PQP.TaskUtils.isParseStageError(triedLexParse)) {
@@ -131,7 +150,9 @@ function tryInspect(settings, text, position, typeCache = typeCache_1.TypeCacheU
131
150
  else {
132
151
  parseState = triedLexParse.parseState;
133
152
  }
134
- return PQP.ResultUtils.boxOk(inspect(settings, parseState, maybeParseError, position, typeCache));
153
+ const result = PQP.ResultUtils.boxOk(inspect(updatedSettings, parseState, maybeParseError, position, typeCache));
154
+ trace.exit({ ["IsError" /* IsError */]: false });
155
+ return result;
135
156
  });
136
157
  }
137
158
  exports.tryInspect = tryInspect;
@@ -1 +1 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/task.ts"],"names":[],"mappings":"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"}
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;