brighterscript 0.66.0-alpha.9 → 0.67.0

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 (472) hide show
  1. package/CHANGELOG.md +116 -73
  2. package/README.md +14 -418
  3. package/dist/BsConfig.d.ts +25 -2
  4. package/dist/Cache.js +3 -3
  5. package/dist/Cache.js.map +1 -1
  6. package/dist/CodeActionUtil.d.ts +3 -3
  7. package/dist/CodeActionUtil.js.map +1 -1
  8. package/dist/CommentFlagProcessor.d.ts +3 -4
  9. package/dist/CommentFlagProcessor.js +4 -3
  10. package/dist/CommentFlagProcessor.js.map +1 -1
  11. package/dist/DependencyGraph.js +8 -8
  12. package/dist/DependencyGraph.js.map +1 -1
  13. package/dist/DiagnosticFilterer.d.ts +8 -4
  14. package/dist/DiagnosticFilterer.js +71 -38
  15. package/dist/DiagnosticFilterer.js.map +1 -1
  16. package/dist/DiagnosticMessages.d.ts +15 -36
  17. package/dist/DiagnosticMessages.js +15 -61
  18. package/dist/DiagnosticMessages.js.map +1 -1
  19. package/dist/DiagnosticSeverityAdjuster.js +3 -0
  20. package/dist/DiagnosticSeverityAdjuster.js.map +1 -1
  21. package/dist/FunctionScope.d.ts +2 -3
  22. package/dist/FunctionScope.js +0 -3
  23. package/dist/FunctionScope.js.map +1 -1
  24. package/dist/LanguageServer.d.ts +1 -2
  25. package/dist/LanguageServer.js +29 -35
  26. package/dist/LanguageServer.js.map +1 -1
  27. package/dist/Logger.d.ts +5 -9
  28. package/dist/Logger.js +18 -22
  29. package/dist/Logger.js.map +1 -1
  30. package/dist/PluginInterface.d.ts +13 -15
  31. package/dist/PluginInterface.js +16 -70
  32. package/dist/PluginInterface.js.map +1 -1
  33. package/dist/Program.d.ts +105 -138
  34. package/dist/Program.js +479 -702
  35. package/dist/Program.js.map +1 -1
  36. package/dist/ProgramBuilder.d.ts +8 -19
  37. package/dist/ProgramBuilder.js +82 -87
  38. package/dist/ProgramBuilder.js.map +1 -1
  39. package/dist/Scope.d.ts +56 -46
  40. package/dist/Scope.js +281 -217
  41. package/dist/Scope.js.map +1 -1
  42. package/dist/Stopwatch.js +1 -1
  43. package/dist/Stopwatch.js.map +1 -1
  44. package/dist/SymbolTable.d.ts +12 -68
  45. package/dist/SymbolTable.js +28 -213
  46. package/dist/SymbolTable.js.map +1 -1
  47. package/dist/XmlScope.d.ts +5 -7
  48. package/dist/XmlScope.js +36 -76
  49. package/dist/XmlScope.js.map +1 -1
  50. package/dist/astUtils/{Editor.d.ts → AstEditor.d.ts} +1 -6
  51. package/dist/astUtils/{Editor.js → AstEditor.js} +3 -9
  52. package/dist/astUtils/AstEditor.js.map +1 -0
  53. package/dist/astUtils/{Editor.spec.js → AstEditor.spec.js} +6 -10
  54. package/dist/astUtils/AstEditor.spec.js.map +1 -0
  55. package/dist/astUtils/creators.d.ts +8 -19
  56. package/dist/astUtils/creators.js +22 -54
  57. package/dist/astUtils/creators.js.map +1 -1
  58. package/dist/astUtils/creators.spec.js +0 -10
  59. package/dist/astUtils/creators.spec.js.map +1 -1
  60. package/dist/astUtils/reflection.d.ts +45 -81
  61. package/dist/astUtils/reflection.js +157 -220
  62. package/dist/astUtils/reflection.js.map +1 -1
  63. package/dist/astUtils/reflection.spec.js +19 -96
  64. package/dist/astUtils/reflection.spec.js.map +1 -1
  65. package/dist/astUtils/stackedVisitor.spec.js.map +1 -1
  66. package/dist/astUtils/visitors.d.ts +14 -18
  67. package/dist/astUtils/visitors.js +9 -22
  68. package/dist/astUtils/visitors.js.map +1 -1
  69. package/dist/astUtils/visitors.spec.js +9 -62
  70. package/dist/astUtils/visitors.spec.js.map +1 -1
  71. package/dist/astUtils/xml.d.ts +9 -9
  72. package/dist/astUtils/xml.js +6 -6
  73. package/dist/astUtils/xml.js.map +1 -1
  74. package/dist/bscPlugin/BscPlugin.d.ts +8 -11
  75. package/dist/bscPlugin/BscPlugin.js +21 -29
  76. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  77. package/dist/bscPlugin/CallExpressionInfo.d.ts +6 -5
  78. package/dist/bscPlugin/CallExpressionInfo.js +2 -2
  79. package/dist/bscPlugin/CallExpressionInfo.js.map +1 -1
  80. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +11 -11
  81. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  82. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +4 -4
  83. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  84. package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +1 -49
  85. package/dist/bscPlugin/completions/CompletionsProcessor.js +23 -424
  86. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
  87. package/dist/bscPlugin/definition/DefinitionProvider.d.ts +13 -0
  88. package/dist/bscPlugin/definition/DefinitionProvider.js +200 -0
  89. package/dist/bscPlugin/definition/DefinitionProvider.js.map +1 -0
  90. package/dist/bscPlugin/definition/DefinitionProvider.spec.js +87 -0
  91. package/dist/bscPlugin/definition/DefinitionProvider.spec.js.map +1 -0
  92. package/dist/bscPlugin/hover/HoverProcessor.d.ts +3 -7
  93. package/dist/bscPlugin/hover/HoverProcessor.js +88 -128
  94. package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -1
  95. package/dist/bscPlugin/hover/HoverProcessor.spec.js +24 -336
  96. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -1
  97. package/dist/bscPlugin/references/ReferencesProvider.d.ts +12 -0
  98. package/dist/bscPlugin/references/ReferencesProvider.js +56 -0
  99. package/dist/bscPlugin/references/ReferencesProvider.js.map +1 -0
  100. package/dist/bscPlugin/references/ReferencesProvider.spec.js +51 -0
  101. package/dist/bscPlugin/references/ReferencesProvider.spec.js.map +1 -0
  102. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +0 -1
  103. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +5 -49
  104. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  105. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +0 -22
  106. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
  107. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.d.ts +7 -0
  108. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.js +22 -0
  109. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.js.map +1 -0
  110. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js +290 -0
  111. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js.map +1 -0
  112. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.d.ts +7 -0
  113. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.js +26 -0
  114. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.js.map +1 -0
  115. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js +245 -0
  116. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js.map +1 -0
  117. package/dist/bscPlugin/symbols/symbolUtils.d.ts +5 -0
  118. package/dist/bscPlugin/symbols/symbolUtils.js +140 -0
  119. package/dist/bscPlugin/symbols/symbolUtils.js.map +1 -0
  120. package/dist/bscPlugin/transpile/{BrsFileTranspileProcessor.d.ts → BrsFilePreTranspileProcessor.d.ts} +2 -4
  121. package/dist/bscPlugin/transpile/{BrsFileTranspileProcessor.js → BrsFilePreTranspileProcessor.js} +15 -36
  122. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +1 -0
  123. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +46 -0
  124. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +1 -0
  125. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +1 -0
  126. package/dist/bscPlugin/validation/BrsFileValidator.js +30 -41
  127. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  128. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +2 -2
  129. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -1
  130. package/dist/bscPlugin/validation/ProgramValidator.d.ts +3 -3
  131. package/dist/bscPlugin/validation/ProgramValidator.js +6 -6
  132. package/dist/bscPlugin/validation/ProgramValidator.js.map +1 -1
  133. package/dist/bscPlugin/validation/ScopeValidator.d.ts +6 -28
  134. package/dist/bscPlugin/validation/ScopeValidator.js +166 -387
  135. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  136. package/dist/bscPlugin/validation/XmlFileValidator.js +9 -9
  137. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
  138. package/dist/diagnosticUtils.d.ts +2 -3
  139. package/dist/diagnosticUtils.js +5 -5
  140. package/dist/diagnosticUtils.js.map +1 -1
  141. package/dist/examples/plugins/removePrint.js +1 -1
  142. package/dist/examples/plugins/removePrint.js.map +1 -1
  143. package/dist/files/BrsFile.Class.spec.js +143 -114
  144. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  145. package/dist/files/BrsFile.d.ts +61 -83
  146. package/dist/files/BrsFile.js +552 -607
  147. package/dist/files/BrsFile.js.map +1 -1
  148. package/dist/files/BrsFile.spec.js +1365 -1201
  149. package/dist/files/BrsFile.spec.js.map +1 -1
  150. package/dist/files/XmlFile.d.ts +28 -56
  151. package/dist/files/XmlFile.js +103 -89
  152. package/dist/files/XmlFile.js.map +1 -1
  153. package/dist/files/XmlFile.spec.js +179 -122
  154. package/dist/files/XmlFile.spec.js.map +1 -1
  155. package/dist/files/tests/imports.spec.js +19 -29
  156. package/dist/files/tests/imports.spec.js.map +1 -1
  157. package/dist/files/tests/optionalChaning.spec.js +14 -14
  158. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  159. package/dist/globalCallables.js +83 -88
  160. package/dist/globalCallables.js.map +1 -1
  161. package/dist/index.d.ts +1 -9
  162. package/dist/index.js +1 -9
  163. package/dist/index.js.map +1 -1
  164. package/dist/interfaces.d.ts +173 -423
  165. package/dist/interfaces.js +0 -24
  166. package/dist/interfaces.js.map +1 -1
  167. package/dist/lexer/Lexer.d.ts +9 -15
  168. package/dist/lexer/Lexer.js +35 -46
  169. package/dist/lexer/Lexer.js.map +1 -1
  170. package/dist/lexer/Lexer.spec.js +48 -40
  171. package/dist/lexer/Lexer.spec.js.map +1 -1
  172. package/dist/lexer/Token.d.ts +1 -5
  173. package/dist/lexer/Token.js +1 -1
  174. package/dist/lexer/Token.js.map +1 -1
  175. package/dist/lexer/TokenKind.d.ts +0 -6
  176. package/dist/lexer/TokenKind.js +2 -14
  177. package/dist/lexer/TokenKind.js.map +1 -1
  178. package/dist/logging.d.ts +9 -0
  179. package/dist/logging.js +16 -0
  180. package/dist/logging.js.map +1 -0
  181. package/dist/parser/AstNode.d.ts +6 -90
  182. package/dist/parser/AstNode.js +5 -96
  183. package/dist/parser/AstNode.js.map +1 -1
  184. package/dist/parser/AstNode.spec.js.map +1 -1
  185. package/dist/parser/BrsTranspileState.d.ts +3 -4
  186. package/dist/parser/BrsTranspileState.js +2 -3
  187. package/dist/parser/BrsTranspileState.js.map +1 -1
  188. package/dist/parser/Expression.d.ts +114 -137
  189. package/dist/parser/Expression.js +244 -373
  190. package/dist/parser/Expression.js.map +1 -1
  191. package/dist/parser/Parser.Class.spec.js +19 -46
  192. package/dist/parser/Parser.Class.spec.js.map +1 -1
  193. package/dist/parser/Parser.d.ts +18 -14
  194. package/dist/parser/Parser.js +196 -175
  195. package/dist/parser/Parser.js.map +1 -1
  196. package/dist/parser/Parser.spec.d.ts +0 -2
  197. package/dist/parser/Parser.spec.js +10 -674
  198. package/dist/parser/Parser.spec.js.map +1 -1
  199. package/dist/parser/SGParser.d.ts +6 -44
  200. package/dist/parser/SGParser.js +198 -194
  201. package/dist/parser/SGParser.js.map +1 -1
  202. package/dist/parser/SGParser.spec.js +11 -14
  203. package/dist/parser/SGParser.spec.js.map +1 -1
  204. package/dist/parser/SGTypes.d.ts +52 -280
  205. package/dist/parser/SGTypes.js +185 -562
  206. package/dist/parser/SGTypes.js.map +1 -1
  207. package/dist/parser/Statement.d.ts +140 -172
  208. package/dist/parser/Statement.js +201 -337
  209. package/dist/parser/Statement.js.map +1 -1
  210. package/dist/parser/Statement.spec.js.map +1 -1
  211. package/dist/parser/TranspileState.d.ts +3 -2
  212. package/dist/parser/TranspileState.js +8 -10
  213. package/dist/parser/TranspileState.js.map +1 -1
  214. package/dist/parser/tests/Parser.spec.js +3 -5
  215. package/dist/parser/tests/Parser.spec.js.map +1 -1
  216. package/dist/parser/tests/controlFlow/For.spec.js +8 -16
  217. package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
  218. package/dist/parser/tests/controlFlow/ForEach.spec.js +6 -12
  219. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
  220. package/dist/parser/tests/controlFlow/While.spec.js +4 -8
  221. package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
  222. package/dist/parser/tests/expression/Call.spec.js +4 -4
  223. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  224. package/dist/parser/tests/expression/Indexing.spec.js +25 -0
  225. package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
  226. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +73 -29
  227. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  228. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +10 -10
  229. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -1
  230. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +24 -24
  231. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
  232. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +47 -35
  233. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  234. package/dist/parser/tests/expression/TernaryExpression.spec.js +83 -36
  235. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  236. package/dist/parser/tests/expression/UnaryExpression.spec.js +2 -2
  237. package/dist/parser/tests/expression/UnaryExpression.spec.js.map +1 -1
  238. package/dist/parser/tests/statement/ConstStatement.spec.js +26 -27
  239. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -1
  240. package/dist/parser/tests/statement/Continue.spec.js +2 -2
  241. package/dist/parser/tests/statement/Continue.spec.js.map +1 -1
  242. package/dist/parser/tests/statement/Dim.spec.js.map +1 -1
  243. package/dist/parser/tests/statement/Enum.spec.js +393 -90
  244. package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
  245. package/dist/parser/tests/statement/For.spec.js +6 -6
  246. package/dist/parser/tests/statement/For.spec.js.map +1 -1
  247. package/dist/parser/tests/statement/ForEach.spec.js +4 -4
  248. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -1
  249. package/dist/parser/tests/statement/Function.spec.js +1 -1
  250. package/dist/parser/tests/statement/Function.spec.js.map +1 -1
  251. package/dist/parser/tests/statement/InterfaceStatement.spec.js +18 -18
  252. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  253. package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
  254. package/dist/parser/tests/statement/PrintStatement.spec.js +13 -16
  255. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  256. package/dist/parser/tests/statement/ReturnStatement.spec.js +3 -5
  257. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
  258. package/dist/parser/tests/statement/Set.spec.js +13 -26
  259. package/dist/parser/tests/statement/Set.spec.js.map +1 -1
  260. package/dist/parser/tests/statement/Throw.spec.js.map +1 -1
  261. package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
  262. package/dist/preprocessor/Chunk.js +1 -2
  263. package/dist/preprocessor/Chunk.js.map +1 -1
  264. package/dist/preprocessor/Preprocessor.d.ts +3 -4
  265. package/dist/preprocessor/Preprocessor.js +3 -3
  266. package/dist/preprocessor/Preprocessor.js.map +1 -1
  267. package/dist/preprocessor/PreprocessorParser.js +8 -1
  268. package/dist/preprocessor/PreprocessorParser.js.map +1 -1
  269. package/dist/roku-types/data.json +293 -243
  270. package/dist/roku-types/index.d.ts +38 -17
  271. package/dist/types/ArrayType.d.ts +4 -9
  272. package/dist/types/ArrayType.js +24 -72
  273. package/dist/types/ArrayType.js.map +1 -1
  274. package/dist/types/ArrayType.spec.js +10 -39
  275. package/dist/types/ArrayType.spec.js.map +1 -1
  276. package/dist/types/BooleanType.d.ts +4 -8
  277. package/dist/types/BooleanType.js +8 -19
  278. package/dist/types/BooleanType.js.map +1 -1
  279. package/dist/types/BooleanType.spec.js +3 -9
  280. package/dist/types/BooleanType.spec.js.map +1 -1
  281. package/dist/types/BscType.d.ts +2 -29
  282. package/dist/types/BscType.js +0 -113
  283. package/dist/types/BscType.js.map +1 -1
  284. package/dist/types/CustomType.d.ts +9 -0
  285. package/dist/types/CustomType.js +32 -0
  286. package/dist/types/CustomType.js.map +1 -0
  287. package/dist/types/DoubleType.d.ts +4 -8
  288. package/dist/types/DoubleType.js +20 -23
  289. package/dist/types/DoubleType.js.map +1 -1
  290. package/dist/types/DoubleType.spec.js +3 -11
  291. package/dist/types/DoubleType.spec.js.map +1 -1
  292. package/dist/types/DynamicType.d.ts +3 -9
  293. package/dist/types/DynamicType.js +2 -18
  294. package/dist/types/DynamicType.js.map +1 -1
  295. package/dist/types/DynamicType.spec.js +4 -15
  296. package/dist/types/DynamicType.spec.js.map +1 -1
  297. package/dist/types/FloatType.d.ts +4 -8
  298. package/dist/types/FloatType.js +20 -23
  299. package/dist/types/FloatType.js.map +1 -1
  300. package/dist/types/FloatType.spec.js +3 -3
  301. package/dist/types/FloatType.spec.js.map +1 -1
  302. package/dist/types/FunctionType.d.ts +20 -10
  303. package/dist/types/FunctionType.js +52 -27
  304. package/dist/types/FunctionType.js.map +1 -1
  305. package/dist/types/FunctionType.spec.js +23 -0
  306. package/dist/types/FunctionType.spec.js.map +1 -0
  307. package/dist/types/IntegerType.d.ts +4 -8
  308. package/dist/types/IntegerType.js +20 -23
  309. package/dist/types/IntegerType.js.map +1 -1
  310. package/dist/types/IntegerType.spec.js +3 -7
  311. package/dist/types/IntegerType.spec.js.map +1 -1
  312. package/dist/types/InterfaceType.d.ts +10 -12
  313. package/dist/types/InterfaceType.js +48 -23
  314. package/dist/types/InterfaceType.js.map +1 -1
  315. package/dist/types/InterfaceType.spec.js +45 -82
  316. package/dist/types/InterfaceType.spec.js.map +1 -1
  317. package/dist/types/InvalidType.d.ts +4 -7
  318. package/dist/types/InvalidType.js +8 -18
  319. package/dist/types/InvalidType.js.map +1 -1
  320. package/dist/types/InvalidType.spec.js +3 -7
  321. package/dist/types/InvalidType.spec.js.map +1 -1
  322. package/dist/types/LongIntegerType.d.ts +4 -8
  323. package/dist/types/LongIntegerType.js +20 -23
  324. package/dist/types/LongIntegerType.js.map +1 -1
  325. package/dist/types/LongIntegerType.spec.js +3 -9
  326. package/dist/types/LongIntegerType.spec.js.map +1 -1
  327. package/dist/types/ObjectType.d.ts +4 -8
  328. package/dist/types/ObjectType.js +7 -21
  329. package/dist/types/ObjectType.js.map +1 -1
  330. package/dist/types/ObjectType.spec.js +2 -2
  331. package/dist/types/ObjectType.spec.js.map +1 -1
  332. package/dist/types/StringType.d.ts +4 -11
  333. package/dist/types/StringType.js +8 -23
  334. package/dist/types/StringType.js.map +1 -1
  335. package/dist/types/StringType.spec.js +2 -2
  336. package/dist/types/StringType.spec.js.map +1 -1
  337. package/dist/types/UninitializedType.d.ts +3 -7
  338. package/dist/types/UninitializedType.js +3 -14
  339. package/dist/types/UninitializedType.js.map +1 -1
  340. package/dist/types/VoidType.d.ts +4 -8
  341. package/dist/types/VoidType.js +8 -18
  342. package/dist/types/VoidType.js.map +1 -1
  343. package/dist/types/VoidType.spec.js +2 -2
  344. package/dist/types/VoidType.spec.js.map +1 -1
  345. package/dist/util.d.ts +43 -104
  346. package/dist/util.js +243 -640
  347. package/dist/util.js.map +1 -1
  348. package/dist/validators/ClassValidator.d.ts +6 -1
  349. package/dist/validators/ClassValidator.js +61 -20
  350. package/dist/validators/ClassValidator.js.map +1 -1
  351. package/package.json +13 -11
  352. package/dist/ActionPipeline.d.ts +0 -10
  353. package/dist/ActionPipeline.js +0 -40
  354. package/dist/ActionPipeline.js.map +0 -1
  355. package/dist/AstValidationSegmenter.d.ts +0 -25
  356. package/dist/AstValidationSegmenter.js +0 -150
  357. package/dist/AstValidationSegmenter.js.map +0 -1
  358. package/dist/CacheVerifier.d.ts +0 -7
  359. package/dist/CacheVerifier.js +0 -20
  360. package/dist/CacheVerifier.js.map +0 -1
  361. package/dist/astUtils/Editor.js.map +0 -1
  362. package/dist/astUtils/Editor.spec.js.map +0 -1
  363. package/dist/bscPlugin/FileWriter.d.ts +0 -6
  364. package/dist/bscPlugin/FileWriter.js +0 -24
  365. package/dist/bscPlugin/FileWriter.js.map +0 -1
  366. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +0 -1658
  367. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +0 -1
  368. package/dist/bscPlugin/fileProviders/FileProvider.d.ts +0 -9
  369. package/dist/bscPlugin/fileProviders/FileProvider.js +0 -51
  370. package/dist/bscPlugin/fileProviders/FileProvider.js.map +0 -1
  371. package/dist/bscPlugin/serialize/BslibInjector.spec.js +0 -19
  372. package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +0 -1
  373. package/dist/bscPlugin/serialize/BslibManager.d.ts +0 -9
  374. package/dist/bscPlugin/serialize/BslibManager.js +0 -40
  375. package/dist/bscPlugin/serialize/BslibManager.js.map +0 -1
  376. package/dist/bscPlugin/serialize/FileSerializer.d.ts +0 -9
  377. package/dist/bscPlugin/serialize/FileSerializer.js +0 -72
  378. package/dist/bscPlugin/serialize/FileSerializer.js.map +0 -1
  379. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +0 -1
  380. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +0 -41
  381. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +0 -1
  382. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.d.ts +0 -11
  383. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js +0 -53
  384. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js.map +0 -1
  385. package/dist/bscPlugin/validation/ScopeValidator.spec.js +0 -2004
  386. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +0 -1
  387. package/dist/files/AssetFile.d.ts +0 -26
  388. package/dist/files/AssetFile.js +0 -26
  389. package/dist/files/AssetFile.js.map +0 -1
  390. package/dist/files/Factory.d.ts +0 -25
  391. package/dist/files/Factory.js +0 -22
  392. package/dist/files/Factory.js.map +0 -1
  393. package/dist/files/File.d.ts +0 -106
  394. package/dist/files/File.js +0 -16
  395. package/dist/files/File.js.map +0 -1
  396. package/dist/files/LazyFileData.d.ts +0 -20
  397. package/dist/files/LazyFileData.js +0 -54
  398. package/dist/files/LazyFileData.js.map +0 -1
  399. package/dist/files/LazyFileData.spec.js +0 -27
  400. package/dist/files/LazyFileData.spec.js.map +0 -1
  401. package/dist/parser/tests/expression/TypeExpression.spec.js +0 -127
  402. package/dist/parser/tests/expression/TypeExpression.spec.js.map +0 -1
  403. package/dist/types/AssociativeArrayType.d.ts +0 -11
  404. package/dist/types/AssociativeArrayType.js +0 -52
  405. package/dist/types/AssociativeArrayType.js.map +0 -1
  406. package/dist/types/BaseFunctionType.d.ts +0 -9
  407. package/dist/types/BaseFunctionType.js +0 -25
  408. package/dist/types/BaseFunctionType.js.map +0 -1
  409. package/dist/types/BscTypeKind.d.ts +0 -25
  410. package/dist/types/BscTypeKind.js +0 -30
  411. package/dist/types/BscTypeKind.js.map +0 -1
  412. package/dist/types/BuiltInInterfaceAdder.d.ts +0 -23
  413. package/dist/types/BuiltInInterfaceAdder.js +0 -160
  414. package/dist/types/BuiltInInterfaceAdder.js.map +0 -1
  415. package/dist/types/BuiltInInterfaceAdder.spec.d.ts +0 -1
  416. package/dist/types/BuiltInInterfaceAdder.spec.js +0 -116
  417. package/dist/types/BuiltInInterfaceAdder.spec.js.map +0 -1
  418. package/dist/types/ClassType.d.ts +0 -17
  419. package/dist/types/ClassType.js +0 -58
  420. package/dist/types/ClassType.js.map +0 -1
  421. package/dist/types/ClassType.spec.d.ts +0 -1
  422. package/dist/types/ClassType.spec.js +0 -77
  423. package/dist/types/ClassType.spec.js.map +0 -1
  424. package/dist/types/ComponentType.d.ts +0 -26
  425. package/dist/types/ComponentType.js +0 -83
  426. package/dist/types/ComponentType.js.map +0 -1
  427. package/dist/types/EnumType.d.ts +0 -40
  428. package/dist/types/EnumType.js +0 -81
  429. package/dist/types/EnumType.js.map +0 -1
  430. package/dist/types/EnumType.spec.d.ts +0 -1
  431. package/dist/types/EnumType.spec.js +0 -33
  432. package/dist/types/EnumType.spec.js.map +0 -1
  433. package/dist/types/InheritableType.d.ts +0 -28
  434. package/dist/types/InheritableType.js +0 -152
  435. package/dist/types/InheritableType.js.map +0 -1
  436. package/dist/types/NamespaceType.d.ts +0 -12
  437. package/dist/types/NamespaceType.js +0 -28
  438. package/dist/types/NamespaceType.js.map +0 -1
  439. package/dist/types/ReferenceType.d.ts +0 -63
  440. package/dist/types/ReferenceType.js +0 -423
  441. package/dist/types/ReferenceType.js.map +0 -1
  442. package/dist/types/ReferenceType.spec.d.ts +0 -1
  443. package/dist/types/ReferenceType.spec.js +0 -137
  444. package/dist/types/ReferenceType.spec.js.map +0 -1
  445. package/dist/types/TypedFunctionType.d.ts +0 -33
  446. package/dist/types/TypedFunctionType.js +0 -106
  447. package/dist/types/TypedFunctionType.js.map +0 -1
  448. package/dist/types/TypedFunctionType.spec.d.ts +0 -1
  449. package/dist/types/TypedFunctionType.spec.js +0 -122
  450. package/dist/types/TypedFunctionType.spec.js.map +0 -1
  451. package/dist/types/UnionType.d.ts +0 -20
  452. package/dist/types/UnionType.js +0 -123
  453. package/dist/types/UnionType.js.map +0 -1
  454. package/dist/types/UnionType.spec.d.ts +0 -1
  455. package/dist/types/UnionType.spec.js +0 -130
  456. package/dist/types/UnionType.spec.js.map +0 -1
  457. package/dist/types/helper.spec.d.ts +0 -1
  458. package/dist/types/helper.spec.js +0 -145
  459. package/dist/types/helper.spec.js.map +0 -1
  460. package/dist/types/helpers.d.ts +0 -24
  461. package/dist/types/helpers.js +0 -178
  462. package/dist/types/helpers.js.map +0 -1
  463. package/dist/types/index.d.ts +0 -22
  464. package/dist/types/index.js +0 -39
  465. package/dist/types/index.js.map +0 -1
  466. /package/dist/astUtils/{Editor.spec.d.ts → AstEditor.spec.d.ts} +0 -0
  467. /package/dist/bscPlugin/{completions/CompletionsProcessor.spec.d.ts → definition/DefinitionProvider.spec.d.ts} +0 -0
  468. /package/dist/bscPlugin/{serialize/BslibInjector.spec.d.ts → references/ReferencesProvider.spec.d.ts} +0 -0
  469. /package/dist/bscPlugin/{transpile/BrsFileTranspileProcessor.spec.d.ts → symbols/DocumentSymbolProcessor.spec.d.ts} +0 -0
  470. /package/dist/bscPlugin/{validation/ScopeValidator.spec.d.ts → symbols/WorkspaceSymbolProcessor.spec.d.ts} +0 -0
  471. /package/dist/{files/LazyFileData.spec.d.ts → bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.d.ts} +0 -0
  472. /package/dist/{parser/tests/expression/TypeExpression.spec.d.ts → types/FunctionType.spec.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../src/parser/Statement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../src/parser/Statement.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Statement.spec.js","sourceRoot":"","sources":["../../src/parser/Statement.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Statement.spec.js","sourceRoot":"","sources":["../../src/parser/Statement.spec.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { SourceNode } from 'source-map';
2
2
  import type { Range } from 'vscode-languageserver';
3
3
  import type { BsConfig } from '../BsConfig';
4
+ import type { TranspileResult } from '../interfaces';
4
5
  /**
5
6
  * Holds the state of a transpile operation as it works its way through the transpile process
6
7
  */
@@ -37,7 +38,7 @@ export declare class TranspileState {
37
38
  */
38
39
  sourceNode(locatable: {
39
40
  range?: Range;
40
- }, code: string | SourceNode | Array<string | SourceNode>): SourceNode | undefined;
41
+ }, code: string | SourceNode | TranspileResult): SourceNode;
41
42
  /**
42
43
  * Create a SourceNode from a token. This is more efficient than the above `sourceNode` function
43
44
  * because the entire token is passed by reference, instead of the raw string being copied to the parameter,
@@ -53,5 +54,5 @@ export declare class TranspileState {
53
54
  transpileToken(token: {
54
55
  range?: Range;
55
56
  text: string;
56
- }, defaultValue?: string): SourceNode;
57
+ }): string | SourceNode;
57
58
  }
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TranspileState = void 0;
4
4
  const source_map_1 = require("source-map");
5
+ const util_1 = require("../util");
5
6
  /**
6
7
  * Holds the state of a transpile operation as it works its way through the transpile process
7
8
  */
