@microsoft/powerquery-language-services 0.2.19 → 0.3.1

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 (226) hide show
  1. package/lib/powerquery-language-services/analysis/analysisBase.d.ts +4 -6
  2. package/lib/powerquery-language-services/analysis/analysisBase.js +118 -223
  3. package/lib/powerquery-language-services/analysis/analysisBase.js.map +1 -1
  4. package/lib/powerquery-language-services/analysis/analysisSettings.d.ts +2 -2
  5. package/lib/powerquery-language-services/analysis/analysisUtils.js +1 -1
  6. package/lib/powerquery-language-services/analysis/analysisUtils.js.map +1 -1
  7. package/lib/powerquery-language-services/analysis/documentAnalysis.d.ts +0 -2
  8. package/lib/powerquery-language-services/analysis/documentAnalysis.js +11 -32
  9. package/lib/powerquery-language-services/analysis/documentAnalysis.js.map +1 -1
  10. package/lib/powerquery-language-services/commonTypes.js +1 -1
  11. package/lib/powerquery-language-services/commonTypes.js.map +1 -1
  12. package/lib/powerquery-language-services/documentSymbols.d.ts +1 -1
  13. package/lib/powerquery-language-services/documentSymbols.js +62 -111
  14. package/lib/powerquery-language-services/documentSymbols.js.map +1 -1
  15. package/lib/powerquery-language-services/formatter.d.ts +1 -1
  16. package/lib/powerquery-language-services/formatter.js +35 -34
  17. package/lib/powerquery-language-services/formatter.js.map +1 -1
  18. package/lib/powerquery-language-services/index.js +2 -2
  19. package/lib/powerquery-language-services/index.js.map +1 -1
  20. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js +74 -131
  21. package/lib/powerquery-language-services/inspection/activeNode/activeNodeUtils.js.map +1 -1
  22. package/lib/powerquery-language-services/inspection/activeNode/index.js +1 -1
  23. package/lib/powerquery-language-services/inspection/activeNode/index.js.map +1 -1
  24. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.d.ts +1 -1
  25. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js +117 -187
  26. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteFieldAccess.js.map +1 -1
  27. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js +28 -28
  28. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteItem/autocompleteItemUtils.js.map +1 -1
  29. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.d.ts +2 -2
  30. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js +97 -114
  31. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeyword.js.map +1 -1
  32. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js +11 -11
  33. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordDefault.js.map +1 -1
  34. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js +9 -9
  35. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordErrorHandlingExpression.js.map +1 -1
  36. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js +5 -5
  37. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordIdentifierPairedExpression.js.map +1 -1
  38. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.d.ts +1 -1
  39. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js +43 -56
  40. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordLetExpression.js.map +1 -1
  41. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js +10 -10
  42. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordListExpression.js.map +1 -1
  43. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.d.ts +1 -1
  44. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js +11 -11
  45. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordSectionMember.js.map +1 -1
  46. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js +5 -5
  47. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/autocompleteKeywordTrailingText.js.map +1 -1
  48. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.d.ts +1 -1
  49. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js +28 -28
  50. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteKeyword/common.js.map +1 -1
  51. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js +28 -31
  52. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteLanguageConstant.js.map +1 -1
  53. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js +19 -23
  54. package/lib/powerquery-language-services/inspection/autocomplete/autocompletePrimitiveType.js.map +1 -1
  55. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteUtils.js +5 -5
  56. package/lib/powerquery-language-services/inspection/autocomplete/autocompleteUtils.js.map +1 -1
  57. package/lib/powerquery-language-services/inspection/autocomplete/common.js +2 -13
  58. package/lib/powerquery-language-services/inspection/autocomplete/common.js.map +1 -1
  59. package/lib/powerquery-language-services/inspection/autocomplete/index.js +1 -1
  60. package/lib/powerquery-language-services/inspection/autocomplete/index.js.map +1 -1
  61. package/lib/powerquery-language-services/inspection/autocomplete/task.d.ts +1 -1
  62. package/lib/powerquery-language-services/inspection/autocomplete/task.js +36 -25
  63. package/lib/powerquery-language-services/inspection/autocomplete/task.js.map +1 -1
  64. package/lib/powerquery-language-services/inspection/commonTypes.d.ts +6 -5
  65. package/lib/powerquery-language-services/inspection/expectedType.js +18 -18
  66. package/lib/powerquery-language-services/inspection/expectedType.js.map +1 -1
  67. package/lib/powerquery-language-services/inspection/externalType/externalType.d.ts +2 -2
  68. package/lib/powerquery-language-services/inspection/externalType/externalType.js +2 -1
  69. package/lib/powerquery-language-services/inspection/externalType/externalType.js.map +1 -1
  70. package/lib/powerquery-language-services/inspection/externalType/externalTypeUtils.js +3 -3
  71. package/lib/powerquery-language-services/inspection/externalType/externalTypeUtils.js.map +1 -1
  72. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.d.ts +1 -1
  73. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js +49 -66
  74. package/lib/powerquery-language-services/inspection/invokeExpression/currentInvokeExpression.js.map +1 -1
  75. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.d.ts +1 -1
  76. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js +74 -99
  77. package/lib/powerquery-language-services/inspection/invokeExpression/invokeExpression.js.map +1 -1
  78. package/lib/powerquery-language-services/inspection/jaroWinkler.js +26 -42
  79. package/lib/powerquery-language-services/inspection/jaroWinkler.js.map +1 -1
  80. package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js +18 -51
  81. package/lib/powerquery-language-services/inspection/pseudoFunctionExpressionType.js.map +1 -1
  82. package/lib/powerquery-language-services/inspection/scope/scopeInspection.d.ts +3 -3
  83. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js +221 -275
  84. package/lib/powerquery-language-services/inspection/scope/scopeInspection.js.map +1 -1
  85. package/lib/powerquery-language-services/inspection/task.d.ts +2 -2
  86. package/lib/powerquery-language-services/inspection/task.js +52 -41
  87. package/lib/powerquery-language-services/inspection/task.js.map +1 -1
  88. package/lib/powerquery-language-services/inspection/type/index.js +1 -1
  89. package/lib/powerquery-language-services/inspection/type/index.js.map +1 -1
  90. package/lib/powerquery-language-services/inspection/type/inspectType/common.d.ts +9 -9
  91. package/lib/powerquery-language-services/inspection/type/inspectType/common.js +353 -338
  92. package/lib/powerquery-language-services/inspection/type/inspectType/common.js.map +1 -1
  93. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.d.ts +1 -1
  94. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js +31 -41
  95. package/lib/powerquery-language-services/inspection/type/inspectType/examineFieldSpecificationList.js.map +1 -1
  96. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js +3 -3
  97. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeConstant.js.map +1 -1
  98. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.d.ts +1 -1
  99. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js +29 -19
  100. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeEachExpression.js.map +1 -1
  101. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.d.ts +1 -1
  102. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js +27 -17
  103. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeErrorHandlingExpression.js.map +1 -1
  104. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.d.ts +4 -0
  105. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js +68 -0
  106. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/common.js.map +1 -0
  107. package/lib/powerquery-language-services/inspection/type/inspectType/{inspectTypeFieldProjection.d.ts → inspectTypeField/inspectTypeFieldProjection.d.ts} +2 -2
  108. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js +103 -0
  109. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldProjection.js.map +1 -0
  110. package/lib/powerquery-language-services/inspection/type/inspectType/{inspectTypeFieldSelector.d.ts → inspectTypeField/inspectTypeFieldSelector.d.ts} +2 -2
  111. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js +76 -0
  112. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeField/inspectTypeFieldSelector.js.map +1 -0
  113. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.d.ts +1 -1
  114. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js +24 -12
  115. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSpecification.js.map +1 -1
  116. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.d.ts +1 -1
  117. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js +65 -55
  118. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionExpression.js.map +1 -1
  119. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.d.ts +1 -1
  120. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js +43 -35
  121. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFunctionType.js.map +1 -1
  122. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.d.ts +1 -1
  123. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js +28 -18
  124. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifier.js.map +1 -1
  125. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.d.ts +1 -1
  126. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js +28 -18
  127. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIdentifierExpression.js.map +1 -1
  128. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.d.ts +1 -1
  129. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js +42 -30
  130. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeIfExpression.js.map +1 -1
  131. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.d.ts +1 -1
  132. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js +55 -64
  133. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeInvokeExpression.js.map +1 -1
  134. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.d.ts +1 -1
  135. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js +26 -16
  136. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeList.js.map +1 -1
  137. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.d.ts +1 -1
  138. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js +34 -24
  139. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeListType.js.map +1 -1
  140. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js +9 -10
  141. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeLiteralExpression.js.map +1 -1
  142. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.d.ts +1 -1
  143. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js +33 -23
  144. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeNullCoalescingExpression.js.map +1 -1
  145. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.d.ts +1 -1
  146. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js +22 -23
  147. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeParameter.js.map +1 -1
  148. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js +9 -10
  149. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypePrimitiveType.js.map +1 -1
  150. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.d.ts +1 -1
  151. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js +40 -30
  152. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRangeExpression.js.map +1 -1
  153. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.d.ts +1 -1
  154. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js +31 -41
  155. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecord.js.map +1 -1
  156. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.d.ts +1 -1
  157. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js +27 -28
  158. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecordType.js.map +1 -1
  159. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.d.ts +1 -1
  160. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js +44 -54
  161. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeRecursivePrimaryExpression.js.map +1 -1
  162. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.d.ts +1 -1
  163. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js +132 -179
  164. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTBinOpExpression.js.map +1 -1
  165. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.d.ts +1 -1
  166. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js +36 -37
  167. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeTableType.js.map +1 -1
  168. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.d.ts +1 -1
  169. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js +57 -105
  170. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeUnaryExpression.js.map +1 -1
  171. package/lib/powerquery-language-services/inspection/type/task.d.ts +2 -2
  172. package/lib/powerquery-language-services/inspection/type/task.js +59 -104
  173. package/lib/powerquery-language-services/inspection/type/task.js.map +1 -1
  174. package/lib/powerquery-language-services/inspectionSettings.d.ts +2 -0
  175. package/lib/powerquery-language-services/inspectionUtils.d.ts +5 -4
  176. package/lib/powerquery-language-services/inspectionUtils.js +80 -134
  177. package/lib/powerquery-language-services/inspectionUtils.js.map +1 -1
  178. package/lib/powerquery-language-services/languageServiceUtils.js +1 -1
  179. package/lib/powerquery-language-services/languageServiceUtils.js.map +1 -1
  180. package/lib/powerquery-language-services/library/libraryUtils.js +11 -11
  181. package/lib/powerquery-language-services/library/libraryUtils.js.map +1 -1
  182. package/lib/powerquery-language-services/localization/localization.js +9 -13
  183. package/lib/powerquery-language-services/localization/localization.js.map +1 -1
  184. package/lib/powerquery-language-services/localization/localizationUtils.js +1 -1
  185. package/lib/powerquery-language-services/localization/localizationUtils.js.map +1 -1
  186. package/lib/powerquery-language-services/localization/templates.js +43 -43
  187. package/lib/powerquery-language-services/localization/templates.js.map +1 -1
  188. package/lib/powerquery-language-services/positionUtils.d.ts +5 -5
  189. package/lib/powerquery-language-services/positionUtils.js +53 -33
  190. package/lib/powerquery-language-services/positionUtils.js.map +1 -1
  191. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.d.ts +3 -3
  192. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js +40 -95
  193. package/lib/powerquery-language-services/providers/languageCompletionItemProvider.js.map +1 -1
  194. package/lib/powerquery-language-services/providers/librarySymbolProvider.js +63 -138
  195. package/lib/powerquery-language-services/providers/librarySymbolProvider.js.map +1 -1
  196. package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.d.ts +3 -5
  197. package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.js +130 -194
  198. package/lib/powerquery-language-services/providers/localDocumentSymbolProvider.js.map +1 -1
  199. package/lib/powerquery-language-services/providers/nullSymbolProvider.js +18 -52
  200. package/lib/powerquery-language-services/providers/nullSymbolProvider.js.map +1 -1
  201. package/lib/powerquery-language-services/validate/validate.d.ts +1 -1
  202. package/lib/powerquery-language-services/validate/validate.js +38 -42
  203. package/lib/powerquery-language-services/validate/validate.js.map +1 -1
  204. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.d.ts +1 -1
  205. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js +82 -127
  206. package/lib/powerquery-language-services/validate/validateDuplicateIdentifiers.js.map +1 -1
  207. package/lib/powerquery-language-services/validate/validateFunctionExpression.d.ts +1 -1
  208. package/lib/powerquery-language-services/validate/validateFunctionExpression.js +61 -101
  209. package/lib/powerquery-language-services/validate/validateFunctionExpression.js.map +1 -1
  210. package/lib/powerquery-language-services/validate/validateInvokeExpression.d.ts +1 -1
  211. package/lib/powerquery-language-services/validate/validateInvokeExpression.js +61 -98
  212. package/lib/powerquery-language-services/validate/validateInvokeExpression.js.map +1 -1
  213. package/lib/powerquery-language-services/validate/validateLexAndParse.d.ts +1 -1
  214. package/lib/powerquery-language-services/validate/validateLexAndParse.js +114 -122
  215. package/lib/powerquery-language-services/validate/validateLexAndParse.js.map +1 -1
  216. package/lib/powerquery-language-services/validate/validationSettings/validationSettingsUtils.js +1 -12
  217. package/lib/powerquery-language-services/validate/validationSettings/validationSettingsUtils.js.map +1 -1
  218. package/lib/powerquery-language-services/workspaceCache/workspaceCache.d.ts +3 -13
  219. package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.d.ts +7 -8
  220. package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js +93 -147
  221. package/lib/powerquery-language-services/workspaceCache/workspaceCacheUtils.js.map +1 -1
  222. package/package.json +4 -4
  223. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.js +0 -126
  224. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldProjection.js.map +0 -1
  225. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js +0 -67
  226. package/lib/powerquery-language-services/inspection/type/inspectType/inspectTypeFieldSelector.js.map +0 -1
