brighterscript 1.0.0-alpha.1 → 1.0.0-alpha.13

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 (316) hide show
  1. package/CHANGELOG.md +362 -248
  2. package/README.md +2 -2
  3. package/bsconfig.schema.json +1 -1
  4. package/dist/CodeActionUtil.d.ts +11 -2
  5. package/dist/CodeActionUtil.js +17 -3
  6. package/dist/CodeActionUtil.js.map +1 -1
  7. package/dist/CommentFlagProcessor.d.ts +4 -4
  8. package/dist/CommentFlagProcessor.js +5 -3
  9. package/dist/CommentFlagProcessor.js.map +1 -1
  10. package/dist/DependencyGraph.js.map +1 -1
  11. package/dist/DiagnosticCollection.js +2 -2
  12. package/dist/DiagnosticCollection.js.map +1 -1
  13. package/dist/DiagnosticFilterer.js +3 -3
  14. package/dist/DiagnosticFilterer.js.map +1 -1
  15. package/dist/DiagnosticMessages.d.ts +15 -5
  16. package/dist/DiagnosticMessages.js +19 -9
  17. package/dist/DiagnosticMessages.js.map +1 -1
  18. package/dist/LanguageServer.d.ts +11 -10
  19. package/dist/LanguageServer.js +87 -58
  20. package/dist/LanguageServer.js.map +1 -1
  21. package/dist/Logger.d.ts +2 -0
  22. package/dist/Logger.js +5 -3
  23. package/dist/Logger.js.map +1 -1
  24. package/dist/Program.d.ts +76 -46
  25. package/dist/Program.js +254 -180
  26. package/dist/Program.js.map +1 -1
  27. package/dist/ProgramBuilder.d.ts +7 -7
  28. package/dist/ProgramBuilder.js +37 -43
  29. package/dist/ProgramBuilder.js.map +1 -1
  30. package/dist/Scope.d.ts +33 -23
  31. package/dist/Scope.js +222 -147
  32. package/dist/Scope.js.map +1 -1
  33. package/dist/SemanticTokenUtils.d.ts +14 -0
  34. package/dist/SemanticTokenUtils.js +81 -0
  35. package/dist/SemanticTokenUtils.js.map +1 -0
  36. package/dist/SymbolTable.d.ts +9 -3
  37. package/dist/SymbolTable.js +40 -13
  38. package/dist/SymbolTable.js.map +1 -1
  39. package/dist/XmlScope.d.ts +7 -2
  40. package/dist/XmlScope.js +67 -29
  41. package/dist/XmlScope.js.map +1 -1
  42. package/dist/astUtils/AstEditor.d.ts +27 -0
  43. package/dist/astUtils/AstEditor.js +97 -0
  44. package/dist/astUtils/AstEditor.js.map +1 -0
  45. package/dist/astUtils/AstEditor.spec.d.ts +1 -0
  46. package/dist/astUtils/AstEditor.spec.js +133 -0
  47. package/dist/astUtils/AstEditor.spec.js.map +1 -0
  48. package/dist/astUtils/creators.d.ts +15 -1
  49. package/dist/astUtils/creators.js +39 -9
  50. package/dist/astUtils/creators.js.map +1 -1
  51. package/dist/astUtils/creators.spec.js +4 -4
  52. package/dist/astUtils/creators.spec.js.map +1 -1
  53. package/dist/astUtils/index.js +1 -1
  54. package/dist/astUtils/reflection.d.ts +20 -8
  55. package/dist/astUtils/reflection.js +42 -1
  56. package/dist/astUtils/reflection.js.map +1 -1
  57. package/dist/astUtils/reflection.spec.js +115 -115
  58. package/dist/astUtils/reflection.spec.js.map +1 -1
  59. package/dist/astUtils/stackedVisitor.js.map +1 -1
  60. package/dist/astUtils/stackedVisitor.spec.js +13 -13
  61. package/dist/astUtils/stackedVisitor.spec.js.map +1 -1
  62. package/dist/astUtils/visitors.js +1 -1
  63. package/dist/astUtils/visitors.js.map +1 -1
  64. package/dist/astUtils/visitors.spec.js +28 -28
  65. package/dist/astUtils/visitors.spec.js.map +1 -1
  66. package/dist/astUtils/xml.d.ts +4 -3
  67. package/dist/astUtils/xml.js +8 -3
  68. package/dist/astUtils/xml.js.map +1 -1
  69. package/dist/bscPlugin/BscPlugin.d.ts +2 -1
  70. package/dist/bscPlugin/BscPlugin.js +4 -0
  71. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  72. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +5 -6
  73. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  74. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +30 -30
  75. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  76. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.d.ts +7 -0
  77. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.js +63 -0
  78. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.js.map +1 -0
  79. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.spec.d.ts +1 -0
  80. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.spec.js +45 -0
  81. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.spec.js.map +1 -0
  82. package/dist/diagnosticUtils.d.ts +1 -0
  83. package/dist/diagnosticUtils.js +14 -7
  84. package/dist/diagnosticUtils.js.map +1 -1
  85. package/dist/examples/plugins/removePrint.js +2 -2
  86. package/dist/examples/plugins/removePrint.js.map +1 -1
  87. package/dist/files/BrsFile.Class.spec.js +486 -71
  88. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  89. package/dist/files/BrsFile.d.ts +48 -23
  90. package/dist/files/BrsFile.js +403 -233
  91. package/dist/files/BrsFile.js.map +1 -1
  92. package/dist/files/BrsFile.spec.js +367 -316
  93. package/dist/files/BrsFile.spec.js.map +1 -1
  94. package/dist/files/XmlFile.d.ts +13 -6
  95. package/dist/files/XmlFile.js +27 -21
  96. package/dist/files/XmlFile.js.map +1 -1
  97. package/dist/files/XmlFile.spec.js +274 -228
  98. package/dist/files/XmlFile.spec.js.map +1 -1
  99. package/dist/files/tests/imports.spec.js +49 -49
  100. package/dist/files/tests/imports.spec.js.map +1 -1
  101. package/dist/globalCallables.d.ts +3 -1
  102. package/dist/globalCallables.js +359 -87
  103. package/dist/globalCallables.js.map +1 -1
  104. package/dist/index.js +2 -1
  105. package/dist/index.js.map +1 -1
  106. package/dist/interfaces.d.ts +51 -14
  107. package/dist/lexer/Lexer.d.ts +14 -1
  108. package/dist/lexer/Lexer.js +91 -21
  109. package/dist/lexer/Lexer.js.map +1 -1
  110. package/dist/lexer/Lexer.spec.js +187 -132
  111. package/dist/lexer/Lexer.spec.js.map +1 -1
  112. package/dist/lexer/Token.d.ts +2 -2
  113. package/dist/lexer/TokenKind.d.ts +7 -1
  114. package/dist/lexer/TokenKind.js +51 -3
  115. package/dist/lexer/TokenKind.js.map +1 -1
  116. package/dist/lexer/index.js +2 -1
  117. package/dist/lexer/index.js.map +1 -1
  118. package/dist/parser/BrsTranspileState.d.ts +7 -0
  119. package/dist/parser/BrsTranspileState.js +10 -1
  120. package/dist/parser/BrsTranspileState.js.map +1 -1
  121. package/dist/parser/Expression.d.ts +23 -5
  122. package/dist/parser/Expression.js +124 -75
  123. package/dist/parser/Expression.js.map +1 -1
  124. package/dist/parser/Parser.Class.spec.js +159 -60
  125. package/dist/parser/Parser.Class.spec.js.map +1 -1
  126. package/dist/parser/Parser.d.ts +114 -26
  127. package/dist/parser/Parser.js +471 -126
  128. package/dist/parser/Parser.js.map +1 -1
  129. package/dist/parser/Parser.spec.js +396 -235
  130. package/dist/parser/Parser.spec.js.map +1 -1
  131. package/dist/parser/SGParser.d.ts +41 -4
  132. package/dist/parser/SGParser.js +186 -175
  133. package/dist/parser/SGParser.js.map +1 -1
  134. package/dist/parser/SGParser.spec.js +35 -22
  135. package/dist/parser/SGParser.spec.js.map +1 -1
  136. package/dist/parser/SGTypes.d.ts +206 -38
  137. package/dist/parser/SGTypes.js +470 -161
  138. package/dist/parser/SGTypes.js.map +1 -1
  139. package/dist/parser/SGTypes.spec.d.ts +1 -0
  140. package/dist/parser/SGTypes.spec.js +351 -0
  141. package/dist/parser/SGTypes.spec.js.map +1 -0
  142. package/dist/parser/Statement.d.ts +92 -18
  143. package/dist/parser/Statement.js +287 -58
  144. package/dist/parser/Statement.js.map +1 -1
  145. package/dist/parser/Statement.spec.js +11 -11
  146. package/dist/parser/Statement.spec.js.map +1 -1
  147. package/dist/parser/TranspileState.d.ts +1 -1
  148. package/dist/parser/TranspileState.js +15 -7
  149. package/dist/parser/TranspileState.js.map +1 -1
  150. package/dist/parser/index.js +1 -1
  151. package/dist/parser/tests/Parser.spec.d.ts +8 -7
  152. package/dist/parser/tests/Parser.spec.js +12 -8
  153. package/dist/parser/tests/Parser.spec.js.map +1 -1
  154. package/dist/parser/tests/controlFlow/For.spec.js +50 -50
  155. package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
  156. package/dist/parser/tests/controlFlow/ForEach.spec.js +31 -31
  157. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
  158. package/dist/parser/tests/controlFlow/If.spec.js +174 -156
  159. package/dist/parser/tests/controlFlow/If.spec.js.map +1 -1
  160. package/dist/parser/tests/controlFlow/While.spec.js +32 -32
  161. package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
  162. package/dist/parser/tests/expression/Additive.spec.js +21 -21
  163. package/dist/parser/tests/expression/Additive.spec.js.map +1 -1
  164. package/dist/parser/tests/expression/ArrayLiterals.spec.js +105 -105
  165. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
  166. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +148 -124
  167. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
  168. package/dist/parser/tests/expression/Boolean.spec.js +17 -17
  169. package/dist/parser/tests/expression/Boolean.spec.js.map +1 -1
  170. package/dist/parser/tests/expression/Call.spec.js +30 -30
  171. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  172. package/dist/parser/tests/expression/Exponential.spec.js +16 -16
  173. package/dist/parser/tests/expression/Exponential.spec.js.map +1 -1
  174. package/dist/parser/tests/expression/Function.spec.js +247 -247
  175. package/dist/parser/tests/expression/Function.spec.js.map +1 -1
  176. package/dist/parser/tests/expression/Indexing.spec.js +73 -73
  177. package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
  178. package/dist/parser/tests/expression/Multiplicative.spec.js +36 -36
  179. package/dist/parser/tests/expression/Multiplicative.spec.js.map +1 -1
  180. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +59 -47
  181. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  182. package/dist/parser/tests/expression/PrefixUnary.spec.js +35 -35
  183. package/dist/parser/tests/expression/PrefixUnary.spec.js.map +1 -1
  184. package/dist/parser/tests/expression/Primary.spec.js +26 -26
  185. package/dist/parser/tests/expression/Primary.spec.js.map +1 -1
  186. package/dist/parser/tests/expression/RegexLiteralExpression.spec.d.ts +1 -0
  187. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +170 -0
  188. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -0
  189. package/dist/parser/tests/expression/Relational.spec.js +42 -42
  190. package/dist/parser/tests/expression/Relational.spec.js.map +1 -1
  191. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +8 -8
  192. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
  193. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +12 -12
  194. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  195. package/dist/parser/tests/expression/TernaryExpression.spec.js +100 -100
  196. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  197. package/dist/parser/tests/statement/AssignmentOperators.spec.js +35 -35
  198. package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +1 -1
  199. package/dist/parser/tests/statement/Declaration.spec.js +39 -39
  200. package/dist/parser/tests/statement/Declaration.spec.js.map +1 -1
  201. package/dist/parser/tests/statement/Dim.spec.js +21 -21
  202. package/dist/parser/tests/statement/Dim.spec.js.map +1 -1
  203. package/dist/parser/tests/statement/Function.spec.js +192 -192
  204. package/dist/parser/tests/statement/Function.spec.js.map +1 -1
  205. package/dist/parser/tests/statement/Goto.spec.js +11 -11
  206. package/dist/parser/tests/statement/Goto.spec.js.map +1 -1
  207. package/dist/parser/tests/statement/Increment.spec.js +46 -46
  208. package/dist/parser/tests/statement/Increment.spec.js.map +1 -1
  209. package/dist/parser/tests/statement/InterfaceStatement.spec.d.ts +1 -0
  210. package/dist/parser/tests/statement/InterfaceStatement.spec.js +61 -0
  211. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -0
  212. package/dist/parser/tests/statement/LibraryStatement.spec.js +10 -10
  213. package/dist/parser/tests/statement/LibraryStatement.spec.js.map +1 -1
  214. package/dist/parser/tests/statement/Misc.spec.js +37 -36
  215. package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
  216. package/dist/parser/tests/statement/PrintStatement.spec.js +30 -30
  217. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  218. package/dist/parser/tests/statement/ReturnStatement.spec.js +43 -43
  219. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
  220. package/dist/parser/tests/statement/Set.spec.js +69 -69
  221. package/dist/parser/tests/statement/Set.spec.js.map +1 -1
  222. package/dist/parser/tests/statement/Stop.spec.js +9 -9
  223. package/dist/parser/tests/statement/Stop.spec.js.map +1 -1
  224. package/dist/parser/tests/statement/Throw.spec.js +5 -5
  225. package/dist/parser/tests/statement/Throw.spec.js.map +1 -1
  226. package/dist/parser/tests/statement/TryCatch.spec.js +13 -13
  227. package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
  228. package/dist/preprocessor/Chunk.js.map +1 -1
  229. package/dist/preprocessor/Manifest.d.ts +1 -1
  230. package/dist/preprocessor/Preprocessor.js +1 -1
  231. package/dist/preprocessor/Preprocessor.js.map +1 -1
  232. package/dist/preprocessor/Preprocessor.spec.js +49 -49
  233. package/dist/preprocessor/Preprocessor.spec.js.map +1 -1
  234. package/dist/preprocessor/PreprocessorParser.spec.js +72 -72
  235. package/dist/preprocessor/PreprocessorParser.spec.js.map +1 -1
  236. package/dist/preprocessor/index.js +1 -1
  237. package/dist/types/ArrayType.js +5 -4
  238. package/dist/types/ArrayType.js.map +1 -1
  239. package/dist/types/ArrayType.spec.js +8 -8
  240. package/dist/types/ArrayType.spec.js.map +1 -1
  241. package/dist/types/BooleanType.js +3 -3
  242. package/dist/types/BooleanType.js.map +1 -1
  243. package/dist/types/BooleanType.spec.js +2 -2
  244. package/dist/types/BooleanType.spec.js.map +1 -1
  245. package/dist/types/BscType.d.ts +19 -5
  246. package/dist/types/BscType.js +9 -0
  247. package/dist/types/BscType.js.map +1 -1
  248. package/dist/types/CustomType.d.ts +8 -5
  249. package/dist/types/CustomType.js +17 -6
  250. package/dist/types/CustomType.js.map +1 -1
  251. package/dist/types/DoubleType.js +8 -8
  252. package/dist/types/DoubleType.js.map +1 -1
  253. package/dist/types/DoubleType.spec.js +2 -2
  254. package/dist/types/DoubleType.spec.js.map +1 -1
  255. package/dist/types/DynamicType.js +1 -1
  256. package/dist/types/DynamicType.js.map +1 -1
  257. package/dist/types/DynamicType.spec.js +2 -2
  258. package/dist/types/DynamicType.spec.js.map +1 -1
  259. package/dist/types/FloatType.d.ts +1 -1
  260. package/dist/types/FloatType.js +8 -8
  261. package/dist/types/FloatType.js.map +1 -1
  262. package/dist/types/FloatType.spec.js +2 -2
  263. package/dist/types/FloatType.spec.js.map +1 -1
  264. package/dist/types/FunctionType.d.ts +5 -11
  265. package/dist/types/FunctionType.js +24 -13
  266. package/dist/types/FunctionType.js.map +1 -1
  267. package/dist/types/FunctionType.spec.js +11 -5
  268. package/dist/types/FunctionType.spec.js.map +1 -1
  269. package/dist/types/IntegerType.d.ts +1 -1
  270. package/dist/types/IntegerType.js +8 -8
  271. package/dist/types/IntegerType.js.map +1 -1
  272. package/dist/types/IntegerType.spec.js +2 -2
  273. package/dist/types/IntegerType.spec.js.map +1 -1
  274. package/dist/types/InterfaceType.d.ts +8 -2
  275. package/dist/types/InterfaceType.js +42 -6
  276. package/dist/types/InterfaceType.js.map +1 -1
  277. package/dist/types/InterfaceType.spec.d.ts +1 -0
  278. package/dist/types/InterfaceType.spec.js +174 -0
  279. package/dist/types/InterfaceType.spec.js.map +1 -0
  280. package/dist/types/InvalidType.js +4 -4
  281. package/dist/types/InvalidType.js.map +1 -1
  282. package/dist/types/InvalidType.spec.js +2 -2
  283. package/dist/types/InvalidType.spec.js.map +1 -1
  284. package/dist/types/LazyType.d.ts +9 -7
  285. package/dist/types/LazyType.js +22 -10
  286. package/dist/types/LazyType.js.map +1 -1
  287. package/dist/types/LongIntegerType.d.ts +1 -1
  288. package/dist/types/LongIntegerType.js +8 -8
  289. package/dist/types/LongIntegerType.js.map +1 -1
  290. package/dist/types/LongIntegerType.spec.js +2 -2
  291. package/dist/types/LongIntegerType.spec.js.map +1 -1
  292. package/dist/types/ObjectType.d.ts +7 -4
  293. package/dist/types/ObjectType.js +6 -3
  294. package/dist/types/ObjectType.js.map +1 -1
  295. package/dist/types/ObjectType.spec.js +2 -2
  296. package/dist/types/ObjectType.spec.js.map +1 -1
  297. package/dist/types/StringType.js +3 -3
  298. package/dist/types/StringType.js.map +1 -1
  299. package/dist/types/StringType.spec.js +2 -2
  300. package/dist/types/StringType.spec.js.map +1 -1
  301. package/dist/types/UninitializedType.js +3 -3
  302. package/dist/types/UninitializedType.js.map +1 -1
  303. package/dist/types/VoidType.js +3 -3
  304. package/dist/types/VoidType.js.map +1 -1
  305. package/dist/types/VoidType.spec.js +2 -2
  306. package/dist/types/VoidType.spec.js.map +1 -1
  307. package/dist/types/helpers.d.ts +42 -0
  308. package/dist/types/helpers.js +113 -0
  309. package/dist/types/helpers.js.map +1 -0
  310. package/dist/util.d.ts +77 -17
  311. package/dist/util.js +247 -59
  312. package/dist/util.js.map +1 -1
  313. package/dist/validators/ClassValidator.d.ts +5 -1
  314. package/dist/validators/ClassValidator.js +59 -24
  315. package/dist/validators/ClassValidator.js.map +1 -1
  316. package/package.json +13 -13
