brighterscript 0.66.0-alpha.5 → 0.66.0-alpha.7

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 (298) hide show
  1. package/CHANGELOG.md +64 -10
  2. package/README.md +16 -0
  3. package/bsconfig.schema.json +15 -0
  4. package/dist/ActionPipeline.d.ts +10 -0
  5. package/dist/ActionPipeline.js +40 -0
  6. package/dist/ActionPipeline.js.map +1 -0
  7. package/dist/BsConfig.d.ts +15 -1
  8. package/dist/CommentFlagProcessor.d.ts +4 -3
  9. package/dist/CommentFlagProcessor.js.map +1 -1
  10. package/dist/DiagnosticMessages.d.ts +19 -4
  11. package/dist/DiagnosticMessages.js +45 -5
  12. package/dist/DiagnosticMessages.js.map +1 -1
  13. package/dist/LanguageServer.js.map +1 -1
  14. package/dist/PluginInterface.d.ts +11 -2
  15. package/dist/PluginInterface.js +69 -10
  16. package/dist/PluginInterface.js.map +1 -1
  17. package/dist/Program.d.ts +101 -37
  18. package/dist/Program.js +492 -274
  19. package/dist/Program.js.map +1 -1
  20. package/dist/ProgramBuilder.d.ts +10 -4
  21. package/dist/ProgramBuilder.js +44 -54
  22. package/dist/ProgramBuilder.js.map +1 -1
  23. package/dist/Scope.d.ts +27 -13
  24. package/dist/Scope.js +44 -26
  25. package/dist/Scope.js.map +1 -1
  26. package/dist/SymbolTable.d.ts +5 -0
  27. package/dist/SymbolTable.js +15 -2
  28. package/dist/SymbolTable.js.map +1 -1
  29. package/dist/XmlScope.d.ts +7 -4
  30. package/dist/XmlScope.js +47 -8
  31. package/dist/XmlScope.js.map +1 -1
  32. package/dist/astUtils/{AstEditor.d.ts → Editor.d.ts} +6 -1
  33. package/dist/astUtils/{AstEditor.js → Editor.js} +9 -3
  34. package/dist/astUtils/Editor.js.map +1 -0
  35. package/dist/astUtils/{AstEditor.spec.js → Editor.spec.js} +10 -6
  36. package/dist/astUtils/Editor.spec.js.map +1 -0
  37. package/dist/astUtils/creators.d.ts +3 -1
  38. package/dist/astUtils/creators.js +9 -1
  39. package/dist/astUtils/creators.js.map +1 -1
  40. package/dist/astUtils/reflection.d.ts +30 -8
  41. package/dist/astUtils/reflection.js +64 -14
  42. package/dist/astUtils/reflection.js.map +1 -1
  43. package/dist/astUtils/reflection.spec.js +85 -4
  44. package/dist/astUtils/reflection.spec.js.map +1 -1
  45. package/dist/astUtils/visitors.d.ts +3 -3
  46. package/dist/astUtils/visitors.spec.js +7 -7
  47. package/dist/astUtils/visitors.spec.js.map +1 -1
  48. package/dist/bscPlugin/BscPlugin.d.ts +10 -2
  49. package/dist/bscPlugin/BscPlugin.js +24 -4
  50. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  51. package/dist/bscPlugin/FileWriter.d.ts +6 -0
  52. package/dist/bscPlugin/FileWriter.js +24 -0
  53. package/dist/bscPlugin/FileWriter.js.map +1 -0
  54. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +8 -8
  55. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  56. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +4 -4
  57. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  58. package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +11 -1
  59. package/dist/bscPlugin/completions/CompletionsProcessor.js +112 -58
  60. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
  61. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +151 -6
  62. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -1
  63. package/dist/bscPlugin/fileProviders/FileProvider.d.ts +9 -0
  64. package/dist/bscPlugin/fileProviders/FileProvider.js +51 -0
  65. package/dist/bscPlugin/fileProviders/FileProvider.js.map +1 -0
  66. package/dist/bscPlugin/hover/HoverProcessor.d.ts +1 -7
  67. package/dist/bscPlugin/hover/HoverProcessor.js +2 -8
  68. package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -1
  69. package/dist/bscPlugin/hover/HoverProcessor.spec.js +55 -0
  70. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -1
  71. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +1 -0
  72. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +43 -0
  73. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -1
  74. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +22 -0
  75. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -1
  76. package/dist/bscPlugin/serialize/BslibInjector.spec.js +19 -0
  77. package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +1 -0
  78. package/dist/bscPlugin/serialize/BslibManager.d.ts +9 -0
  79. package/dist/bscPlugin/serialize/BslibManager.js +40 -0
  80. package/dist/bscPlugin/serialize/BslibManager.js.map +1 -0
  81. package/dist/bscPlugin/serialize/FileSerializer.d.ts +9 -0
  82. package/dist/bscPlugin/serialize/FileSerializer.js +72 -0
  83. package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -0
  84. package/dist/bscPlugin/transpile/{BrsFilePreTranspileProcessor.d.ts → BrsFileTranspileProcessor.d.ts} +4 -2
  85. package/dist/bscPlugin/transpile/{BrsFilePreTranspileProcessor.js → BrsFileTranspileProcessor.js} +25 -4
  86. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -0
  87. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +1 -0
  88. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +41 -0
  89. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +1 -0
  90. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.d.ts +2 -2
  91. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js.map +1 -1
  92. package/dist/bscPlugin/validation/BrsFileValidator.js +2 -1
  93. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  94. package/dist/bscPlugin/validation/ScopeValidator.d.ts +12 -0
  95. package/dist/bscPlugin/validation/ScopeValidator.js +137 -19
  96. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  97. package/dist/bscPlugin/validation/ScopeValidator.spec.js +671 -1
  98. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -1
  99. package/dist/bscPlugin/validation/XmlFileValidator.js +2 -2
  100. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
  101. package/dist/cli.js +1 -0
  102. package/dist/cli.js.map +1 -1
  103. package/dist/deferred.d.ts +2 -2
  104. package/dist/deferred.js.map +1 -1
  105. package/dist/diagnosticUtils.d.ts +1 -0
  106. package/dist/diagnosticUtils.js +4 -3
  107. package/dist/diagnosticUtils.js.map +1 -1
  108. package/dist/examples/plugins/removePrint.js +1 -1
  109. package/dist/examples/plugins/removePrint.js.map +1 -1
  110. package/dist/files/AssetFile.d.ts +26 -0
  111. package/dist/files/AssetFile.js +26 -0
  112. package/dist/files/AssetFile.js.map +1 -0
  113. package/dist/files/BrsFile.Class.spec.js +40 -40
  114. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  115. package/dist/files/BrsFile.d.ts +42 -15
  116. package/dist/files/BrsFile.js +120 -78
  117. package/dist/files/BrsFile.js.map +1 -1
  118. package/dist/files/BrsFile.spec.js +266 -167
  119. package/dist/files/BrsFile.spec.js.map +1 -1
  120. package/dist/files/Factory.d.ts +25 -0
  121. package/dist/files/Factory.js +22 -0
  122. package/dist/files/Factory.js.map +1 -0
  123. package/dist/files/File.d.ts +106 -0
  124. package/dist/files/File.js +16 -0
  125. package/dist/files/File.js.map +1 -0
  126. package/dist/files/LazyFileData.d.ts +20 -0
  127. package/dist/files/LazyFileData.js +54 -0
  128. package/dist/files/LazyFileData.js.map +1 -0
  129. package/dist/files/LazyFileData.spec.d.ts +1 -0
  130. package/dist/files/LazyFileData.spec.js +27 -0
  131. package/dist/files/LazyFileData.spec.js.map +1 -0
  132. package/dist/files/XmlFile.d.ts +55 -17
  133. package/dist/files/XmlFile.js +88 -47
  134. package/dist/files/XmlFile.js.map +1 -1
  135. package/dist/files/XmlFile.spec.js +64 -57
  136. package/dist/files/XmlFile.spec.js.map +1 -1
  137. package/dist/files/tests/imports.spec.js +21 -8
  138. package/dist/files/tests/imports.spec.js.map +1 -1
  139. package/dist/files/tests/optionalChaning.spec.js +14 -14
  140. package/dist/files/tests/optionalChaning.spec.js.map +1 -1
  141. package/dist/globalCallables.js +2 -6
  142. package/dist/globalCallables.js.map +1 -1
  143. package/dist/index.d.ts +4 -1
  144. package/dist/index.js +4 -1
  145. package/dist/index.js.map +1 -1
  146. package/dist/interfaces.d.ts +326 -85
  147. package/dist/interfaces.js +4 -1
  148. package/dist/interfaces.js.map +1 -1
  149. package/dist/lexer/Lexer.js +1 -1
  150. package/dist/lexer/TokenKind.js +0 -1
  151. package/dist/lexer/TokenKind.js.map +1 -1
  152. package/dist/parser/AstNode.d.ts +2 -2
  153. package/dist/parser/AstNode.js +1 -1
  154. package/dist/parser/AstNode.js.map +1 -1
  155. package/dist/parser/BrsTranspileState.d.ts +3 -2
  156. package/dist/parser/BrsTranspileState.js +3 -2
  157. package/dist/parser/BrsTranspileState.js.map +1 -1
  158. package/dist/parser/Expression.d.ts +1 -1
  159. package/dist/parser/Expression.js +35 -19
  160. package/dist/parser/Expression.js.map +1 -1
  161. package/dist/parser/Parser.js +12 -1
  162. package/dist/parser/Parser.js.map +1 -1
  163. package/dist/parser/Parser.spec.js +18 -2
  164. package/dist/parser/Parser.spec.js.map +1 -1
  165. package/dist/parser/SGParser.d.ts +2 -2
  166. package/dist/parser/SGParser.js +3 -3
  167. package/dist/parser/SGParser.js.map +1 -1
  168. package/dist/parser/SGParser.spec.js +2 -2
  169. package/dist/parser/SGParser.spec.js.map +1 -1
  170. package/dist/parser/SGTypes.d.ts +1 -1
  171. package/dist/parser/Statement.js +1 -1
  172. package/dist/parser/Statement.js.map +1 -1
  173. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +10 -10
  174. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  175. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +10 -10
  176. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -1
  177. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +24 -24
  178. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
  179. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +64 -36
  180. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  181. package/dist/parser/tests/expression/TernaryExpression.spec.js +34 -34
  182. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  183. package/dist/parser/tests/statement/ConstStatement.spec.js +17 -17
  184. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -1
  185. package/dist/parser/tests/statement/Continue.spec.js +2 -2
  186. package/dist/parser/tests/statement/Continue.spec.js.map +1 -1
  187. package/dist/parser/tests/statement/Enum.spec.js +26 -26
  188. package/dist/parser/tests/statement/Enum.spec.js.map +1 -1
  189. package/dist/parser/tests/statement/For.spec.js +6 -6
  190. package/dist/parser/tests/statement/For.spec.js.map +1 -1
  191. package/dist/parser/tests/statement/ForEach.spec.js +4 -4
  192. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -1
  193. package/dist/parser/tests/statement/InterfaceStatement.spec.js +18 -10
  194. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -1
  195. package/dist/parser/tests/statement/PrintStatement.spec.js +10 -10
  196. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  197. package/dist/preprocessor/Manifest.d.ts +1 -1
  198. package/dist/preprocessor/Manifest.js +2 -2
  199. package/dist/preprocessor/Manifest.js.map +1 -1
  200. package/dist/roku-types/data.json +111 -149
  201. package/dist/roku-types/index.d.ts +27 -13
  202. package/dist/types/ArrayType.d.ts +2 -1
  203. package/dist/types/ArrayType.js +6 -2
  204. package/dist/types/ArrayType.js.map +1 -1
  205. package/dist/types/ArrayType.spec.js +11 -1
  206. package/dist/types/ArrayType.spec.js.map +1 -1
  207. package/dist/types/AssociativeArrayType.d.ts +11 -0
  208. package/dist/types/AssociativeArrayType.js +52 -0
  209. package/dist/types/AssociativeArrayType.js.map +1 -0
  210. package/dist/types/BaseFunctionType.d.ts +2 -1
  211. package/dist/types/BaseFunctionType.js +1 -1
  212. package/dist/types/BaseFunctionType.js.map +1 -1
  213. package/dist/types/BooleanType.d.ts +2 -1
  214. package/dist/types/BooleanType.js +3 -2
  215. package/dist/types/BooleanType.js.map +1 -1
  216. package/dist/types/BscType.d.ts +3 -3
  217. package/dist/types/BscType.js +26 -12
  218. package/dist/types/BscType.js.map +1 -1
  219. package/dist/types/BscTypeKind.d.ts +2 -0
  220. package/dist/types/BscTypeKind.js +2 -0
  221. package/dist/types/BscTypeKind.js.map +1 -1
  222. package/dist/types/BuiltInInterfaceAdder.d.ts +8 -0
  223. package/dist/types/BuiltInInterfaceAdder.js +88 -23
  224. package/dist/types/BuiltInInterfaceAdder.js.map +1 -1
  225. package/dist/types/ClassType.d.ts +2 -1
  226. package/dist/types/ClassType.js +2 -2
  227. package/dist/types/ClassType.js.map +1 -1
  228. package/dist/types/ComponentType.d.ts +26 -0
  229. package/dist/types/ComponentType.js +83 -0
  230. package/dist/types/ComponentType.js.map +1 -0
  231. package/dist/types/DoubleType.d.ts +2 -1
  232. package/dist/types/DoubleType.js +4 -2
  233. package/dist/types/DoubleType.js.map +1 -1
  234. package/dist/types/DynamicType.d.ts +2 -2
  235. package/dist/types/DynamicType.js +1 -1
  236. package/dist/types/DynamicType.js.map +1 -1
  237. package/dist/types/EnumType.d.ts +3 -2
  238. package/dist/types/EnumType.js +3 -3
  239. package/dist/types/EnumType.js.map +1 -1
  240. package/dist/types/FloatType.d.ts +2 -1
  241. package/dist/types/FloatType.js +4 -2
  242. package/dist/types/FloatType.js.map +1 -1
  243. package/dist/types/FunctionType.d.ts +2 -1
  244. package/dist/types/FunctionType.js +2 -2
  245. package/dist/types/FunctionType.js.map +1 -1
  246. package/dist/types/IntegerType.d.ts +2 -1
  247. package/dist/types/IntegerType.js +4 -2
  248. package/dist/types/IntegerType.js.map +1 -1
  249. package/dist/types/InterfaceType.d.ts +2 -1
  250. package/dist/types/InterfaceType.js +3 -7
  251. package/dist/types/InterfaceType.js.map +1 -1
  252. package/dist/types/InterfaceType.spec.js +25 -2
  253. package/dist/types/InterfaceType.spec.js.map +1 -1
  254. package/dist/types/LongIntegerType.d.ts +2 -1
  255. package/dist/types/LongIntegerType.js +4 -2
  256. package/dist/types/LongIntegerType.js.map +1 -1
  257. package/dist/types/ObjectType.d.ts +2 -2
  258. package/dist/types/ObjectType.js +1 -1
  259. package/dist/types/ObjectType.js.map +1 -1
  260. package/dist/types/ReferenceType.d.ts +2 -0
  261. package/dist/types/ReferenceType.js +45 -1
  262. package/dist/types/ReferenceType.js.map +1 -1
  263. package/dist/types/StringType.d.ts +2 -1
  264. package/dist/types/StringType.js +4 -4
  265. package/dist/types/StringType.js.map +1 -1
  266. package/dist/types/TypedFunctionType.d.ts +7 -1
  267. package/dist/types/TypedFunctionType.js +47 -17
  268. package/dist/types/TypedFunctionType.js.map +1 -1
  269. package/dist/types/TypedFunctionType.spec.js +99 -0
  270. package/dist/types/TypedFunctionType.spec.js.map +1 -1
  271. package/dist/types/UninitializedType.d.ts +2 -1
  272. package/dist/types/UninitializedType.js +1 -1
  273. package/dist/types/UninitializedType.js.map +1 -1
  274. package/dist/types/UnionType.d.ts +2 -2
  275. package/dist/types/UnionType.js +10 -3
  276. package/dist/types/UnionType.js.map +1 -1
  277. package/dist/types/UnionType.spec.js +3 -2
  278. package/dist/types/UnionType.spec.js.map +1 -1
  279. package/dist/types/VoidType.d.ts +2 -1
  280. package/dist/types/VoidType.js +2 -2
  281. package/dist/types/VoidType.js.map +1 -1
  282. package/dist/types/helper.spec.js +15 -0
  283. package/dist/types/helper.spec.js.map +1 -1
  284. package/dist/types/helpers.d.ts +5 -1
  285. package/dist/types/helpers.js +31 -3
  286. package/dist/types/helpers.js.map +1 -1
  287. package/dist/util.d.ts +26 -6
  288. package/dist/util.js +181 -52
  289. package/dist/util.js.map +1 -1
  290. package/dist/validators/ClassValidator.js.map +1 -1
  291. package/package.json +1 -1
  292. package/dist/astUtils/AstEditor.js.map +0 -1
  293. package/dist/astUtils/AstEditor.spec.js.map +0 -1
  294. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.js.map +0 -1
  295. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js +0 -31
  296. package/dist/bscPlugin/transpile/BrsFilePreTranspileProcessor.spec.js.map +0 -1
  297. /package/dist/astUtils/{AstEditor.spec.d.ts → Editor.spec.d.ts} +0 -0
  298. /package/dist/bscPlugin/{transpile/BrsFilePreTranspileProcessor.spec.d.ts → serialize/BslibInjector.spec.d.ts} +0 -0