@@ -1,117 +1,99 @@
1
1
  "use strict";
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
- var __read = (this && this.__read) || function (o, n) {
5
- var m = typeof Symbol === "function" && o[Symbol.iterator];
6
- if (!m) return o;
7
- var i = m.call(o), r, ar = [], e;
8
- try {
9
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
10
- }
11
- catch (error) { e = { error: error }; }
12
- finally {
13
- try {
14
- if (r && !r.done && (m = i["return"])) m.call(i);
15
- }
16
- finally { if (e) throw e.error; }
17
- }
18
- return ar;
19
- };
20
- var __values = (this && this.__values) || function(o) {
21
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
22
- if (m) return m.call(o);
23
- if (o && typeof o.length === "number") return {
24
- next: function () {
25
- if (o && i >= o.length) o = void 0;
26
- return { value: o && o[i++], done: !o };
27
- }
28
- };
29
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
4
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6
+ return new (P || (P = Promise))(function (resolve, reject) {
7
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
8
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
9
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
10
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
11
+ });
30
12
  };
31
13
  Object.defineProperty(exports, "__esModule", { value: true });
32
14
  exports.tryInvokeExpression = void 0;
33
- var PQP = require("@microsoft/powerquery-parser");
34
- var powerquery_parser_1 = require("@microsoft/powerquery-parser");
35
- var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
36
- var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
37
- var scope_1 = require("../scope");
38
- var type_1 = require("../type");
39
- var typeCache_1 = require("../typeCache");
15
+ const PQP = require("@microsoft/powerquery-parser");
16
+ const powerquery_parser_1 = require("@microsoft/powerquery-parser");
17
+ const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
18
+ const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
19
+ const scope_1 = require("../scope");
20
+ const type_1 = require("../type");
21
+ const typeCache_1 = require("../typeCache");
40
22
  function tryInvokeExpression(settings, nodeIdMapCollection, invokeExpressionId,
41
23
  // If a TypeCache is given, then potentially add to its values and include it as part of the return,
42
24
  // Else create a new TypeCache and include it in the return.
43
- typeCache) {
44
- if (typeCache === void 0) { typeCache = typeCache_1.TypeCacheUtils.createEmptyCache(); }
45
- return powerquery_parser_1.ResultUtils.ensureResult(settings.locale, function () {
46
- return inspectInvokeExpression(settings, nodeIdMapCollection, invokeExpressionId, typeCache);
47
- });
25
+ typeCache = typeCache_1.TypeCacheUtils.createEmptyCache()) {
26
+ return powerquery_parser_1.ResultUtils.ensureResultAsync(settings.locale, () => inspectInvokeExpression(settings, nodeIdMapCollection, invokeExpressionId, typeCache));
48
27
  }