@@ -8,64 +8,64 @@ const vscode_languageserver_1 = require("vscode-languageserver");
8
8
  describe('parser variable declarations', () => {
9
9
  it('allows newlines before assignments', () => {
10
10
  let { statements, diagnostics } = Parser_1.Parser.parse([
11
- Parser_spec_1.token(lexer_1.TokenKind.Newline),
12
- Parser_spec_1.token(lexer_1.TokenKind.Newline),
13
- Parser_spec_1.token(lexer_1.TokenKind.Newline),
14
- Parser_spec_1.identifier('hasNewlines'),
15
- Parser_spec_1.token(lexer_1.TokenKind.Equal),
16
- Parser_spec_1.token(lexer_1.TokenKind.True),
11
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Newline),
12
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Newline),
13
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Newline),
14
+ (0, Parser_spec_1.identifier)('hasNewlines'),
15
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Equal),
16
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.True),
17
17
  Parser_spec_1.EOF
18
18
  ]);
19
- chai_1.expect(diagnostics).to.be.lengthOf(0);
20
- chai_1.expect(statements).to.exist;
21
- chai_1.expect(statements).not.to.be.null;
19
+ (0, chai_1.expect)(diagnostics).to.be.lengthOf(0);
20
+ (0, chai_1.expect)(statements).to.exist;
21
+ (0, chai_1.expect)(statements).not.to.be.null;
22
22
  });