@@ -46,11 +47,11 @@ class TranspileState {
46
47
  * Shorthand for creating a new source node
47
48
  */
48
49
  sourceNode(locatable, code) {
49
- return new source_map_1.SourceNode(
50
+ return util_1.default.sourceNodeFromTranspileResult(
50
51
  //convert 0-based range line to 1-based SourceNode line
51
- locatable.range.start.line + 1,
52
+ locatable.range ? locatable.range.start.line + 1 : null,
52
53
  //range and SourceNode character are both 0-based, so no conversion necessary
53
- locatable.range.start.character, this.srcPath, code);
54
+ locatable.range ? locatable.range.start.character : null, this.srcPath, code);
54
55
  }
55
56
  /**
56
57
  * Create a SourceNode from a token. This is more efficient than the above `sourceNode` function
@@ -60,19 +61,16 @@ class TranspileState {
60
61
  tokenToSourceNode(token) {
61
62
  return new source_map_1.SourceNode(
62
63
  //convert 0-based range line to 1-based SourceNode line
63
- token.range.start.line + 1,
64
+ token.range ? token.range.start.line + 1 : null,
64
65
  //range and SourceNode character are both 0-based, so no conversion necessary
65
- token.range.start.character, this.srcPath, token.text);
66
+ token.range ? token.range.start.character : null, this.srcPath, token.text);
66
67
  }
67
68
  /**
68
69
  * Create a SourceNode from a token, accounting for missing range and multi-line text
69
70
  */
70
- transpileToken(token, defaultValue) {
71
- if (!token && defaultValue !== undefined) {
72
- return new source_map_1.SourceNode(null, null, null, defaultValue);
73
- }
71
+ transpileToken(token) {
74
72
  if (!token.range) {
75
- return new source_map_1.SourceNode(null, null, null, token.text);
73
+ return token.text;
76
74
  }
77
75
  //split multi-line text
78
76
  if (token.range.end.line > token.range.start.line) {
@@ -1 +1 @@
1
- {"version":3,"file":"TranspileState.js","sourceRoot":"","sources":["../../src/parser/TranspileState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TranspileState.js","sourceRoot":"","sources":["../../src/parser/TranspileState.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EOF = exports.rangeMatch = exports.identifier = exports.token = void 0;
4
4
  const TokenKind_1 = require("../../lexer/TokenKind");
5
- const creators_1 = require("../../astUtils/creators");
6
5
  /* A set of utilities to be used while writing tests for the BRS parser. */
7
6
  /**
8
7
  * Creates a token with the given `kind` and (optional) `literal` value.
@@ -11,10 +10,9 @@ function token(kind, text) {
11
10
  return {
12
11
  kind: kind,
13
12
  text: text,
14
- isReserved: TokenKind_1.ReservedWords.has((text || '').toLowerCase()),
15
- range: creators_1.interpolatedRange,
16
- leadingWhitespace: '',
17
- leadingTrivia: []
13
+ isReserved: TokenKind_1.ReservedWords.has((text !== null && text !== void 0 ? text : '').toLowerCase()),
14
+ range: null,
15
+ leadingWhitespace: ''
18
16
  };
19
17
  }
20
18
  exports.token = token;
@@ -1 +1 @@
1
- {"version":3,"file":"Parser.spec.js","sourceRoot":"","sources":["../../../src/parser/tests/Parser.spec.ts"],"names":[],"mappings":";;;AACA,qDAAiE;AACjE,sDAA4D;AAG5D,2EAA2E;AAE3E;;GAEG;AACH,SAAgB,KAAK,CAAC,IAAe,EAAE,IAAa;IAChD,OAAO;QACH,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,yBAAa,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACzD,KAAK,EAAE,4BAAiB;QACxB,iBAAiB,EAAE,EAAE;QACrB,aAAa,EAAE,EAAE;KACpB,CAAC;AACN,CAAC;AATD,sBASC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,IAAY;IACnC,OAAO,KAAK,CAAC,qBAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC;AAFD,gCAEC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,KAAY,EAAE,QAA8B;IACnE,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;QACpD,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS;QAC3D,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI;QAC/D,KAAK,CAAC,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;AAClF,CAAC;AALD,gCAKC;AAED,4BAA4B;AACf,QAAA,GAAG,GAAG,KAAK,CAAC,qBAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"Parser.spec.js","sourceRoot":"","sources":["../../../src/parser/tests/Parser.spec.ts"],"names":[],"mappings":";;;AACA,qDAAiE;AAGjE,2EAA2E;AAE3E;;GAEG;AACH,SAAgB,KAAK,CAAC,IAAe,EAAE,IAAa;IAChD,OAAO;QACH,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,IAAK;QACX,UAAU,EAAE,yBAAa,CAAC,GAAG,CAAC,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACzD,KAAK,EAAE,IAAI;QACX,iBAAiB,EAAE,EAAE;KACxB,CAAC;AACN,CAAC;AARD,sBAQC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,IAAY;IACnC,OAAO,KAAK,CAAC,qBAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC;AAFD,gCAEC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,KAAY,EAAE,QAA8B;IACnE,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;QACpD,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS;QAC3D,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI;QAC/D,KAAK,CAAC,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;AAClF,CAAC;AALD,gCAKC;AAED,4BAA4B;AACf,QAAA,GAAG,GAAG,KAAK,CAAC,qBAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC"}
@@ -98,29 +98,25 @@ describe('parser for loops', () => {
98
98
  kind: TokenKind_1.TokenKind.For,
99
99
  text: 'for',
100
100
  isReserved: true,
101
- range: vscode_languageserver_1.Range.create(0, 0, 0, 3),
102
- leadingTrivia: []
101
+ range: vscode_languageserver_1.Range.create(0, 0, 0, 3)
103
102
  },
104
103
  {
105
104
  kind: TokenKind_1.TokenKind.Identifier,
106
105
  text: 'i',
107
106
  isReserved: false,
108
- range: vscode_languageserver_1.Range.create(0, 4, 0, 5),
109
- leadingTrivia: []
107
+ range: vscode_languageserver_1.Range.create(0, 4, 0, 5)
110
108
  },
111
109
  {
112
110
  kind: TokenKind_1.TokenKind.Equal,
113
111
  text: '=',
114
112
  isReserved: false,
115
- range: vscode_languageserver_1.Range.create(0, 6, 0, 7),
116
- leadingTrivia: []
113
+ range: vscode_languageserver_1.Range.create(0, 6, 0, 7)
117
114
  },
118
115
  {
119
116
  kind: TokenKind_1.TokenKind.IntegerLiteral,
120
117
  text: '0',
121
118
  isReserved: false,
122
- range: vscode_languageserver_1.Range.create(0, 8, 0, 9),
123
- leadingTrivia: []
119
+ range: vscode_languageserver_1.Range.create(0, 8, 0, 9)
124
120
  },
125
121
  {
126
122
  kind: TokenKind_1.TokenKind.To,
@@ -129,22 +125,19 @@ describe('parser for loops', () => {
129
125
  range: {
130
126
  start: { line: 0, character: 10 },
131
127
  end: { line: 0, character: 12 }
132
- },
133
- leadingTrivia: []
128
+ }
134
129
  },
135
130
  {
136
131
  kind: TokenKind_1.TokenKind.IntegerLiteral,
137
132
  text: '10',
138
133
  isReserved: false,
139
- range: vscode_languageserver_1.Range.create(0, 13, 0, 15),
140
- leadingTrivia: []
134
+ range: vscode_languageserver_1.Range.create(0, 13, 0, 15)
141
135
  },
142
136
  {
143
137
  kind: TokenKind_1.TokenKind.Newline,
144
138
  text: '\n',
145
139
  isReserved: false,
146
- range: vscode_languageserver_1.Range.create(0, 15, 0, 16),
147
- leadingTrivia: []
140
+ range: vscode_languageserver_1.Range.create(0, 15, 0, 16)
148
141
  },
149
142
  // loop body isn't significant for location tracking, so helper functions are safe
150
143
  (0, Parser_spec_1.identifier)('Rnd'),
@@ -156,8 +149,7 @@ describe('parser for loops', () => {
156
149
  kind: TokenKind_1.TokenKind.EndFor,
157
150
  text: 'end for',
158
151
  isReserved: false,
159
- range: vscode_languageserver_1.Range.create(2, 0, 2, 8),
160
- leadingTrivia: []
152
+ range: vscode_languageserver_1.Range.create(2, 0, 2, 8)
161
153
  },
162
154
  Parser_spec_1.EOF
163
155
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"For.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/controlFlow/For.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"For.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/controlFlow/For.spec.ts"],"names":[],"mappings":"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"}
@@ -58,36 +58,31 @@ describe('parser foreach loops', () => {
58
58
  kind: TokenKind_1.TokenKind.ForEach,
59
59
  text: 'for each',
60
60
  isReserved: true,
61
- range: vscode_languageserver_1.Range.create(0, 0, 0, 8),
62
- leadingTrivia: []
61
+ range: vscode_languageserver_1.Range.create(0, 0, 0, 8)
63
62
  },
64
63
  {
65
64
  kind: TokenKind_1.TokenKind.Identifier,
66
65
  text: 'a',
67
66
  isReserved: false,
68
- range: vscode_languageserver_1.Range.create(0, 9, 0, 10),
69
- leadingTrivia: []
67
+ range: vscode_languageserver_1.Range.create(0, 9, 0, 10)
70
68
  },
71
69
  {
72
70
  kind: TokenKind_1.TokenKind.Identifier,
73
71
  text: 'in',
74
72
  isReserved: true,
75
- range: vscode_languageserver_1.Range.create(0, 11, 0, 13),
76
- leadingTrivia: []
73
+ range: vscode_languageserver_1.Range.create(0, 11, 0, 13)
77
74
  },
78
75
  {
79
76
  kind: TokenKind_1.TokenKind.Identifier,
80
77
  text: 'b',
81
78
  isReserved: false,
82
- range: vscode_languageserver_1.Range.create(0, 14, 0, 15),
83
- leadingTrivia: []
79
+ range: vscode_languageserver_1.Range.create(0, 14, 0, 15)
84
80
  },
85
81
  {
86
82
  kind: TokenKind_1.TokenKind.Newline,
87
83
  text: '\n',
88
84
  isReserved: false,
89
- range: vscode_languageserver_1.Range.create(0, 15, 0, 16),
90
- leadingTrivia: []
85
+ range: vscode_languageserver_1.Range.create(0, 15, 0, 16)
91
86
  },
92
87
  // loop body isn't significant for location tracking, so helper functions are safe
93
88
  (0, Parser_spec_1.identifier)('Rnd'),
@@ -99,8 +94,7 @@ describe('parser foreach loops', () => {
99
94
  kind: TokenKind_1.TokenKind.EndFor,
100
95
  text: 'end for',
101
96
  isReserved: false,
102
- range: vscode_languageserver_1.Range.create(2, 0, 2, 7),
103
- leadingTrivia: []
97
+ range: vscode_languageserver_1.Range.create(2, 0, 2, 7)
104
98
  },
105
99
  Parser_spec_1.EOF
106
100
  ]);