@@ -2,19 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const chai_config_spec_1 = require("../chai-config.spec");
4
4
  const BrsTranspileState_1 = require("../parser/BrsTranspileState");
5
- const AstEditor_1 = require("./AstEditor");
5
+ const Editor_1 = require("./Editor");
6
6
  const util_1 = require("../util");
7
- const creators_1 = require("../astUtils/creators");
7
+ const creators_1 = require("./creators");
8
8
  const TokenKind_1 = require("../lexer/TokenKind");
9
9
  const Program_1 = require("../Program");
10
10
  const BrsFile_1 = require("../files/BrsFile");
11
11
  const Expression_1 = require("../parser/Expression");
12
12
  const source_map_1 = require("source-map");
13
- describe('AstEditor', () => {
13
+ describe('Editor', () => {
14
14
  let editor;
15
15
  let obj;
16
16
  beforeEach(() => {
17
- editor = new AstEditor_1.AstEditor();
17
+ editor = new Editor_1.Editor();
18
18
  obj = getTestObject();
19
19
  });
20
20
  function getTestObject() {
@@ -138,7 +138,11 @@ describe('AstEditor', () => {
138
138
  (0, chai_config_spec_1.expect)(obj).to.eql(getTestObject());
139
139
  });
140
140
  describe('overrideTranspileResult', () => {
141
- const state = new BrsTranspileState_1.BrsTranspileState(new BrsFile_1.BrsFile('', '', new Program_1.Program({})));
141
+ const state = new BrsTranspileState_1.BrsTranspileState(new BrsFile_1.BrsFile({
142
+ srcPath: '',
143
+ destPath: '',
144
+ program: new Program_1.Program({})
145
+ }));
142
146
  function transpileToString(transpilable) {
143
147
  if (transpilable.transpile) {
144
148
  const result = transpilable.transpile(state);
@@ -251,4 +255,4 @@ describe('AstEditor', () => {
251
255
  //test passes if no exceptions were thrown
252
256
  });
253
257
  });
254
- //# sourceMappingURL=AstEditor.spec.js.map
258
+ //# sourceMappingURL=Editor.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Editor.spec.js","sourceRoot":"","sources":["../../src/astUtils/Editor.spec.ts"],"names":[],"mappings":"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"}
@@ -24,8 +24,10 @@ export declare function createDottedIdentifier(path: string[], range?: Range): D
24
24
  export declare function createStringLiteral(value: string, range?: Range): LiteralExpression;
25
25
  export declare function createIntegerLiteral(value: string, range?: Range): LiteralExpression;
26
26
  export declare function createFloatLiteral(value: string, range?: Range): LiteralExpression;
27
+ export declare function createDoubleLiteral(value: string, range?: Range): LiteralExpression;
28
+ export declare function createLongIntegerLiteral(value: string, range?: Range): LiteralExpression;
27
29
  export declare function createInvalidLiteral(value?: string, range?: Range): LiteralExpression;
28
- export declare function createBooleanLiteral(value: 'true' | 'false', range?: Range): LiteralExpression;
30
+ export declare function createBooleanLiteral(value: string, range?: Range): LiteralExpression;
29
31
  export declare function createFunctionExpression(kind: TokenKind.Sub | TokenKind.Function): FunctionExpression;
30
32
  export declare function createMethodStatement(name: string, kind?: TokenKind.Sub | TokenKind.Function, modifiers?: Token[]): MethodStatement;
31
33
  export declare function createCall(callee: Expression, args?: Expression[]): CallExpression;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createSGScript = exports.createSGInterface = exports.createSGInterfaceFunction = exports.createSGComponent = exports.createSGInterfaceField = exports.createSGAttribute = exports.createCall = exports.createMethodStatement = exports.createFunctionExpression = exports.createBooleanLiteral = exports.createInvalidLiteral = exports.createFloatLiteral = exports.createIntegerLiteral = exports.createStringLiteral = exports.createDottedIdentifier = exports.createVariableExpression = exports.createIdentifier = exports.createToken = exports.interpolatedRange = void 0;
3
+ exports.createSGScript = exports.createSGInterface = exports.createSGInterfaceFunction = exports.createSGComponent = exports.createSGInterfaceField = exports.createSGAttribute = exports.createCall = exports.createMethodStatement = exports.createFunctionExpression = exports.createBooleanLiteral = exports.createInvalidLiteral = exports.createLongIntegerLiteral = exports.createDoubleLiteral = exports.createFloatLiteral = exports.createIntegerLiteral = exports.createStringLiteral = exports.createDottedIdentifier = exports.createVariableExpression = exports.createIdentifier = exports.createToken = exports.interpolatedRange = void 0;
4
4
  const SGTypes_1 = require("../parser/SGTypes");
5
5
  const TokenKind_1 = require("../lexer/TokenKind");
6
6
  const Expression_1 = require("../parser/Expression");
@@ -134,6 +134,14 @@ function createFloatLiteral(value, range) {
134
134
  return new Expression_1.LiteralExpression(createToken(TokenKind_1.TokenKind.FloatLiteral, value, range));
135
135
  }
136
136
  exports.createFloatLiteral = createFloatLiteral;
137
+ function createDoubleLiteral(value, range) {
138
+ return new Expression_1.LiteralExpression(createToken(TokenKind_1.TokenKind.DoubleLiteral, value, range));
139
+ }
140
+ exports.createDoubleLiteral = createDoubleLiteral;
141
+ function createLongIntegerLiteral(value, range) {
142
+ return new Expression_1.LiteralExpression(createToken(TokenKind_1.TokenKind.LongIntegerLiteral, value, range));
143
+ }
144
+ exports.createLongIntegerLiteral = createLongIntegerLiteral;
137
145
  function createInvalidLiteral(value, range) {
138
146
  return new Expression_1.LiteralExpression(createToken(TokenKind_1.TokenKind.Invalid, value, range));
139
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"creators.js","sourceRoot":"","sources":["../../src/astUtils/creators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"creators.js","sourceRoot":"","sources":["../../src/astUtils/creators.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,18 @@
1
1
  import type { Body, AssignmentStatement, Block, ExpressionStatement, CommentStatement, ExitForStatement, ExitWhileStatement, FunctionStatement, IfStatement, IncrementStatement, PrintStatement, GotoStatement, LabelStatement, ReturnStatement, EndStatement, StopStatement, ForStatement, ForEachStatement, WhileStatement, DottedSetStatement, IndexedSetStatement, LibraryStatement, NamespaceStatement, ImportStatement, ClassStatement, InterfaceFieldStatement, InterfaceMethodStatement, InterfaceStatement, EnumStatement, EnumMemberStatement, TryCatchStatement, CatchStatement, ThrowStatement, MethodStatement, FieldStatement, ConstStatement, ContinueStatement } from '../parser/Statement';
2
- import type { LiteralExpression, BinaryExpression, CallExpression, FunctionExpression, DottedGetExpression, XmlAttributeGetExpression, IndexedGetExpression, GroupingExpression, EscapedCharCodeLiteralExpression, ArrayLiteralExpression, AALiteralExpression, UnaryExpression, VariableExpression, SourceLiteralExpression, NewExpression, CallfuncExpression, TemplateStringQuasiExpression, TemplateStringExpression, TaggedTemplateStringExpression, AnnotationExpression, FunctionParameterExpression, AAMemberExpression, TypeExpression, TypeCastExpression } from '../parser/Expression';
2
+ import type { LiteralExpression, BinaryExpression, CallExpression, FunctionExpression, DottedGetExpression, XmlAttributeGetExpression, IndexedGetExpression, GroupingExpression, EscapedCharCodeLiteralExpression, ArrayLiteralExpression, AALiteralExpression, UnaryExpression, VariableExpression, SourceLiteralExpression, NewExpression, CallfuncExpression, TemplateStringQuasiExpression, TemplateStringExpression, TaggedTemplateStringExpression, AnnotationExpression, FunctionParameterExpression, AAMemberExpression, TypeExpression, TypeCastExpression, TypedArrayExpression } from '../parser/Expression';
3
3
  import type { BrsFile } from '../files/BrsFile';
4
4
  import type { XmlFile } from '../files/XmlFile';
5
- import type { BscFile, File, TypedefProvider } from '../interfaces';
5
+ import type { TypedefProvider } from '../interfaces';
6
6
  import type { InvalidType } from '../types/InvalidType';
7
7
  import type { VoidType } from '../types/VoidType';
8
8
  import type { TypedFunctionType } from '../types/TypedFunctionType';
9
9
  import type { FunctionType } from '../types/FunctionType';
10
10
  import type { StringType } from '../types/StringType';
11
11
  import type { BooleanType } from '../types/BooleanType';
12
- import { IntegerType } from '../types/IntegerType';
13
- import { LongIntegerType } from '../types/LongIntegerType';
14
- import { FloatType } from '../types/FloatType';
15
- import { DoubleType } from '../types/DoubleType';
12
+ import type { IntegerType } from '../types/IntegerType';
13
+ import type { LongIntegerType } from '../types/LongIntegerType';
14
+ import type { FloatType } from '../types/FloatType';
15
+ import type { DoubleType } from '../types/DoubleType';
16
16
  import type { ClassType } from '../types/ClassType';
17
17
  import type { Scope } from '../Scope';
18
18
  import type { XmlScope } from '../XmlScope';
@@ -20,6 +20,7 @@ import type { DynamicType } from '../types/DynamicType';
20
20
  import type { InterfaceType } from '../types/InterfaceType';
21
21
  import type { ObjectType } from '../types/ObjectType';
22
22
  import type { AstNode, Expression, Statement } from '../parser/AstNode';
23
+ import type { AssetFile } from '../files/AssetFile';
23
24
  import type { TypePropertyReferenceType, ReferenceType, BinaryOperatorReferenceType } from '../types/ReferenceType';
24
25
  import type { EnumMemberType, EnumType } from '../types/EnumType';
25
26
  import type { UnionType } from '../types/UnionType';
@@ -28,8 +29,12 @@ import type { ArrayType } from '../types/ArrayType';
28
29
  import type { InheritableType } from '../types/InheritableType';
29
30
  import type { NamespaceType } from '../types/NamespaceType';
30
31
  import type { BaseFunctionType } from '../types/BaseFunctionType';
31
- export declare function isBrsFile(file: (BscFile | File)): file is BrsFile;
32
- export declare function isXmlFile(file: (BscFile)): file is XmlFile;
32
+ import type { File } from '../files/File';
33
+ import type { ComponentType } from '../types/ComponentType';
34
+ import type { AssociativeArrayType } from '../types/AssociativeArrayType';
35
+ export declare function isBrsFile(file: File): file is BrsFile;
36
+ export declare function isXmlFile(file: (File | XmlFile)): file is XmlFile;
37
+ export declare function isAssetFile(file: (File | AssetFile)): file is AssetFile;
33
38
  export declare function isXmlScope(scope: (Scope)): scope is XmlScope;
34
39
  /**
35
40
  * Determine if the variablvalue is a descendent of the Statement base class.
@@ -108,6 +113,7 @@ export declare function isAnnotationExpression(element: AstNode | undefined): el
108
113
  export declare function isTypedefProvider(element: any): element is TypedefProvider;
109
114
  export declare function isTypeExpression(element: any): element is TypeExpression;
110
115
  export declare function isTypeCastExpression(element: any): element is TypeCastExpression;
116
+ export declare function isTypedArrayExpression(element: any): element is TypedArrayExpression;
111
117
  export declare function isStringType(value: any): value is StringType;
112
118
  export declare function isTypedFunctionType(value: any): value is TypedFunctionType;
113
119
  export declare function isFunctionType(value: any): value is FunctionType;
@@ -119,6 +125,7 @@ export declare function isDoubleType(value: any): value is DoubleType;
119
125
  export declare function isInvalidType(value: any): value is InvalidType;
120
126
  export declare function isVoidType(value: any): value is VoidType;
121
127
  export declare function isClassType(value: any): value is ClassType;
128
+ export declare function isComponentType(value: any): value is ComponentType;
122
129
  export declare function isDynamicType(value: any): value is DynamicType;
123
130
  export declare function isInterfaceType(value: any): value is InterfaceType;
124
131
  export declare function isObjectType(value: any): value is ObjectType;
@@ -131,10 +138,13 @@ export declare function isNamespaceType(value: any): value is NamespaceType;
131
138
  export declare function isUnionType(value: any): value is UnionType;
132
139
  export declare function isUninitializedType(value: any): value is UninitializedType;
133
140
  export declare function isArrayType(value: any): value is ArrayType;
141
+ export declare function isAssociativeArrayType(value: any): value is AssociativeArrayType;
134
142
  export declare function isInheritableType(target: any): target is InheritableType;
135
143
  export declare function isCallableType(target: any): target is BaseFunctionType;
136
144
  export declare function isAnyReferenceType(target: any): target is ReferenceType | TypePropertyReferenceType | BinaryOperatorReferenceType;
137
145
  export declare function isNumberType(value: any): value is IntegerType | LongIntegerType | FloatType | DoubleType;
146
+ export declare function isPrimitiveType(value: any): value is IntegerType | LongIntegerType | FloatType | DoubleType | StringType | BooleanType;
147
+ export declare function isNativeType(value: any): value is IntegerType | LongIntegerType | FloatType | DoubleType | StringType | BooleanType | VoidType | DynamicType | ObjectType | FunctionType;
138
148
  export declare function isLiteralInvalid(value: any): value is LiteralExpression & {
139
149
  type: InvalidType;
140
150
  };
@@ -147,3 +157,15 @@ export declare function isLiteralString(value: any): value is LiteralExpression
147
157
  export declare function isLiteralNumber(value: any): value is LiteralExpression & {
148
158
  type: IntegerType | LongIntegerType | FloatType | DoubleType;
149
159
  };
160
+ export declare function isLiteralInteger(value: any): value is LiteralExpression & {
161
+ type: IntegerType;
162
+ };
163
+ export declare function isLiteralLongInteger(value: any): value is LiteralExpression & {
164
+ type: LongIntegerType;
165
+ };
166
+ export declare function isLiteralFloat(value: any): value is LiteralExpression & {
167
+ type: FloatType;
168
+ };
169
+ export declare function isLiteralDouble(value: any): value is LiteralExpression & {
170
+ type: DoubleType;
171
+ };
@@ -1,14 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isLiteralExpression = exports.isGroupingExpression = exports.isIndexedGetExpression = exports.isXmlAttributeGetExpression = exports.isDottedGetExpression = exports.isFunctionExpression = exports.isCallExpression = exports.isBinaryExpression = exports.isExpression = exports.isThrowStatement = exports.isCatchStatement = exports.isTryCatchStatement = exports.isContinueStatement = exports.isConstStatement = exports.isEnumMemberStatement = exports.isEnumStatement = exports.isInterfaceFieldStatement = exports.isInterfaceMethodStatement = exports.isInterfaceStatement = exports.isFieldStatement = exports.isMethodStatement = exports.isImportStatement = exports.isClassStatement = exports.isNamespaceStatement = exports.isLibraryStatement = exports.isIndexedSetStatement = exports.isDottedSetStatement = exports.isWhileStatement = exports.isForEachStatement = exports.isForStatement = exports.isStopStatement = exports.isEndStatement = exports.isReturnStatement = exports.isLabelStatement = exports.isGotoStatement = exports.isPrintStatement = exports.isIncrementStatement = exports.isIfStatement = exports.isFunctionStatement = exports.isExitWhileStatement = exports.isExitForStatement = exports.isCommentStatement = exports.isExpressionStatement = exports.isBlock = exports.isAssignmentStatement = exports.isBody = exports.isStatement = exports.isXmlScope = exports.isXmlFile = exports.isBrsFile = void 0;
4
- exports.isLiteralNumber = exports.isLiteralString = exports.isLiteralBoolean = exports.isLiteralInvalid = exports.isNumberType = exports.isAnyReferenceType = exports.isCallableType = exports.isInheritableType = exports.isArrayType = exports.isUninitializedType = exports.isUnionType = exports.isNamespaceType = exports.isBinaryOperatorReferenceType = exports.isTypePropertyReferenceType = exports.isEnumMemberType = exports.isEnumType = exports.isReferenceType = exports.isObjectType = exports.isInterfaceType = exports.isDynamicType = exports.isClassType = exports.isVoidType = exports.isInvalidType = exports.isDoubleType = exports.isFloatType = exports.isLongIntegerType = exports.isIntegerType = exports.isBooleanType = exports.isFunctionType = exports.isTypedFunctionType = exports.isStringType = exports.isTypeCastExpression = exports.isTypeExpression = exports.isTypedefProvider = exports.isAnnotationExpression = exports.isFunctionParameterExpression = exports.isTaggedTemplateStringExpression = exports.isTemplateStringExpression = exports.isTemplateStringQuasiExpression = exports.isCallfuncExpression = exports.isNewExpression = exports.isSourceLiteralExpression = exports.isVariableExpression = exports.isUnaryExpression = exports.isAAMemberExpression = exports.isAALiteralExpression = exports.isArrayLiteralExpression = exports.isEscapedCharCodeLiteralExpression = void 0;
3
+ exports.isGroupingExpression = exports.isIndexedGetExpression = exports.isXmlAttributeGetExpression = exports.isDottedGetExpression = exports.isFunctionExpression = exports.isCallExpression = exports.isBinaryExpression = exports.isExpression = exports.isThrowStatement = exports.isCatchStatement = exports.isTryCatchStatement = exports.isContinueStatement = exports.isConstStatement = exports.isEnumMemberStatement = exports.isEnumStatement = exports.isInterfaceFieldStatement = exports.isInterfaceMethodStatement = exports.isInterfaceStatement = exports.isFieldStatement = exports.isMethodStatement = exports.isImportStatement = exports.isClassStatement = exports.isNamespaceStatement = exports.isLibraryStatement = exports.isIndexedSetStatement = exports.isDottedSetStatement = exports.isWhileStatement = exports.isForEachStatement = exports.isForStatement = exports.isStopStatement = exports.isEndStatement = exports.isReturnStatement = exports.isLabelStatement = exports.isGotoStatement = exports.isPrintStatement = exports.isIncrementStatement = exports.isIfStatement = exports.isFunctionStatement = exports.isExitWhileStatement = exports.isExitForStatement = exports.isCommentStatement = exports.isExpressionStatement = exports.isBlock = exports.isAssignmentStatement = exports.isBody = exports.isStatement = exports.isXmlScope = exports.isAssetFile = exports.isXmlFile = exports.isBrsFile = void 0;
4
+ exports.isNativeType = exports.isPrimitiveType = exports.isNumberType = exports.isAnyReferenceType = exports.isCallableType = exports.isInheritableType = exports.isAssociativeArrayType = exports.isArrayType = exports.isUninitializedType = exports.isUnionType = exports.isNamespaceType = exports.isBinaryOperatorReferenceType = exports.isTypePropertyReferenceType = exports.isEnumMemberType = exports.isEnumType = exports.isReferenceType = exports.isObjectType = exports.isInterfaceType = exports.isDynamicType = exports.isComponentType = exports.isClassType = exports.isVoidType = exports.isInvalidType = exports.isDoubleType = exports.isFloatType = exports.isLongIntegerType = exports.isIntegerType = exports.isBooleanType = exports.isFunctionType = exports.isTypedFunctionType = exports.isStringType = exports.isTypedArrayExpression = exports.isTypeCastExpression = exports.isTypeExpression = exports.isTypedefProvider = exports.isAnnotationExpression = exports.isFunctionParameterExpression = exports.isTaggedTemplateStringExpression = exports.isTemplateStringExpression = exports.isTemplateStringQuasiExpression = exports.isCallfuncExpression = exports.isNewExpression = exports.isSourceLiteralExpression = exports.isVariableExpression = exports.isUnaryExpression = exports.isAAMemberExpression = exports.isAALiteralExpression = exports.isArrayLiteralExpression = exports.isEscapedCharCodeLiteralExpression = exports.isLiteralExpression = void 0;
5
+ exports.isLiteralDouble = exports.isLiteralFloat = exports.isLiteralLongInteger = exports.isLiteralInteger = exports.isLiteralNumber = exports.isLiteralString = exports.isLiteralBoolean = exports.isLiteralInvalid = void 0;
5
6
  const visitors_1 = require("./visitors");
6
- const IntegerType_1 = require("../types/IntegerType");
7
- const LongIntegerType_1 = require("../types/LongIntegerType");
8
- const FloatType_1 = require("../types/FloatType");
9
- const DoubleType_1 = require("../types/DoubleType");
10
7
  const AstNode_1 = require("../parser/AstNode");
11
8
  const BscTypeKind_1 = require("../types/BscTypeKind");
9
+ const TokenKind_1 = require("../lexer/TokenKind");
12
10
  // File reflection
13
11
  function isBrsFile(file) {
14
12
  return (file === null || file === void 0 ? void 0 : file.constructor.name) === 'BrsFile';
@@ -18,6 +16,10 @@ function isXmlFile(file) {
18
16
  return (file === null || file === void 0 ? void 0 : file.constructor.name) === 'XmlFile';
19
17
  }
20
18
  exports.isXmlFile = isXmlFile;
19
+ function isAssetFile(file) {
20
+ return (file === null || file === void 0 ? void 0 : file.constructor.name) === 'AssetFile';
21
+ }
22
+ exports.isAssetFile = isAssetFile;
21
23
  function isXmlScope(scope) {
22
24
  return (scope === null || scope === void 0 ? void 0 : scope.constructor.name) === 'XmlScope';
23
25
  }
@@ -297,6 +299,10 @@ function isTypeCastExpression(element) {
297
299
  return (element === null || element === void 0 ? void 0 : element.kind) === AstNode_1.AstNodeKind.TypeCastExpression;
298
300
  }
299
301
  exports.isTypeCastExpression = isTypeCastExpression;
302
+ function isTypedArrayExpression(element) {
303
+ return (element === null || element === void 0 ? void 0 : element.kind) === AstNode_1.AstNodeKind.TypedArrayExpression;
304
+ }
305
+ exports.isTypedArrayExpression = isTypedArrayExpression;
300
306
  // BscType reflection
301
307
  function isStringType(value) {
302
308
  return (value === null || value === void 0 ? void 0 : value.kind) === BscTypeKind_1.BscTypeKind.StringType;
@@ -342,6 +348,10 @@ function isClassType(value) {
342
348
  return (value === null || value === void 0 ? void 0 : value.kind) === BscTypeKind_1.BscTypeKind.ClassType;
343
349
  }
344
350
  exports.isClassType = isClassType;
351
+ function isComponentType(value) {
352
+ return (value === null || value === void 0 ? void 0 : value.kind) === BscTypeKind_1.BscTypeKind.ComponentType;
353
+ }
354
+ exports.isComponentType = isComponentType;
345
355
  function isDynamicType(value) {
346
356
  return (value === null || value === void 0 ? void 0 : value.kind) === BscTypeKind_1.BscTypeKind.DynamicType;
347
357
  }
@@ -393,8 +403,12 @@ function isArrayType(value) {
393
403
  return (value === null || value === void 0 ? void 0 : value.kind) === BscTypeKind_1.BscTypeKind.ArrayType;
394
404
  }
395
405
  exports.isArrayType = isArrayType;
406
+ function isAssociativeArrayType(value) {
407
+ return (value === null || value === void 0 ? void 0 : value.kind) === BscTypeKind_1.BscTypeKind.AssociativeArrayType;
408
+ }
409
+ exports.isAssociativeArrayType = isAssociativeArrayType;
396
410
  function isInheritableType(target) {
397
- return isClassType(target) || isInterfaceType(target);
411
+ return isClassType(target) || isInterfaceType(target) || isComponentType(target);
398
412
  }
399
413
  exports.isInheritableType = isInheritableType;
400
414
  function isCallableType(target) {
@@ -407,19 +421,39 @@ function isAnyReferenceType(target) {
407
421
  return name === 'ReferenceType' || name === 'TypePropertyReferenceType' || name === 'BinaryOperatorReferenceType';
408
422
  }
409
423
  exports.isAnyReferenceType = isAnyReferenceType;
410
- const numberConstructorNames = [
411
- IntegerType_1.IntegerType.name,
412
- LongIntegerType_1.LongIntegerType.name,
413
- FloatType_1.FloatType.name,
414
- DoubleType_1.DoubleType.name
424
+ const numberTypeKinds = [
425
+ BscTypeKind_1.BscTypeKind.IntegerType,
426
+ BscTypeKind_1.BscTypeKind.LongIntegerType,
427
+ BscTypeKind_1.BscTypeKind.FloatType,
428
+ BscTypeKind_1.BscTypeKind.DoubleType
415
429
  ];
416
430
  function isNumberType(value) {
417
- return numberConstructorNames.includes(value === null || value === void 0 ? void 0 : value.constructor.name);
431
+ return numberTypeKinds.includes(value === null || value === void 0 ? void 0 : value.kind);
418
432
  }
419
433
  exports.isNumberType = isNumberType;
434
+ const primitiveTypeKinds = [
435
+ ...numberTypeKinds,
436
+ BscTypeKind_1.BscTypeKind.BooleanType,
437
+ BscTypeKind_1.BscTypeKind.StringType
438
+ ];
439
+ function isPrimitiveType(value) {
440
+ return primitiveTypeKinds.includes(value === null || value === void 0 ? void 0 : value.kind);
441
+ }
442
+ exports.isPrimitiveType = isPrimitiveType;
443
+ const nativeTypeKinds = [
444
+ ...primitiveTypeKinds,
445
+ BscTypeKind_1.BscTypeKind.DynamicType,
446
+ BscTypeKind_1.BscTypeKind.ObjectType,
447
+ BscTypeKind_1.BscTypeKind.VoidType,
448
+ BscTypeKind_1.BscTypeKind.FunctionType
449
+ ];
450
+ function isNativeType(value) {
451
+ return nativeTypeKinds.includes(value === null || value === void 0 ? void 0 : value.kind);
452
+ }
453
+ exports.isNativeType = isNativeType;
420
454
  // Literal reflection
421
455
  function isLiteralInvalid(value) {
422
- return isLiteralExpression(value) && isInvalidType(value.getType());
456
+ return isLiteralExpression(value) && value.token.kind === TokenKind_1.TokenKind.Invalid;
423
457
  }
424
458
  exports.isLiteralInvalid = isLiteralInvalid;
425
459
  function isLiteralBoolean(value) {
@@ -434,4 +468,20 @@ function isLiteralNumber(value) {
434
468
  return isLiteralExpression(value) && isNumberType(value.getType());
435
469
  }
436
470
  exports.isLiteralNumber = isLiteralNumber;
471
+ function isLiteralInteger(value) {
472
+ return isLiteralExpression(value) && isIntegerType(value.getType());
473
+ }
474
+ exports.isLiteralInteger = isLiteralInteger;
475
+ function isLiteralLongInteger(value) {
476
+ return isLiteralExpression(value) && isLongIntegerType(value.getType());
477
+ }
478
+ exports.isLiteralLongInteger = isLiteralLongInteger;
479
+ function isLiteralFloat(value) {
480
+ return isLiteralExpression(value) && isFloatType(value.getType());
481
+ }
482
+ exports.isLiteralFloat = isLiteralFloat;
483
+ function isLiteralDouble(value) {
484
+ return isLiteralExpression(value) && isDoubleType(value.getType());
485
+ }
486
+ exports.isLiteralDouble = isLiteralDouble;
437
487
  //# sourceMappingURL=reflection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../src/astUtils/reflection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../src/astUtils/reflection.ts"],"names":[],"mappings":"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"}
@@ -10,13 +10,12 @@ const creators_1 = require("./creators");
10
10
  const Program_1 = require("../Program");
11
11
  const BrsFile_1 = require("../files/BrsFile");
12
12
  const XmlFile_1 = require("../files/XmlFile");
13
- const __1 = require("..");
14
13
  describe('reflection', () => {
15
14
  describe('Files', () => {
16
15
  it('recognizes files', () => {
17
16
  const program = new Program_1.Program({});
18
- const file = new BrsFile_1.BrsFile('path/to/source/file.brs', 'pkg:/source/file.brs', program);
19
- const comp = new XmlFile_1.XmlFile('path/to/components/file.xml', 'pkg:/components/file.brs', program);
17
+ const file = new BrsFile_1.BrsFile({ srcPath: 'path/to/source/file.brs', destPath: 'source/file.brs', program: program });
18
+ const comp = new XmlFile_1.XmlFile({ srcPath: 'path/to/components/file.xml', destPath: 'components/file.brs', program: program });
20
19
  (0, chai_config_spec_1.expect)((0, reflection_1.isBrsFile)(file)).to.be.true;
21
20
  (0, chai_config_spec_1.expect)((0, reflection_1.isXmlFile)(file)).to.be.false;
22
21
  (0, chai_config_spec_1.expect)((0, reflection_1.isBrsFile)(comp)).to.be.false;
@@ -49,7 +48,7 @@ describe('reflection', () => {
49
48
  const dottedSet = new Statement_1.DottedSetStatement(expr, ident, expr);
50
49
  const indexedSet = new Statement_1.IndexedSetStatement(expr, expr, expr, token, token);
51
50
  const library = new Statement_1.LibraryStatement({ library: token, filePath: token });
52
- const namespace = new Statement_1.NamespaceStatement(token, (0, __1.createVariableExpression)('a', creators_1.interpolatedRange), body, token);
51
+ const namespace = new Statement_1.NamespaceStatement(token, (0, creators_1.createVariableExpression)('a', creators_1.interpolatedRange), body, token);
53
52
  const cls = new Statement_1.ClassStatement(token, ident, [], token);
54
53
  const imports = new Statement_1.ImportStatement(token, token);
55
54
  const catchStmt = new Statement_1.CatchStatement({ catch: token }, ident, block);
@@ -300,5 +299,87 @@ describe('reflection', () => {
300
299
  (0, chai_config_spec_1.expect)((0, reflection_1.isExpression)(1)).to.be.false;
301
300
  });
302
301
  });
302
+ describe('isLiteralInvalid', () => {
303
+ it('handles true cases', () => {
304
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInvalid)((0, creators_1.createInvalidLiteral)('invalid'))).to.be.true;
305
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInvalid)((0, creators_1.createInvalidLiteral)('Invalid'))).to.be.true;
306
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInvalid)((0, creators_1.createInvalidLiteral)('INVALID'))).to.be.true;
307
+ });
308
+ it('handles false cases', () => {
309
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInvalid)((0, creators_1.createBooleanLiteral)('true'))).to.be.false;
310
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInvalid)((0, creators_1.createIntegerLiteral)('1'))).to.be.false;
311
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInvalid)((0, creators_1.createVariableExpression)('cat'))).to.be.false;
312
+ });
313
+ });
314
+ describe('isLiteralBoolean', () => {
315
+ it('handles true cases', () => {
316
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralBoolean)((0, creators_1.createBooleanLiteral)('true'))).to.be.true;
317
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralBoolean)((0, creators_1.createBooleanLiteral)('TRUE'))).to.be.true;
318
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralBoolean)((0, creators_1.createBooleanLiteral)('false'))).to.be.true;
319
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralBoolean)((0, creators_1.createBooleanLiteral)('FALSE'))).to.be.true;
320
+ });
321
+ it('handles false cases', () => {
322
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralBoolean)((0, creators_1.createInvalidLiteral)('invalid'))).to.be.false;
323
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralBoolean)((0, creators_1.createIntegerLiteral)('1'))).to.be.false;
324
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralBoolean)((0, creators_1.createVariableExpression)('cat'))).to.be.false;
325
+ });
326
+ });
327
+ describe('isLiteralNumber', () => {
328
+ it('handles true cases', () => {
329
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralNumber)((0, creators_1.createIntegerLiteral)('1'))).to.be.true;
330
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralNumber)((0, creators_1.createLongIntegerLiteral)('1'))).to.be.true;
331
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralNumber)((0, creators_1.createFloatLiteral)('1.2'))).to.be.true;
332
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralNumber)((0, creators_1.createDoubleLiteral)('2.3'))).to.be.true;
333
+ });
334
+ it('handles false cases', () => {
335
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralNumber)((0, creators_1.createInvalidLiteral)('invalid'))).to.be.false;
336
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralNumber)((0, creators_1.createBooleanLiteral)('true'))).to.be.false;
337
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralNumber)((0, creators_1.createVariableExpression)('cat'))).to.be.false;
338
+ });
339
+ });
340
+ describe('isLiteralInteger', () => {
341
+ it('handles true cases', () => {
342
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInteger)((0, creators_1.createIntegerLiteral)('1'))).to.be.true;
343
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInteger)((0, creators_1.createIntegerLiteral)('100'))).to.be.true;
344
+ });
345
+ it('handles false cases', () => {
346
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInteger)((0, creators_1.createInvalidLiteral)('invalid'))).to.be.false;
347
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInteger)((0, creators_1.createBooleanLiteral)('true'))).to.be.false;
348
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralInteger)((0, creators_1.createVariableExpression)('cat'))).to.be.false;
349
+ });
350
+ });
351
+ describe('isLiteralLongInteger', () => {
352
+ it('handles true cases', () => {
353
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralLongInteger)((0, creators_1.createLongIntegerLiteral)('1'))).to.be.true;
354
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralLongInteger)((0, creators_1.createLongIntegerLiteral)('100'))).to.be.true;
355
+ });
356
+ it('handles false cases', () => {
357
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralLongInteger)((0, creators_1.createInvalidLiteral)('invalid'))).to.be.false;
358
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralLongInteger)((0, creators_1.createBooleanLiteral)('true'))).to.be.false;
359
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralLongInteger)((0, creators_1.createVariableExpression)('cat'))).to.be.false;
360
+ });
361
+ });
362
+ describe('isLiteralFloat', () => {
363
+ it('handles true cases', () => {
364
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralFloat)((0, creators_1.createFloatLiteral)('1.2'))).to.be.true;
365
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralFloat)((0, creators_1.createFloatLiteral)('1.234'))).to.be.true;
366
+ });
367
+ it('handles false cases', () => {
368
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralFloat)((0, creators_1.createInvalidLiteral)('invalid'))).to.be.false;
369
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralFloat)((0, creators_1.createBooleanLiteral)('true'))).to.be.false;
370
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralFloat)((0, creators_1.createVariableExpression)('cat'))).to.be.false;
371
+ });
372
+ });
373
+ describe('isLiteralDouble', () => {
374
+ it('handles true cases', () => {
375
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralDouble)((0, creators_1.createDoubleLiteral)('1.2'))).to.be.true;
376
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralDouble)((0, creators_1.createDoubleLiteral)('1.234'))).to.be.true;
377
+ });
378
+ it('handles false cases', () => {
379
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralDouble)((0, creators_1.createInvalidLiteral)('invalid'))).to.be.false;
380
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralDouble)((0, creators_1.createBooleanLiteral)('true'))).to.be.false;
381
+ (0, chai_config_spec_1.expect)((0, reflection_1.isLiteralDouble)((0, creators_1.createVariableExpression)('cat'))).to.be.false;
382
+ });
383
+ });
303
384
  });
304
385
  //# sourceMappingURL=reflection.spec.js.map