23
23
  it('allows newlines after assignments', () => {
24
24
  let { statements, diagnostics } = Parser_1.Parser.parse([
25
- Parser_spec_1.identifier('hasNewlines'),
26
- Parser_spec_1.token(lexer_1.TokenKind.Equal),
27
- Parser_spec_1.token(lexer_1.TokenKind.True),
28
- Parser_spec_1.token(lexer_1.TokenKind.Newline),
25
+ (0, Parser_spec_1.identifier)('hasNewlines'),
26
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Equal),
27
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.True),
28
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Newline),
29
29
  Parser_spec_1.EOF
30
30
  ]);
31
- chai_1.expect(diagnostics).to.be.lengthOf(0);
32
- chai_1.expect(statements).to.exist;
33
- chai_1.expect(statements).not.to.be.null;
31
+ (0, chai_1.expect)(diagnostics).to.be.lengthOf(0);
32
+ (0, chai_1.expect)(statements).to.exist;
33
+ (0, chai_1.expect)(statements).not.to.be.null;
34
34
  });
35
35
  it('parses literal value assignments', () => {
36
36
  let { statements, diagnostics } = Parser_1.Parser.parse([
37
- Parser_spec_1.identifier('foo'),
38
- Parser_spec_1.token(lexer_1.TokenKind.Equal),
39
- Parser_spec_1.token(lexer_1.TokenKind.IntegerLiteral, '5'),
37
+ (0, Parser_spec_1.identifier)('foo'),
38
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Equal),
39
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.IntegerLiteral, '5'),
40
40
  Parser_spec_1.EOF
41
41
  ]);