49
28
  exports.tryInvokeExpression = tryInvokeExpression;
50
29
  function inspectInvokeExpression(settings, nodeIdMapCollection, invokeExpressionId, typeCache) {
51
30
  var _a;
52
- (_a = settings.maybeCancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
53
- var maybeInvokeExpressionXorNode = parser_1.NodeIdMapUtils.maybeXor(nodeIdMapCollection, invokeExpressionId);
54
- if (maybeInvokeExpressionXorNode === undefined) {
55
- throw new PQP.CommonError.InvariantError("expected invokeExpressionId to be present in nodeIdMapCollection", {
56
- invokeExpressionId: invokeExpressionId,
57
- });
58
- }
59
- var invokeExpressionXorNode = maybeInvokeExpressionXorNode;
60
- parser_1.XorNodeUtils.assertIsInvokeExpression(invokeExpressionXorNode);
61
- var previousNode = parser_1.NodeIdMapUtils.assertGetRecursiveExpressionPreviousSibling(nodeIdMapCollection, invokeExpressionId);
62
- var functionType = powerquery_parser_1.Assert.unboxOk((0, type_1.tryType)(settings, nodeIdMapCollection, previousNode.node.id, typeCache));
63
- var maybeName = parser_1.NodeIdMapUtils.maybeInvokeExpressionIdentifierLiteral(nodeIdMapCollection, invokeExpressionId);
64
- var maybeInvokeExpressionArgs;
65
- if (language_1.TypeUtils.isDefinedFunction(functionType)) {
66
- var iterableArguments = parser_1.NodeIdMapIterator.iterInvokeExpression(nodeIdMapCollection, invokeExpressionXorNode);
67
- var givenArgumentTypes = getArgumentTypes(settings, nodeIdMapCollection, typeCache, iterableArguments);
68
- var givenArguments = iterableArguments.slice(0, givenArgumentTypes.length);
69
- var _b = __read(getNumExpectedArguments(functionType), 2), numMinExpectedArguments = _b[0], numMaxExpectedArguments = _b[1];
70
- maybeInvokeExpressionArgs = {
71
- givenArguments: givenArguments,
72
- givenArgumentTypes: givenArgumentTypes,
73
- numMaxExpectedArguments: numMaxExpectedArguments,
74
- numMinExpectedArguments: numMinExpectedArguments,
75
- typeChecked: language_1.TypeUtils.typeCheckInvocation(givenArgumentTypes, functionType),
31
+ return __awaiter(this, void 0, void 0, function* () {
32
+ (_a = settings.maybeCancellationToken) === null || _a === void 0 ? void 0 : _a.throwIfCancelled();
33
+ const maybeInvokeExpressionXorNode = parser_1.NodeIdMapUtils.maybeXor(nodeIdMapCollection, invokeExpressionId);
34
+ if (maybeInvokeExpressionXorNode === undefined) {
35
+ throw new PQP.CommonError.InvariantError(`expected invokeExpressionId to be present in nodeIdMapCollection`, {
36
+ invokeExpressionId,
37
+ });
38
+ }
39
+ const invokeExpressionXorNode = maybeInvokeExpressionXorNode;
40
+ parser_1.XorNodeUtils.assertIsInvokeExpression(invokeExpressionXorNode);
41
+ const previousNode = parser_1.NodeIdMapUtils.assertGetRecursiveExpressionPreviousSibling(nodeIdMapCollection, invokeExpressionId);
42
+ const functionType = powerquery_parser_1.Assert.unboxOk(yield (0, type_1.tryType)(settings, nodeIdMapCollection, previousNode.node.id, typeCache));
43
+ const maybeName = parser_1.NodeIdMapUtils.maybeInvokeExpressionIdentifierLiteral(nodeIdMapCollection, invokeExpressionId);
44
+ let maybeInvokeExpressionArgs;
45
+ if (language_1.TypeUtils.isDefinedFunction(functionType)) {
46
+ const iterableArguments = parser_1.NodeIdMapIterator.iterInvokeExpression(nodeIdMapCollection, invokeExpressionXorNode);
47
+ const givenArgumentTypes = yield getArgumentTypes(settings, nodeIdMapCollection, typeCache, iterableArguments);
48
+ const givenArguments = iterableArguments.slice(0, givenArgumentTypes.length);
49
+ const [numMinExpectedArguments, numMaxExpectedArguments] = getNumExpectedArguments(functionType);
50
+ maybeInvokeExpressionArgs = {
51
+ givenArguments,
52
+ givenArgumentTypes,
53
+ numMaxExpectedArguments,
54
+ numMinExpectedArguments,
55
+ typeChecked: language_1.TypeUtils.typeCheckInvocation(givenArgumentTypes, functionType),
56
+ };
57
+ }
58
+ return {
59
+ invokeExpressionXorNode,
60
+ functionType,
61
+ isNameInLocalScope: yield getIsNameInLocalScope(settings, nodeIdMapCollection, typeCache, invokeExpressionXorNode, maybeName),
62
+ maybeName,
63
+ maybeArguments: maybeInvokeExpressionArgs,
76
64
  };
77
- }
78
- return {
79
- invokeExpressionXorNode: invokeExpressionXorNode,
80
- functionType: functionType,
81
- isNameInLocalScope: getIsNameInLocalScope(settings, nodeIdMapCollection, typeCache, invokeExpressionXorNode, maybeName),
82
- maybeName: maybeName,
83
- maybeArguments: maybeInvokeExpressionArgs,
84
- };
65
+ });
85
66
  }
86
67
  function getIsNameInLocalScope(settings, nodeIdMapCollection, typeCache, invokeExpressionXorNode, maybeName) {
87
- // Try to find out if the identifier is a local or external name.
88
- if (maybeName !== undefined) {
89
- // Seed local scope
90
- var scope = powerquery_parser_1.Assert.unboxOk((0, scope_1.assertGetOrCreateNodeScope)(settings, nodeIdMapCollection, invokeExpressionXorNode.node.id, typeCache.scopeById));
91
- var maybeNameScopeItem = scope.get(maybeName);
92
- return maybeNameScopeItem !== undefined && maybeNameScopeItem.kind !== "Undefined" /* Undefined */;
93
- }
94
- else {
95
- return false;
96
- }
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ // Try to find out if the identifier is a local or external name.
70
+ if (maybeName !== undefined) {
71
+ // Seed local scope
72
+ const scope = powerquery_parser_1.Assert.unboxOk(yield (0, scope_1.assertGetOrCreateNodeScope)(settings, nodeIdMapCollection, invokeExpressionXorNode.node.id, typeCache.scopeById));
73
+ const maybeNameScopeItem = scope.get(maybeName);
74
+ return maybeNameScopeItem !== undefined && maybeNameScopeItem.kind !== "Undefined" /* Undefined */;
75
+ }
76
+ else {
77
+ return false;
78
+ }
79
+ });
97
80
  }