42
- chai_1.expect(diagnostics).to.be.lengthOf(0);
43
- chai_1.expect(statements).to.exist;
44
- chai_1.expect(statements).not.to.be.null;
42
+ (0, chai_1.expect)(diagnostics).to.be.lengthOf(0);
43
+ (0, chai_1.expect)(statements).to.exist;
44
+ (0, chai_1.expect)(statements).not.to.be.null;
45
45
  });
46
46
  it('parses evaluated value assignments', () => {
47
47
  let { statements, diagnostics } = Parser_1.Parser.parse([
48
- Parser_spec_1.identifier('bar'),
49
- Parser_spec_1.token(lexer_1.TokenKind.Equal),
50
- Parser_spec_1.token(lexer_1.TokenKind.IntegerLiteral, '5'),
51
- Parser_spec_1.token(lexer_1.TokenKind.Caret),
52
- Parser_spec_1.token(lexer_1.TokenKind.IntegerLiteral, '3'),
48
+ (0, Parser_spec_1.identifier)('bar'),
49
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Equal),
50
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.IntegerLiteral, '5'),
51
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Caret),
52
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.IntegerLiteral, '3'),
53
53
  Parser_spec_1.EOF
54
54
  ]);
55
- chai_1.expect(diagnostics).to.be.lengthOf(0);
56
- chai_1.expect(statements).to.exist;
57
- chai_1.expect(statements).not.to.be.null;
55
+ (0, chai_1.expect)(diagnostics).to.be.lengthOf(0);
56
+ (0, chai_1.expect)(statements).to.exist;
57
+ (0, chai_1.expect)(statements).not.to.be.null;
58
58
  });
59
59
  it('parses variable aliasing', () => {
60
60
  let { statements, diagnostics } = Parser_1.Parser.parse([
61
- Parser_spec_1.identifier('baz'),
62
- Parser_spec_1.token(lexer_1.TokenKind.Equal),
63
- Parser_spec_1.identifier('foo'),
61
+ (0, Parser_spec_1.identifier)('baz'),
62
+ (0, Parser_spec_1.token)(lexer_1.TokenKind.Equal),
63
+ (0, Parser_spec_1.identifier)('foo'),
64
64
  Parser_spec_1.EOF
65
65
  ]);
66
- chai_1.expect(diagnostics).to.be.lengthOf(0);
67
- chai_1.expect(statements).to.exist;
68
- chai_1.expect(statements).not.to.be.null;
66
+ (0, chai_1.expect)(diagnostics).to.be.lengthOf(0);
67
+ (0, chai_1.expect)(statements).to.exist;
68
+ (0, chai_1.expect)(statements).not.to.be.null;
69
69
  });
70
70
  it('location tracking', () => {
71
71
  /**
@@ -100,9 +100,9 @@ describe('parser variable declarations', () => {
100
100
  range: vscode_languageserver_1.Range.create(0, 13, 0, 14)
101
101
  }
102
102
  ]);
103
- chai_1.expect(diagnostics).to.be.lengthOf(0);
104
- chai_1.expect(statements).to.be.lengthOf(1);
105
- chai_1.expect(statements[0].range).to.deep.include(vscode_languageserver_1.Range.create(0, 0, 0, 13));
103
+ (0, chai_1.expect)(diagnostics).to.be.lengthOf(0);
104
+ (0, chai_1.expect)(statements).to.be.lengthOf(1);
105
+ (0, chai_1.expect)(statements[0].range).to.deep.include(vscode_languageserver_1.Range.create(0, 0, 0, 13));
106
106
  });
107
107
  });
108
108
  //# sourceMappingURL=Declaration.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Declaration.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/statement/Declaration.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Declaration.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/statement/Declaration.spec.ts"],"names":[],"mappings":"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"}
@@ -28,46 +28,46 @@ describe('parser DimStatement', () => {
28
28
  const parser = Parser_1.Parser.parse(`Dim [5]`);
29
29
  const dimStatement = parser.ast.statements[0];
30
30
  //the statement should still exist and have null identifier
31
- chai_1.expect(dimStatement).to.exist;
32
- chai_1.expect(dimStatement.identifier).to.not.exist;
33
- chai_1.expect(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.expectedIdentifierAfterKeyword('dim').message);
31
+ (0, chai_1.expect)(dimStatement).to.exist;
32
+ (0, chai_1.expect)(dimStatement.identifier).to.not.exist;
33
+ (0, chai_1.expect)(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.expectedIdentifierAfterKeyword('dim').message);
34
34
  });
35
35
  it('flags missing left bracket', () => {
36
36
  const parser = Parser_1.Parser.parse(`Dim c]`);
37
37
  const dimStatement = parser.ast.statements[0];
38
38
  //the statement should still exist and have null dimensions
39
- chai_1.expect(dimStatement).to.exist;
40
- chai_1.expect(dimStatement.openingSquare).to.not.exist;
41
- chai_1.expect(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.missingLeftSquareBracketAfterDimIdentifier().message);
39
+ (0, chai_1.expect)(dimStatement).to.exist;
40
+ (0, chai_1.expect)(dimStatement.openingSquare).to.not.exist;
41
+ (0, chai_1.expect)(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.missingLeftSquareBracketAfterDimIdentifier().message);
42
42
  });
43
43
  it('flags missing right bracket', () => {
44
44
  const parser = Parser_1.Parser.parse(`Dim c[5, 5`);
45
45
  const dimStatement = parser.ast.statements[0];
46
46
  //the statement should still exist and have null dimensions
47
- chai_1.expect(dimStatement).to.exist;
48
- chai_1.expect(dimStatement.closingSquare).to.not.exist;
49
- chai_1.expect(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.missingRightSquareBracketAfterDimIdentifier().message);
47
+ (0, chai_1.expect)(dimStatement).to.exist;
48
+ (0, chai_1.expect)(dimStatement.closingSquare).to.not.exist;
49
+ (0, chai_1.expect)(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.missingRightSquareBracketAfterDimIdentifier().message);
50
50
  });
51
51
  it('flags missing expression(s)', () => {
52
52
  const parser = Parser_1.Parser.parse(`Dim c[]`);
53
53
  const dimStatement = parser.ast.statements[0];
54
54
  //the statement should still exist and have null dimensions
55
- chai_1.expect(dimStatement).to.exist;
56
- chai_1.expect(dimStatement.dimensions).to.be.empty;
57
- chai_1.expect(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.missingExpressionsInDimStatement().message);
55
+ (0, chai_1.expect)(dimStatement).to.exist;
56
+ (0, chai_1.expect)(dimStatement.dimensions).to.be.empty;
57
+ (0, chai_1.expect)(parser.diagnostics.map(x => x.message)).to.include(DiagnosticMessages_1.DiagnosticMessages.missingExpressionsInDimStatement().message);
58
58
  });
59
59
  });
60
60
  function validatePass(text, dimStatementIndex, identifierText, dimensionsCount) {
61
61
  const parser = Parser_1.Parser.parse(text);
62
62
  const dimStatement = parser.ast.statements[dimStatementIndex];
63
- chai_1.expect(dimStatement).to.exist;
64
- chai_1.expect(dimStatement.dimToken).to.exist;
65
- chai_1.expect(dimStatement.identifier).to.exist;
66
- chai_1.expect(dimStatement.identifier.text).to.equal(identifierText);
67
- chai_1.expect(dimStatement.openingSquare).to.exist;
68
- chai_1.expect(dimStatement.dimensions).to.exist;
69
- chai_1.expect(dimStatement.dimensions.length).to.equal(dimensionsCount);
70
- chai_1.expect(dimStatement.closingSquare).to.exist;
71
- chai_1.expect(dimStatement.range).to.exist;
63
+ (0, chai_1.expect)(dimStatement).to.exist;
64
+ (0, chai_1.expect)(dimStatement.dimToken).to.exist;
65
+ (0, chai_1.expect)(dimStatement.identifier).to.exist;
66
+ (0, chai_1.expect)(dimStatement.identifier.text).to.equal(identifierText);
67
+ (0, chai_1.expect)(dimStatement.openingSquare).to.exist;
68
+ (0, chai_1.expect)(dimStatement.dimensions).to.exist;
69
+ (0, chai_1.expect)(dimStatement.dimensions.length).to.equal(dimensionsCount);
70
+ (0, chai_1.expect)(dimStatement.closingSquare).to.exist;
71
+ (0, chai_1.expect)(dimStatement.range).to.exist;
72
72
  }
73
73
  //# sourceMappingURL=Dim.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dim.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/statement/Dim.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dim.spec.js","sourceRoot":"","sources":["../../../../src/parser/tests/statement/Dim.spec.ts"],"names":[],"mappings":"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"}