98
81
  function getNumExpectedArguments(functionType) {
99
- var nonOptionalArguments = functionType.parameters.filter(function (parameter) { return !parameter.isOptional; });
100
- var numMinExpectedArguments = nonOptionalArguments.length;
101
- var numMaxExpectedArguments = functionType.parameters.length;
82
+ const nonOptionalArguments = functionType.parameters.filter((parameter) => !parameter.isOptional);
83
+ const numMinExpectedArguments = nonOptionalArguments.length;
84
+ const numMaxExpectedArguments = functionType.parameters.length;
102
85
  return [numMinExpectedArguments, numMaxExpectedArguments];
103
86
  }
104
87
  function getArgumentTypes(settings, nodeIdMapCollection, typeCache, argXorNodes) {
105
- var e_1, _a;
106
- var result = [];
107
- try {
108
- for (var argXorNodes_1 = __values(argXorNodes), argXorNodes_1_1 = argXorNodes_1.next(); !argXorNodes_1_1.done; argXorNodes_1_1 = argXorNodes_1.next()) {
109
- var xorNode = argXorNodes_1_1.value;
110
- var triedArgType = (0, type_1.tryType)(settings, nodeIdMapCollection, xorNode.node.id, typeCache);
88
+ return __awaiter(this, void 0, void 0, function* () {
89
+ const result = [];
90
+ for (const xorNode of argXorNodes) {
91
+ // eslint-disable-next-line no-await-in-loop
92
+ const triedArgType = yield (0, type_1.tryType)(settings, nodeIdMapCollection, xorNode.node.id, typeCache);
111
93
  if (powerquery_parser_1.ResultUtils.isError(triedArgType)) {
112
94
  throw triedArgType;
113
95
  }
114
- var argType = triedArgType.value;
96
+ const argType = triedArgType.value;
115
97
  // Occurs when there's expected to be a trailing argument, but none exist.
116
98
  // Eg. `foo(|` will iterate over an TXorNode which: contains no parsed elements, and evaluates to unknown.
117
99
  if (language_1.TypeUtils.isUnknown(argType) && !parser_1.NodeIdMapUtils.hasParsedToken(nodeIdMapCollection, xorNode.node.id)) {
@@ -120,14 +102,7 @@ function getArgumentTypes(settings, nodeIdMapCollection, typeCache, argXorNodes)
120
102
  }
121
103
  result.push(argType);
122
104
  }
123
- }
124
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
125
- finally {
126
- try {
127
- if (argXorNodes_1_1 && !argXorNodes_1_1.done && (_a = argXorNodes_1.return)) _a.call(argXorNodes_1);
128
- }
129
- finally { if (e_1) throw e_1.error; }
130
- }
131
- return result;
105
+ return result;
106
+ });
132
107
  }
133
108
  //# sourceMappingURL=invokeExpression.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"invokeExpression.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/invokeExpression/invokeExpression.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invokeExpression.js","sourceRoot":"","sources":["../../../../src/powerquery-language-services/inspection/invokeExpression/invokeExpression.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,oDAAoD;AACpD,oEAAmE;AACnE,sFAMmE;AACnE,0FAA8F;AAE9F,oCAA4F;AAE5F,kCAA6C;AAC7C,4CAAyD;AAQzD,SAAgB,mBAAmB,CAC/B,QAA4B,EAC5B,mBAAyC,EACzC,kBAA0B;AAC1B,oGAAoG;AACpG,4DAA4D;AAC5D,YAAuB,0BAAc,CAAC,gBAAgB,EAAE;IAExD,OAAO,+BAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,CACvD,uBAAuB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,SAAS,CAAC,CACxF,CAAC;AACN,CAAC;AAXD,kDAWC;AAED,SAAe,uBAAuB,CAClC,QAA4B,EAC5B,mBAAyC,EACzC,kBAA0B,EAC1B,SAAoB;;;QAEpB,MAAA,QAAQ,CAAC,sBAAsB,0CAAE,gBAAgB,EAAE,CAAC;QAEpD,MAAM,4BAA4B,GAAyB,uBAAc,CAAC,QAAQ,CAC9E,mBAAmB,EACnB,kBAAkB,CACrB,CAAC;QAEF,IAAI,4BAA4B,KAAK,SAAS,EAAE;YAC5C,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC,kEAAkE,EAAE;gBACzG,kBAAkB;aACrB,CAAC,CAAC;SACN;QAED,MAAM,uBAAuB,GAAa,4BAA4B,CAAC;QAEvE,qBAAY,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,CAAC;QAE/D,MAAM,YAAY,GAAa,uBAAc,CAAC,2CAA2C,CACrF,mBAAmB,EACnB,kBAAkB,CACrB,CAAC;QAEF,MAAM,YAAY,GAAyB,0BAAM,CAAC,OAAO,CACrD,MAAM,IAAA,cAAO,EAAC,QAAQ,EAAE,mBAAmB,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAChF,CAAC;QAEF,MAAM,SAAS,GAAuB,uBAAc,CAAC,sCAAsC,CACvF,mBAAmB,EACnB,kBAAkB,CACrB,CAAC;QAEF,IAAI,yBAAgE,CAAC;QAErE,IAAI,oBAAS,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE;YAC3C,MAAM,iBAAiB,GAA4B,0BAAiB,CAAC,oBAAoB,CACrF,mBAAmB,EACnB,uBAAuB,CAC1B,CAAC;YAEF,MAAM,kBAAkB,GAAwC,MAAM,gBAAgB,CAClF,QAAQ,EACR,mBAAmB,EACnB,SAAS,EACT,iBAAiB,CACpB,CAAC;YAEF,MAAM,cAAc,GAA4B,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAEtG,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,CAAC,GACpD,uBAAuB,CAAC,YAAY,CAAC,CAAC;YAE1C,yBAAyB,GAAG;gBACxB,cAAc;gBACd,kBAAkB;gBAClB,uBAAuB;gBACvB,uBAAuB;gBACvB,WAAW,EAAE,oBAAS,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,YAAY,CAAC;aAC/E,CAAC;SACL;QAED,OAAO;YACH,uBAAuB;YACvB,YAAY;YACZ,kBAAkB,EAAE,MAAM,qBAAqB,CAC3C,QAAQ,EACR,mBAAmB,EACnB,SAAS,EACT,uBAAuB,EACvB,SAAS,CACZ;YACD,SAAS;YACT,cAAc,EAAE,yBAAyB;SAC5C,CAAC;;CACL;AAED,SAAe,qBAAqB,CAChC,QAA4B,EAC5B,mBAAyC,EACzC,SAAoB,EACpB,uBAAiC,EACjC,SAA6B;;QAE7B,iEAAiE;QACjE,IAAI,SAAS,KAAK,SAAS,EAAE;YACzB,mBAAmB;YACnB,MAAM,KAAK,GAAc,0BAAM,CAAC,OAAO,CACnC,MAAM,IAAA,kCAA0B,EAC5B,QAAQ,EACR,mBAAmB,EACnB,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAC/B,SAAS,CAAC,SAAS,CACtB,CACJ,CAAC;YAEF,MAAM,kBAAkB,GAA2B,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAExE,OAAO,kBAAkB,KAAK,SAAS,IAAI,kBAAkB,CAAC,IAAI,gCAA4B,CAAC;SAClG;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;CAAA;AAED,SAAS,uBAAuB,CAAC,YAAkC;IAC/D,MAAM,oBAAoB,GAA0C,YAAY,CAAC,UAAU,CAAC,MAAM,CAC9F,CAAC,SAAiC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAC/D,CAAC;IAEF,MAAM,uBAAuB,GAAW,oBAAoB,CAAC,MAAM,CAAC;IACpE,MAAM,uBAAuB,GAAW,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;IAEvE,OAAO,CAAC,uBAAuB,EAAE,uBAAuB,CAAC,CAAC;AAC9D,CAAC;AAED,SAAe,gBAAgB,CAC3B,QAA4B,EAC5B,mBAAyC,EACzC,SAAoB,EACpB,WAAoC;;QAEpC,MAAM,MAAM,GAA2B,EAAE,CAAC;QAE1C,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE;YAC/B,4CAA4C;YAC5C,MAAM,YAAY,GAAc,MAAM,IAAA,cAAO,EAAC,QAAQ,EAAE,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAEzG,IAAI,+BAAW,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;gBACnC,MAAM,YAAY,CAAC;aACtB;YAED,MAAM,OAAO,GAAyB,YAAY,CAAC,KAAK,CAAC;YAEzD,0EAA0E;YAC1E,0GAA0G;YAC1G,IAAI,oBAAS,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAc,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBACtG,0BAAM,CAAC,MAAM,CAAC,OAAO,KAAK,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBAE/D,OAAO,MAAM,CAAC;aACjB;YAED,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACxB;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CAAA"}
@@ -1,44 +1,28 @@
1
1
  "use strict";
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
- var __read = (this && this.__read) || function (o, n) {
5
- var m = typeof Symbol === "function" && o[Symbol.iterator];
6
- if (!m) return o;
7
- var i = m.call(o), r, ar = [], e;
8
- try {
9
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
10
- }
11
- catch (error) { e = { error: error }; }
12
- finally {
13
- try {
14
- if (r && !r.done && (m = i["return"])) m.call(i);
15
- }
16
- finally { if (e) throw e.error; }
17
- }
18
- return ar;
19
- };
20
4
  Object.defineProperty(exports, "__esModule", { value: true });
21
5
  exports.calculateJaroWinkler = exports.calculateJaro = void 0;
22
6
  // https://en.wikipedia.org/wiki/Jaro%E2%80%93Winkler_distance
23
7
  // The standard magic numbers for Winkler adjustments.
24
- var WinklerAdjustment = 0.1;
25
- var WinklerMaxCharacterAdjustment = 4;
26
- var WinklerScoreThreshold = 0.7;
8
+ const WinklerAdjustment = 0.1;
9
+ const WinklerMaxCharacterAdjustment = 4;
10
+ const WinklerScoreThreshold = 0.7;
27
11
  function calculateJaro(left, right) {
28
- var _a = __read(getNormalized(left, right), 2), shorter = _a[0], longer = _a[1];
12
+ const [shorter, longer] = getNormalized(left, right);
29
13
  return calculateJaroForNormalized(shorter, longer);
30
14
  }
31
15
  exports.calculateJaro = calculateJaro;
32
16
  function calculateJaroWinkler(left, right) {
33
- var _a = __read(getNormalized(left, right), 2), shorter = _a[0], longer = _a[1];
34
- var jaroScore = calculateJaroForNormalized(shorter, longer);
17
+ const [shorter, longer] = getNormalized(left, right);
18
+ let jaroScore = calculateJaroForNormalized(shorter, longer);
35
19
  if (jaroScore <= WinklerScoreThreshold) {
36
20
  return jaroScore;
37
21
  }
38
22
  // Adjust score for the number of leading characters that match.
39
23
  // Capped at an upper bound of N leading characters, where N is most commonly `4`.
40
- var upperBound = Math.max(WinklerMaxCharacterAdjustment, shorter.length);
41
- var startingCharIndex = 0;
24
+ const upperBound = Math.max(WinklerMaxCharacterAdjustment, shorter.length);
25
+ let startingCharIndex = 0;
42
26
  while (shorter[startingCharIndex] === longer[startingCharIndex] && startingCharIndex < upperBound) {
43
27
  startingCharIndex += 1;
44
28
  }
@@ -49,19 +33,19 @@ function calculateJaroWinkler(left, right) {
49
33
  }
50
34
  exports.calculateJaroWinkler = calculateJaroWinkler;
51
35
  function calculateJaroForNormalized(shorter, longer) {
52
- var shorterLength = shorter.length;
53
- var longerLength = longer.length;
36
+ const shorterLength = shorter.length;
37
+ const longerLength = longer.length;
54
38
  // When trying to find similar characters limit the search to a window based on longer's length.
55
- var matchingWindowSize = Math.floor(longerLength / 2) - 1;
56
- var shorterMatches = new Array(shorterLength);
57
- var longerMatches = new Array(longerLength);
58
- var numMatches = 0;
59
- for (var longerIndex = 0; longerIndex < longerLength; longerIndex += 1) {
60
- var longerChar = longer[longerIndex];
61
- var matchingWindowStart = Math.max(0, longerIndex - matchingWindowSize);
62
- var matchingWindowEnd = Math.min(longerIndex + matchingWindowSize + 1, shorterLength);
63
- for (var shorterIndex = matchingWindowStart; shorterIndex < matchingWindowEnd; shorterIndex += 1) {
64
- var shorterChar = shorter[shorterIndex];
39
+ const matchingWindowSize = Math.floor(longerLength / 2) - 1;
40
+ const shorterMatches = new Array(shorterLength);
41
+ const longerMatches = new Array(longerLength);
42
+ let numMatches = 0;
43
+ for (let longerIndex = 0; longerIndex < longerLength; longerIndex += 1) {
44
+ const longerChar = longer[longerIndex];
45
+ const matchingWindowStart = Math.max(0, longerIndex - matchingWindowSize);
46
+ const matchingWindowEnd = Math.min(longerIndex + matchingWindowSize + 1, shorterLength);
47
+ for (let shorterIndex = matchingWindowStart; shorterIndex < matchingWindowEnd; shorterIndex += 1) {
48
+ const shorterChar = shorter[shorterIndex];
65
49
  if (longerChar === shorterChar && !shorterMatches[shorterIndex]) {
66
50
  shorterMatches[shorterIndex] = true;
67
51
  longerMatches[longerIndex] = true;
@@ -77,9 +61,9 @@ function calculateJaroForNormalized(shorter, longer) {
77
61
  // `k` is part of an optimization.
78
62
  // It's used to keep a persistent index as we iterate over longerLength,
79
63
  // which will prevent double matching or a double for-loop.
80
- var k = 0;
81
- var numTranspositionsNeeded = 0;
82
- for (var longerIndex = 0; longerIndex < longerLength; longerIndex += 1) {
64
+ let k = 0;
65
+ let numTranspositionsNeeded = 0;
66
+ for (let longerIndex = 0; longerIndex < longerLength; longerIndex += 1) {
83
67
  if (!longerMatches[longerIndex]) {
84
68
  continue;
85
69
  }
@@ -91,9 +75,9 @@ function calculateJaroForNormalized(shorter, longer) {
91
75
  }
92
76
  k += 1;
93
77
  }
94
- var m_over_s1 = numMatches / longerLength;
95
- var m_over_s2 = numMatches / shorterLength;
96
- var mMinusT_over_m = (numMatches - numTranspositionsNeeded) / numMatches;
78
+ const m_over_s1 = numMatches / longerLength;
79
+ const m_over_s2 = numMatches / shorterLength;
80
+ const mMinusT_over_m = (numMatches - numTranspositionsNeeded) / numMatches;
97
81
  return (m_over_s1 + m_over_s2 + mMinusT_over_m) / 3;
98
82
  }
99
83
  function getNormalized(left, right) {
@@ -1 +1 @@
1
- {"version":3,"file":"jaroWinkler.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/jaroWinkler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jaroWinkler.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/jaroWinkler.ts"],"names":[],"mappings":"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"}
@@ -1,63 +1,30 @@
1
1
  "use strict";
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
- var __assign = (this && this.__assign) || function () {
5
- __assign = Object.assign || function(t) {
6
- for (var s, i = 1, n = arguments.length; i < n; i++) {
7
- s = arguments[i];
8
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
9
- t[p] = s[p];
10
- }
11
- return t;
12
- };
13
- return __assign.apply(this, arguments);
14
- };
15
- var __values = (this && this.__values) || function(o) {
16
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
17
- if (m) return m.call(o);
18
- if (o && typeof o.length === "number") return {
19
- next: function () {
20
- if (o && i >= o.length) o = void 0;
21
- return { value: o && o[i++], done: !o };
22
- }
23
- };
24
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
25
- };
26
4
  Object.defineProperty(exports, "__esModule", { value: true });
27
5
  exports.pseudoFunctionExpressionType = void 0;
28
- var language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
29
- var parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
6
+ const language_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/language");
7
+ const parser_1 = require("@microsoft/powerquery-parser/lib/powerquery-parser/parser");
30
8
  function pseudoFunctionExpressionType(nodeIdMapCollection, fnExpr) {
31
- var e_1, _a;
32
9
  parser_1.XorNodeUtils.assertIsNodeKind(fnExpr, "FunctionExpression" /* FunctionExpression */);
33
- var examinedParameters = [];
34
- try {
35
- // Iterates all parameters as TXorNodes if they exist, otherwise early exists from an empty list.
36
- for (var _b = __values(functionParameterXorNodes(nodeIdMapCollection, fnExpr)), _c = _b.next(); !_c.done; _c = _b.next()) {
37
- var parameter = _c.value;
38
- // A parameter isn't examinable if it doesn't have an Ast.Identifier for its name.
39
- var maybeName = parser_1.NodeIdMapUtils.maybeUnboxNthChildIfAstChecked(nodeIdMapCollection, parameter.node.id, 1, "Identifier" /* Identifier */);
40
- if (maybeName === undefined) {
41
- break;
42
- }
43
- var maybeExaminable = language_1.TypeUtils.inspectParameter(nodeIdMapCollection, parser_1.XorNodeUtils.assertAsParameter(parameter));
44
- if (maybeExaminable !== undefined) {
45
- examinedParameters.push(__assign(__assign({}, maybeExaminable), { id: parameter.node.id, name: maybeName }));
46
- }
10
+ const examinedParameters = [];
11
+ // Iterates all parameters as TXorNodes if they exist, otherwise early exists from an empty list.
12
+ for (const parameter of functionParameterXorNodes(nodeIdMapCollection, fnExpr)) {
13
+ // A parameter isn't examinable if it doesn't have an Ast.Identifier for its name.
14
+ const maybeName = parser_1.NodeIdMapUtils.maybeUnboxNthChildIfAstChecked(nodeIdMapCollection, parameter.node.id, 1, "Identifier" /* Identifier */);
15
+ if (maybeName === undefined) {
16
+ break;
47
17
  }
48
- }
49
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
50
- finally {
51
- try {
52
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
18
+ const maybeExaminable = language_1.TypeUtils.inspectParameter(nodeIdMapCollection, parser_1.XorNodeUtils.assertAsParameter(parameter));
19
+ if (maybeExaminable !== undefined) {
20
+ examinedParameters.push(Object.assign(Object.assign({}, maybeExaminable), { id: parameter.node.id, name: maybeName }));
53
21
  }
54
- finally { if (e_1) throw e_1.error; }
55
22
  }
56
- var maybeReturnType = parser_1.NodeIdMapUtils.maybeUnboxNthChildIfAstChecked(nodeIdMapCollection, fnExpr.node.id, 1, "AsNullablePrimitiveType" /* AsNullablePrimitiveType */);
57
- var isReturnNullable;
58
- var returnType;
23
+ const maybeReturnType = parser_1.NodeIdMapUtils.maybeUnboxNthChildIfAstChecked(nodeIdMapCollection, fnExpr.node.id, 1, "AsNullablePrimitiveType" /* AsNullablePrimitiveType */);
24
+ let isReturnNullable;
25
+ let returnType;
59
26
  if (maybeReturnType !== undefined) {
60
- var simplified = language_1.AstUtils.simplifyAsNullablePrimitiveType(maybeReturnType);
27
+ const simplified = language_1.AstUtils.simplifyAsNullablePrimitiveType(maybeReturnType);
61
28
  isReturnNullable = simplified.isNullable;
62
29
  returnType = language_1.TypeUtils.typeKindFromPrimitiveTypeConstantKind(simplified.primitiveTypeConstantKind);
63
30
  }
@@ -76,11 +43,11 @@ function pseudoFunctionExpressionType(nodeIdMapCollection, fnExpr) {
76
43
  }
77
44
  exports.pseudoFunctionExpressionType = pseudoFunctionExpressionType;
78
45
  function functionParameterXorNodes(nodeIdMapCollection, fnExpr) {
79
- var maybeParameterList = parser_1.NodeIdMapUtils.maybeNthChildChecked(nodeIdMapCollection, fnExpr.node.id, 0, "ParameterList" /* ParameterList */);
46
+ const maybeParameterList = parser_1.NodeIdMapUtils.maybeNthChildChecked(nodeIdMapCollection, fnExpr.node.id, 0, "ParameterList" /* ParameterList */);
80
47
  if (maybeParameterList === undefined) {
81
48
  return [];
82
49
  }
83
- var maybeWrappedContent = parser_1.NodeIdMapUtils.maybeUnboxWrappedContent(nodeIdMapCollection, maybeParameterList.node.id);
50
+ const maybeWrappedContent = parser_1.NodeIdMapUtils.maybeUnboxWrappedContent(nodeIdMapCollection, maybeParameterList.node.id);
84
51
  return maybeWrappedContent === undefined
85
52
  ? []
86
53
  : parser_1.NodeIdMapIterator.iterArrayWrapper(nodeIdMapCollection, maybeWrappedContent);
@@ -1 +1 @@
1
- {"version":3,"file":"pseudoFunctionExpressionType.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/pseudoFunctionExpressionType.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;AAElC,wFAA6G;AAC7G,oFAOmE;AAcnE,SAAgB,4BAA4B,CACxC,mBAAyC,EACzC,MAAgB;;IAEhB,qBAAY,CAAC,gBAAgB,CAAyB,MAAM,gDAAkC,CAAC;IAE/F,IAAM,kBAAkB,GAAkC,EAAE,CAAC;;QAE7D,iGAAiG;QACjG,KAAwB,IAAA,KAAA,SAAA,yBAAyB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA,gBAAA,4BAAE;YAA3E,IAAM,SAAS,WAAA;YAChB,kFAAkF;YAClF,IAAM,SAAS,GAA+B,uBAAc,CAAC,8BAA8B,CACvF,mBAAmB,EACnB,SAAS,CAAC,IAAI,CAAC,EAAE,EACjB,CAAC,gCAEJ,CAAC;YAEF,IAAI,SAAS,KAAK,SAAS,EAAE;gBACzB,MAAM;aACT;YAED,IAAM,eAAe,GAAuC,oBAAS,CAAC,gBAAgB,CAClF,mBAAmB,EACnB,qBAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAC5C,CAAC;YAEF,IAAI,eAAe,KAAK,SAAS,EAAE;gBAC/B,kBAAkB,CAAC,IAAI,uBAChB,eAAe,KAClB,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,EACrB,IAAI,EAAE,SAAS,IACjB,CAAC;aACN;SACJ;;;;;;;;;IAED,IAAM,eAAe,GAA4C,uBAAc,CAAC,8BAA8B,CAC1G,mBAAmB,EACnB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,CAAC,0DAEJ,CAAC;IAEF,IAAI,gBAAyB,CAAC;IAC9B,IAAI,UAAyB,CAAC;IAE9B,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,IAAM,UAAU,GAA4B,mBAAQ,CAAC,+BAA+B,CAAC,eAAe,CAAC,CAAC;QACtG,gBAAgB,GAAG,UAAU,CAAC,UAAU,CAAC;QACzC,UAAU,GAAG,oBAAS,CAAC,qCAAqC,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;KACtG;SAAM;QACH,gBAAgB,GAAG,IAAI,CAAC;QACxB,UAAU,kBAAoB,CAAC;KAClC;IAED,OAAO;QACH,UAAU,EAAE,kBAAkB;QAC9B,UAAU,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,iBAAiB,EAAE,SAAS;YAC5B,UAAU,EAAE,gBAAgB;SAC/B;KACJ,CAAC;AACN,CAAC;AA/DD,oEA+DC;AAED,SAAS,yBAAyB,CAC9B,mBAAyC,EACzC,MAAgB;IAEhB,IAAM,kBAAkB,GACpB,uBAAc,CAAC,oBAAoB,CAC/B,mBAAmB,EACnB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,CAAC,sCAEJ,CAAC;IAEN,IAAI,kBAAkB,KAAK,SAAS,EAAE;QAClC,OAAO,EAAE,CAAC;KACb;IAED,IAAM,mBAAmB,GAAyB,uBAAc,CAAC,wBAAwB,CACrF,mBAAmB,EACnB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAC7B,CAAC;IAEF,OAAO,mBAAmB,KAAK,SAAS;QACpC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,0BAAiB,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;AACvF,CAAC"}
1
+ {"version":3,"file":"pseudoFunctionExpressionType.js","sourceRoot":"","sources":["../../../src/powerquery-language-services/inspection/pseudoFunctionExpressionType.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,0FAA6G;AAC7G,sFAOmE;AAcnE,SAAgB,4BAA4B,CACxC,mBAAyC,EACzC,MAAgB;IAEhB,qBAAY,CAAC,gBAAgB,CAAyB,MAAM,gDAAkC,CAAC;IAE/F,MAAM,kBAAkB,GAAkC,EAAE,CAAC;IAE7D,iGAAiG;IACjG,KAAK,MAAM,SAAS,IAAI,yBAAyB,CAAC,mBAAmB,EAAE,MAAM,CAAC,EAAE;QAC5E,kFAAkF;QAClF,MAAM,SAAS,GAA+B,uBAAc,CAAC,8BAA8B,CACvF,mBAAmB,EACnB,SAAS,CAAC,IAAI,CAAC,EAAE,EACjB,CAAC,gCAEJ,CAAC;QAEF,IAAI,SAAS,KAAK,SAAS,EAAE;YACzB,MAAM;SACT;QAED,MAAM,eAAe,GAAuC,oBAAS,CAAC,gBAAgB,CAClF,mBAAmB,EACnB,qBAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAC5C,CAAC;QAEF,IAAI,eAAe,KAAK,SAAS,EAAE;YAC/B,kBAAkB,CAAC,IAAI,iCAChB,eAAe,KAClB,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,EACrB,IAAI,EAAE,SAAS,IACjB,CAAC;SACN;KACJ;IAED,MAAM,eAAe,GACjB,uBAAc,CAAC,8BAA8B,CACzC,mBAAmB,EACnB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,CAAC,0DAEJ,CAAC;IAEN,IAAI,gBAAyB,CAAC;IAC9B,IAAI,UAAyB,CAAC;IAE9B,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,MAAM,UAAU,GAA4B,mBAAQ,CAAC,+BAA+B,CAAC,eAAe,CAAC,CAAC;QACtG,gBAAgB,GAAG,UAAU,CAAC,UAAU,CAAC;QACzC,UAAU,GAAG,oBAAS,CAAC,qCAAqC,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;KACtG;SAAM;QACH,gBAAgB,GAAG,IAAI,CAAC;QACxB,UAAU,kBAAoB,CAAC;KAClC;IAED,OAAO;QACH,UAAU,EAAE,kBAAkB;QAC9B,UAAU,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,iBAAiB,EAAE,SAAS;YAC5B,UAAU,EAAE,gBAAgB;SAC/B;KACJ,CAAC;AACN,CAAC;AAhED,oEAgEC;AAED,SAAS,yBAAyB,CAC9B,mBAAyC,EACzC,MAAgB;IAEhB,MAAM,kBAAkB,GACpB,uBAAc,CAAC,oBAAoB,CAC/B,mBAAmB,EACnB,MAAM,CAAC,IAAI,CAAC,EAAE,EACd,CAAC,sCAEJ,CAAC;IAEN,IAAI,kBAAkB,KAAK,SAAS,EAAE;QAClC,OAAO,EAAE,CAAC;KACb;IAED,MAAM,mBAAmB,GAAyB,uBAAc,CAAC,wBAAwB,CACrF,mBAAmB,EACnB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAC7B,CAAC;IAEF,OAAO,mBAAmB,KAAK,SAAS;QACpC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,0BAAiB,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;AACvF,CAAC"}
@@ -2,6 +2,6 @@ import * as PQP from "@microsoft/powerquery-parser";
2
2
  import { NodeIdMap, TXorNode } from "@microsoft/powerquery-parser/lib/powerquery-parser/parser";
3
3
  import { Inspection } from "../..";
4
4
  import { ScopeById, TriedNodeScope } from "./scope";
5
- export declare function tryNodeScope(settings: PQP.CommonSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, scopeById: ScopeById): TriedNodeScope;
6
- export declare function assertGetOrCreateNodeScope(settings: PQP.CommonSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, scopeById: ScopeById): Inspection.TriedNodeScope;
7
- export declare function maybeDereferencedIdentifier(settings: PQP.CommonSettings, nodeIdMapCollection: NodeIdMap.Collection, xorNode: TXorNode, scopeById?: ScopeById): PQP.Result<TXorNode | undefined, PQP.CommonError.CommonError>;
5
+ export declare function tryNodeScope(settings: PQP.CommonSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, scopeById: ScopeById): Promise<TriedNodeScope>;
6
+ export declare function assertGetOrCreateNodeScope(settings: PQP.CommonSettings, nodeIdMapCollection: NodeIdMap.Collection, nodeId: number, scopeById: ScopeById): Promise<Inspection.TriedNodeScope>;
7
+ export declare function maybeDereferencedIdentifier(settings: PQP.CommonSettings, nodeIdMapCollection: NodeIdMap.Collection, xorNode: TXorNode, scopeById?: ScopeById): Promise<PQP.Result<TXorNode | undefined, PQP.CommonError.CommonError>>;