brighterscript 1.0.0-alpha.50 → 1.0.0-alpha.52

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 (485) hide show
  1. package/README.md +10 -2
  2. package/bsconfig.schema.json +75 -0
  3. package/dist/BsConfig.d.ts +90 -5
  4. package/dist/CodeActionUtil.d.ts +17 -0
  5. package/dist/CodeActionUtil.js.map +1 -1
  6. package/dist/CommentFlagProcessor.d.ts +16 -12
  7. package/dist/CommentFlagProcessor.js +141 -59
  8. package/dist/CommentFlagProcessor.js.map +1 -1
  9. package/dist/CrossScopeValidator.js +13 -5
  10. package/dist/CrossScopeValidator.js.map +1 -1
  11. package/dist/DiagnosticManager.d.ts +1 -0
  12. package/dist/DiagnosticManager.js +25 -9
  13. package/dist/DiagnosticManager.js.map +1 -1
  14. package/dist/DiagnosticMessages.d.ts +61 -17
  15. package/dist/DiagnosticMessages.js +78 -24
  16. package/dist/DiagnosticMessages.js.map +1 -1
  17. package/dist/LanguageServer.d.ts +40 -2
  18. package/dist/LanguageServer.js +154 -5
  19. package/dist/LanguageServer.js.map +1 -1
  20. package/dist/Program.d.ts +66 -1
  21. package/dist/Program.js +205 -13
  22. package/dist/Program.js.map +1 -1
  23. package/dist/ProgramBuilder.d.ts +1 -8
  24. package/dist/ProgramBuilder.js +31 -11
  25. package/dist/ProgramBuilder.js.map +1 -1
  26. package/dist/Scope.d.ts +87 -6
  27. package/dist/Scope.js +76 -31
  28. package/dist/Scope.js.map +1 -1
  29. package/dist/ScopeNamespaceLookup.d.ts +73 -0
  30. package/dist/ScopeNamespaceLookup.js +242 -0
  31. package/dist/ScopeNamespaceLookup.js.map +1 -0
  32. package/dist/SymbolTable.d.ts +9 -2
  33. package/dist/SymbolTable.js +24 -14
  34. package/dist/SymbolTable.js.map +1 -1
  35. package/dist/astUtils/CachedLookups.js +3 -0
  36. package/dist/astUtils/CachedLookups.js.map +1 -1
  37. package/dist/astUtils/reflection.d.ts +4 -1
  38. package/dist/astUtils/reflection.js +24 -4
  39. package/dist/astUtils/reflection.js.map +1 -1
  40. package/dist/astUtils/visitors.d.ts +2 -1
  41. package/dist/astUtils/visitors.js.map +1 -1
  42. package/dist/bscPlugin/BscPlugin.d.ts +5 -2
  43. package/dist/bscPlugin/BscPlugin.js +14 -2
  44. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  45. package/dist/bscPlugin/CallExpressionInfo.d.ts +1 -1
  46. package/dist/bscPlugin/CallExpressionInfo.js +1 -2
  47. package/dist/bscPlugin/CallExpressionInfo.js.map +1 -1
  48. package/dist/bscPlugin/FileWriter.d.ts +13 -0
  49. package/dist/bscPlugin/FileWriter.js +56 -1
  50. package/dist/bscPlugin/FileWriter.js.map +1 -1
  51. package/dist/bscPlugin/codeActions/CodeActionsProcessor.d.ts +106 -5
  52. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +630 -126
  53. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  54. package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.d.ts +17 -0
  55. package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.js +66 -0
  56. package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.js.map +1 -0
  57. package/dist/bscPlugin/codeActions/codeActionHelpers.d.ts +18 -0
  58. package/dist/bscPlugin/codeActions/codeActionHelpers.js +31 -0
  59. package/dist/bscPlugin/codeActions/codeActionHelpers.js.map +1 -0
  60. package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +1 -1
  61. package/dist/bscPlugin/completions/CompletionsProcessor.js +5 -5
  62. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
  63. package/dist/bscPlugin/definition/DefinitionProvider.js +8 -0
  64. package/dist/bscPlugin/definition/DefinitionProvider.js.map +1 -1
  65. package/dist/bscPlugin/hover/HoverProcessor.js +11 -3
  66. package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -1
  67. package/dist/bscPlugin/inlayHints/InlayHintProcessor.d.ts +23 -0
  68. package/dist/bscPlugin/inlayHints/InlayHintProcessor.js +186 -0
  69. package/dist/bscPlugin/inlayHints/InlayHintProcessor.js.map +1 -0
  70. package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.d.ts +7 -0
  71. package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.js +77 -0
  72. package/dist/bscPlugin/selectionRanges/SelectionRangesProcessor.js.map +1 -0
  73. package/dist/bscPlugin/serialize/FileSerializer.d.ts +1 -1
  74. package/dist/bscPlugin/serialize/FileSerializer.js +12 -7
  75. package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -1
  76. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.d.ts +7 -0
  77. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +87 -1
  78. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -1
  79. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +14 -0
  80. package/dist/bscPlugin/validation/BrsFileValidator.js +97 -21
  81. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
  82. package/dist/bscPlugin/validation/ScopeValidator.d.ts +17 -0
  83. package/dist/bscPlugin/validation/ScopeValidator.js +162 -4
  84. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
  85. package/dist/bscPlugin/validation/XmlFileValidator.js +14 -0
  86. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
  87. package/dist/cli.js +13 -0
  88. package/dist/cli.js.map +1 -1
  89. package/dist/diagnosticUtils.d.ts +51 -1
  90. package/dist/diagnosticUtils.js +222 -1
  91. package/dist/diagnosticUtils.js.map +1 -1
  92. package/dist/files/BrsFile.d.ts +18 -2
  93. package/dist/files/BrsFile.js +87 -6
  94. package/dist/files/BrsFile.js.map +1 -1
  95. package/dist/files/XmlFile.js +2 -1
  96. package/dist/files/XmlFile.js.map +1 -1
  97. package/dist/interfaces.d.ts +101 -23
  98. package/dist/interfaces.js.map +1 -1
  99. package/dist/lexer/Lexer.js +4 -5
  100. package/dist/lexer/Lexer.js.map +1 -1
  101. package/dist/lexer/Token.d.ts +1 -1
  102. package/dist/lexer/TokenKind.d.ts +8 -0
  103. package/dist/lexer/TokenKind.js +21 -1
  104. package/dist/lexer/TokenKind.js.map +1 -1
  105. package/dist/lsp/LspProject.d.ts +56 -1
  106. package/dist/lsp/Project.d.ts +38 -2
  107. package/dist/lsp/Project.js +135 -4
  108. package/dist/lsp/Project.js.map +1 -1
  109. package/dist/lsp/ProjectManager.d.ts +52 -2
  110. package/dist/lsp/ProjectManager.js +164 -9
  111. package/dist/lsp/ProjectManager.js.map +1 -1
  112. package/dist/lsp/worker/WorkerThreadProject.d.ts +31 -2
  113. package/dist/lsp/worker/WorkerThreadProject.js +19 -0
  114. package/dist/lsp/worker/WorkerThreadProject.js.map +1 -1
  115. package/dist/parser/AstNode.d.ts +3 -1
  116. package/dist/parser/AstNode.js +2 -0
  117. package/dist/parser/AstNode.js.map +1 -1
  118. package/dist/parser/Expression.d.ts +54 -5
  119. package/dist/parser/Expression.js +112 -7
  120. package/dist/parser/Expression.js.map +1 -1
  121. package/dist/parser/Parser.d.ts +24 -1
  122. package/dist/parser/Parser.js +180 -41
  123. package/dist/parser/Parser.js.map +1 -1
  124. package/dist/parser/SGParser.d.ts +1 -0
  125. package/dist/parser/SGParser.js +9 -0
  126. package/dist/parser/SGParser.js.map +1 -1
  127. package/dist/parser/Statement.d.ts +6 -1
  128. package/dist/parser/Statement.js +22 -14
  129. package/dist/parser/Statement.js.map +1 -1
  130. package/dist/parser/TranspileState.d.ts +4 -2
  131. package/dist/parser/TranspileState.js +13 -4
  132. package/dist/parser/TranspileState.js.map +1 -1
  133. package/dist/roku-types/data.json +210 -3
  134. package/dist/types/ArrayType.js +6 -1
  135. package/dist/types/ArrayType.js.map +1 -1
  136. package/dist/types/BooleanType.js +1 -1
  137. package/dist/types/BooleanType.js.map +1 -1
  138. package/dist/types/CallFuncableType.d.ts +1 -1
  139. package/dist/types/ClassType.js +3 -0
  140. package/dist/types/ClassType.js.map +1 -1
  141. package/dist/types/ComponentType.js +3 -0
  142. package/dist/types/ComponentType.js.map +1 -1
  143. package/dist/types/EnumType.js +3 -0
  144. package/dist/types/EnumType.js.map +1 -1
  145. package/dist/types/IntersectionType.js +3 -0
  146. package/dist/types/IntersectionType.js.map +1 -1
  147. package/dist/types/ReferenceType.js +6 -0
  148. package/dist/types/ReferenceType.js.map +1 -1
  149. package/dist/types/TypeStatementType.d.ts +1 -0
  150. package/dist/types/TypeStatementType.js +12 -1
  151. package/dist/types/TypeStatementType.js.map +1 -1
  152. package/dist/types/TypedFunctionType.js +20 -10
  153. package/dist/types/TypedFunctionType.js.map +1 -1
  154. package/dist/types/UnionType.js +3 -0
  155. package/dist/types/UnionType.js.map +1 -1
  156. package/dist/types/helpers.js +6 -0
  157. package/dist/types/helpers.js.map +1 -1
  158. package/dist/util.d.ts +42 -3
  159. package/dist/util.js +131 -7
  160. package/dist/util.js.map +1 -1
  161. package/package.json +25 -26
  162. package/dist/astUtils/CachedLookups.spec.d.ts +0 -1
  163. package/dist/astUtils/CachedLookups.spec.js +0 -39
  164. package/dist/astUtils/CachedLookups.spec.js.map +0 -1
  165. package/dist/astUtils/Editor.spec.d.ts +0 -1
  166. package/dist/astUtils/Editor.spec.js +0 -258
  167. package/dist/astUtils/Editor.spec.js.map +0 -1
  168. package/dist/astUtils/creators.spec.d.ts +0 -1
  169. package/dist/astUtils/creators.spec.js +0 -21
  170. package/dist/astUtils/creators.spec.js.map +0 -1
  171. package/dist/astUtils/reflection.spec.d.ts +0 -1
  172. package/dist/astUtils/reflection.spec.js +0 -392
  173. package/dist/astUtils/reflection.spec.js.map +0 -1
  174. package/dist/astUtils/stackedVisitor.spec.d.ts +0 -1
  175. package/dist/astUtils/stackedVisitor.spec.js +0 -79
  176. package/dist/astUtils/stackedVisitor.spec.js.map +0 -1
  177. package/dist/astUtils/visitors.spec.d.ts +0 -1
  178. package/dist/astUtils/visitors.spec.js +0 -1432
  179. package/dist/astUtils/visitors.spec.js.map +0 -1
  180. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.d.ts +0 -1
  181. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +0 -311
  182. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +0 -1
  183. package/dist/bscPlugin/completions/CompletionsProcessor.spec.d.ts +0 -1
  184. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +0 -2512
  185. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +0 -1
  186. package/dist/bscPlugin/definition/DefinitionProvider.spec.d.ts +0 -1
  187. package/dist/bscPlugin/definition/DefinitionProvider.spec.js +0 -87
  188. package/dist/bscPlugin/definition/DefinitionProvider.spec.js.map +0 -1
  189. package/dist/bscPlugin/hover/HoverProcessor.spec.d.ts +0 -1
  190. package/dist/bscPlugin/hover/HoverProcessor.spec.js +0 -991
  191. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +0 -1
  192. package/dist/bscPlugin/references/ReferencesProvider.spec.d.ts +0 -1
  193. package/dist/bscPlugin/references/ReferencesProvider.spec.js +0 -51
  194. package/dist/bscPlugin/references/ReferencesProvider.spec.js.map +0 -1
  195. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.d.ts +0 -1
  196. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +0 -564
  197. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +0 -1
  198. package/dist/bscPlugin/serialize/BslibInjector.spec.d.ts +0 -1
  199. package/dist/bscPlugin/serialize/BslibInjector.spec.js +0 -33
  200. package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +0 -1
  201. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.d.ts +0 -1
  202. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js +0 -291
  203. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js.map +0 -1
  204. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.d.ts +0 -1
  205. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js +0 -245
  206. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js.map +0 -1
  207. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +0 -1
  208. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +0 -75
  209. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +0 -1
  210. package/dist/bscPlugin/validation/BrsFileValidator.spec.d.ts +0 -1
  211. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +0 -1517
  212. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +0 -1
  213. package/dist/bscPlugin/validation/ScopeValidator.spec.d.ts +0 -1
  214. package/dist/bscPlugin/validation/ScopeValidator.spec.js +0 -6135
  215. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +0 -1
  216. package/dist/common/Sequencer.spec.d.ts +0 -1
  217. package/dist/common/Sequencer.spec.js +0 -75
  218. package/dist/common/Sequencer.spec.js.map +0 -1
  219. package/dist/files/BrsFile.Class.spec.d.ts +0 -1
  220. package/dist/files/BrsFile.Class.spec.js +0 -2035
  221. package/dist/files/BrsFile.Class.spec.js.map +0 -1
  222. package/dist/files/BrsFile.spec.d.ts +0 -1
  223. package/dist/files/BrsFile.spec.js +0 -5848
  224. package/dist/files/BrsFile.spec.js.map +0 -1
  225. package/dist/files/LazyFileData.spec.d.ts +0 -1
  226. package/dist/files/LazyFileData.spec.js +0 -27
  227. package/dist/files/LazyFileData.spec.js.map +0 -1
  228. package/dist/files/XmlFile.spec.d.ts +0 -1
  229. package/dist/files/XmlFile.spec.js +0 -1173
  230. package/dist/files/XmlFile.spec.js.map +0 -1
  231. package/dist/files/tests/imports.spec.d.ts +0 -1
  232. package/dist/files/tests/imports.spec.js +0 -251
  233. package/dist/files/tests/imports.spec.js.map +0 -1
  234. package/dist/files/tests/optionalChaning.spec.d.ts +0 -1
  235. package/dist/files/tests/optionalChaning.spec.js +0 -152
  236. package/dist/files/tests/optionalChaning.spec.js.map +0 -1
  237. package/dist/lexer/Character.spec.d.ts +0 -1
  238. package/dist/lexer/Character.spec.js +0 -27
  239. package/dist/lexer/Character.spec.js.map +0 -1
  240. package/dist/lexer/Lexer.spec.d.ts +0 -1
  241. package/dist/lexer/Lexer.spec.js +0 -1345
  242. package/dist/lexer/Lexer.spec.js.map +0 -1
  243. package/dist/lsp/ActionQueue.spec.d.ts +0 -1
  244. package/dist/lsp/ActionQueue.spec.js +0 -80
  245. package/dist/lsp/ActionQueue.spec.js.map +0 -1
  246. package/dist/lsp/DocumentManager.spec.d.ts +0 -1
  247. package/dist/lsp/DocumentManager.spec.js +0 -103
  248. package/dist/lsp/DocumentManager.spec.js.map +0 -1
  249. package/dist/lsp/PathFilterer.spec.d.ts +0 -1
  250. package/dist/lsp/PathFilterer.spec.js +0 -182
  251. package/dist/lsp/PathFilterer.spec.js.map +0 -1
  252. package/dist/lsp/Project.spec.d.ts +0 -1
  253. package/dist/lsp/Project.spec.js +0 -267
  254. package/dist/lsp/Project.spec.js.map +0 -1
  255. package/dist/lsp/ProjectManager.spec.d.ts +0 -1
  256. package/dist/lsp/ProjectManager.spec.js +0 -913
  257. package/dist/lsp/ProjectManager.spec.js.map +0 -1
  258. package/dist/lsp/worker/MessageHandler.spec.d.ts +0 -1
  259. package/dist/lsp/worker/MessageHandler.spec.js +0 -64
  260. package/dist/lsp/worker/MessageHandler.spec.js.map +0 -1
  261. package/dist/lsp/worker/WorkerPool.spec.d.ts +0 -1
  262. package/dist/lsp/worker/WorkerPool.spec.js +0 -59
  263. package/dist/lsp/worker/WorkerPool.spec.js.map +0 -1
  264. package/dist/lsp/worker/WorkerThreadProject.spec.d.ts +0 -2
  265. package/dist/lsp/worker/WorkerThreadProject.spec.js +0 -71
  266. package/dist/lsp/worker/WorkerThreadProject.spec.js.map +0 -1
  267. package/dist/parser/AstNode.spec.d.ts +0 -1
  268. package/dist/parser/AstNode.spec.js +0 -1455
  269. package/dist/parser/AstNode.spec.js.map +0 -1
  270. package/dist/parser/BrightScriptDocParser.spec.d.ts +0 -1
  271. package/dist/parser/BrightScriptDocParser.spec.js +0 -310
  272. package/dist/parser/BrightScriptDocParser.spec.js.map +0 -1
  273. package/dist/parser/Expression.spec.d.ts +0 -1
  274. package/dist/parser/Expression.spec.js +0 -40
  275. package/dist/parser/Expression.spec.js.map +0 -1
  276. package/dist/parser/Parser.Class.spec.d.ts +0 -1
  277. package/dist/parser/Parser.Class.spec.js +0 -520
  278. package/dist/parser/Parser.Class.spec.js.map +0 -1
  279. package/dist/parser/Parser.spec.d.ts +0 -6
  280. package/dist/parser/Parser.spec.js +0 -2802
  281. package/dist/parser/Parser.spec.js.map +0 -1
  282. package/dist/parser/SGParser.spec.d.ts +0 -1
  283. package/dist/parser/SGParser.spec.js +0 -130
  284. package/dist/parser/SGParser.spec.js.map +0 -1
  285. package/dist/parser/Statement.spec.d.ts +0 -1
  286. package/dist/parser/Statement.spec.js +0 -191
  287. package/dist/parser/Statement.spec.js.map +0 -1
  288. package/dist/parser/tests/Parser.spec.d.ts +0 -12
  289. package/dist/parser/tests/Parser.spec.js +0 -29
  290. package/dist/parser/tests/Parser.spec.js.map +0 -1
  291. package/dist/parser/tests/controlFlow/For.spec.d.ts +0 -1
  292. package/dist/parser/tests/controlFlow/For.spec.js +0 -169
  293. package/dist/parser/tests/controlFlow/For.spec.js.map +0 -1
  294. package/dist/parser/tests/controlFlow/ForEach.spec.d.ts +0 -1
  295. package/dist/parser/tests/controlFlow/ForEach.spec.js +0 -140
  296. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +0 -1
  297. package/dist/parser/tests/controlFlow/If.spec.d.ts +0 -1
  298. package/dist/parser/tests/controlFlow/If.spec.js +0 -694
  299. package/dist/parser/tests/controlFlow/If.spec.js.map +0 -1
  300. package/dist/parser/tests/controlFlow/While.spec.d.ts +0 -1
  301. package/dist/parser/tests/controlFlow/While.spec.js +0 -114
  302. package/dist/parser/tests/controlFlow/While.spec.js.map +0 -1
  303. package/dist/parser/tests/expression/Additive.spec.d.ts +0 -1
  304. package/dist/parser/tests/expression/Additive.spec.js +0 -107
  305. package/dist/parser/tests/expression/Additive.spec.js.map +0 -1
  306. package/dist/parser/tests/expression/ArrayLiterals.spec.d.ts +0 -1
  307. package/dist/parser/tests/expression/ArrayLiterals.spec.js +0 -304
  308. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +0 -1
  309. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.d.ts +0 -1
  310. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +0 -342
  311. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +0 -1
  312. package/dist/parser/tests/expression/Boolean.spec.d.ts +0 -1
  313. package/dist/parser/tests/expression/Boolean.spec.js +0 -90
  314. package/dist/parser/tests/expression/Boolean.spec.js.map +0 -1
  315. package/dist/parser/tests/expression/Call.spec.d.ts +0 -1
  316. package/dist/parser/tests/expression/Call.spec.js +0 -252
  317. package/dist/parser/tests/expression/Call.spec.js.map +0 -1
  318. package/dist/parser/tests/expression/Exponential.spec.d.ts +0 -1
  319. package/dist/parser/tests/expression/Exponential.spec.js +0 -37
  320. package/dist/parser/tests/expression/Exponential.spec.js.map +0 -1
  321. package/dist/parser/tests/expression/Function.spec.d.ts +0 -1
  322. package/dist/parser/tests/expression/Function.spec.js +0 -412
  323. package/dist/parser/tests/expression/Function.spec.js.map +0 -1
  324. package/dist/parser/tests/expression/Indexing.spec.d.ts +0 -1
  325. package/dist/parser/tests/expression/Indexing.spec.js +0 -302
  326. package/dist/parser/tests/expression/Indexing.spec.js.map +0 -1
  327. package/dist/parser/tests/expression/Multiplicative.spec.d.ts +0 -1
  328. package/dist/parser/tests/expression/Multiplicative.spec.js +0 -67
  329. package/dist/parser/tests/expression/Multiplicative.spec.js.map +0 -1
  330. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.d.ts +0 -1
  331. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +0 -346
  332. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +0 -1
  333. package/dist/parser/tests/expression/PrefixUnary.spec.d.ts +0 -1
  334. package/dist/parser/tests/expression/PrefixUnary.spec.js +0 -111
  335. package/dist/parser/tests/expression/PrefixUnary.spec.js.map +0 -1
  336. package/dist/parser/tests/expression/Primary.spec.d.ts +0 -1
  337. package/dist/parser/tests/expression/Primary.spec.js +0 -165
  338. package/dist/parser/tests/expression/Primary.spec.js.map +0 -1
  339. package/dist/parser/tests/expression/RegexLiteralExpression.spec.d.ts +0 -1
  340. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +0 -171
  341. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +0 -1
  342. package/dist/parser/tests/expression/Relational.spec.d.ts +0 -1
  343. package/dist/parser/tests/expression/Relational.spec.js +0 -83
  344. package/dist/parser/tests/expression/Relational.spec.js.map +0 -1
  345. package/dist/parser/tests/expression/SourceLiteralExpression.spec.d.ts +0 -1
  346. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +0 -201
  347. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +0 -1
  348. package/dist/parser/tests/expression/TemplateStringExpression.spec.d.ts +0 -1
  349. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +0 -389
  350. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +0 -1
  351. package/dist/parser/tests/expression/TernaryExpression.spec.d.ts +0 -1
  352. package/dist/parser/tests/expression/TernaryExpression.spec.js +0 -878
  353. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +0 -1
  354. package/dist/parser/tests/expression/TypeExpression.spec.d.ts +0 -1
  355. package/dist/parser/tests/expression/TypeExpression.spec.js +0 -126
  356. package/dist/parser/tests/expression/TypeExpression.spec.js.map +0 -1
  357. package/dist/parser/tests/expression/UnaryExpression.spec.d.ts +0 -1
  358. package/dist/parser/tests/expression/UnaryExpression.spec.js +0 -52
  359. package/dist/parser/tests/expression/UnaryExpression.spec.js.map +0 -1
  360. package/dist/parser/tests/statement/AssignmentOperators.spec.d.ts +0 -1
  361. package/dist/parser/tests/statement/AssignmentOperators.spec.js +0 -79
  362. package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +0 -1
  363. package/dist/parser/tests/statement/ConstStatement.spec.d.ts +0 -1
  364. package/dist/parser/tests/statement/ConstStatement.spec.js +0 -500
  365. package/dist/parser/tests/statement/ConstStatement.spec.js.map +0 -1
  366. package/dist/parser/tests/statement/Continue.spec.d.ts +0 -1
  367. package/dist/parser/tests/statement/Continue.spec.js +0 -119
  368. package/dist/parser/tests/statement/Continue.spec.js.map +0 -1
  369. package/dist/parser/tests/statement/Declaration.spec.d.ts +0 -1
  370. package/dist/parser/tests/statement/Declaration.spec.js +0 -114
  371. package/dist/parser/tests/statement/Declaration.spec.js.map +0 -1
  372. package/dist/parser/tests/statement/Dim.spec.d.ts +0 -1
  373. package/dist/parser/tests/statement/Dim.spec.js +0 -80
  374. package/dist/parser/tests/statement/Dim.spec.js.map +0 -1
  375. package/dist/parser/tests/statement/Enum.spec.d.ts +0 -1
  376. package/dist/parser/tests/statement/Enum.spec.js +0 -744
  377. package/dist/parser/tests/statement/Enum.spec.js.map +0 -1
  378. package/dist/parser/tests/statement/For.spec.d.ts +0 -1
  379. package/dist/parser/tests/statement/For.spec.js +0 -45
  380. package/dist/parser/tests/statement/For.spec.js.map +0 -1
  381. package/dist/parser/tests/statement/ForEach.spec.d.ts +0 -1
  382. package/dist/parser/tests/statement/ForEach.spec.js +0 -36
  383. package/dist/parser/tests/statement/ForEach.spec.js.map +0 -1
  384. package/dist/parser/tests/statement/Function.spec.d.ts +0 -1
  385. package/dist/parser/tests/statement/Function.spec.js +0 -343
  386. package/dist/parser/tests/statement/Function.spec.js.map +0 -1
  387. package/dist/parser/tests/statement/Goto.spec.d.ts +0 -1
  388. package/dist/parser/tests/statement/Goto.spec.js +0 -51
  389. package/dist/parser/tests/statement/Goto.spec.js.map +0 -1
  390. package/dist/parser/tests/statement/Increment.spec.d.ts +0 -1
  391. package/dist/parser/tests/statement/Increment.spec.js +0 -120
  392. package/dist/parser/tests/statement/Increment.spec.js.map +0 -1
  393. package/dist/parser/tests/statement/InterfaceStatement.spec.d.ts +0 -1
  394. package/dist/parser/tests/statement/InterfaceStatement.spec.js +0 -110
  395. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +0 -1
  396. package/dist/parser/tests/statement/LibraryStatement.spec.d.ts +0 -1
  397. package/dist/parser/tests/statement/LibraryStatement.spec.js +0 -74
  398. package/dist/parser/tests/statement/LibraryStatement.spec.js.map +0 -1
  399. package/dist/parser/tests/statement/Misc.spec.d.ts +0 -1
  400. package/dist/parser/tests/statement/Misc.spec.js +0 -292
  401. package/dist/parser/tests/statement/Misc.spec.js.map +0 -1
  402. package/dist/parser/tests/statement/PrintStatement.spec.d.ts +0 -1
  403. package/dist/parser/tests/statement/PrintStatement.spec.js +0 -200
  404. package/dist/parser/tests/statement/PrintStatement.spec.js.map +0 -1
  405. package/dist/parser/tests/statement/ReturnStatement.spec.d.ts +0 -1
  406. package/dist/parser/tests/statement/ReturnStatement.spec.js +0 -97
  407. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +0 -1
  408. package/dist/parser/tests/statement/Set.spec.d.ts +0 -1
  409. package/dist/parser/tests/statement/Set.spec.js +0 -232
  410. package/dist/parser/tests/statement/Set.spec.js.map +0 -1
  411. package/dist/parser/tests/statement/Stop.spec.d.ts +0 -1
  412. package/dist/parser/tests/statement/Stop.spec.js +0 -38
  413. package/dist/parser/tests/statement/Stop.spec.js.map +0 -1
  414. package/dist/parser/tests/statement/Throw.spec.d.ts +0 -1
  415. package/dist/parser/tests/statement/Throw.spec.js +0 -38
  416. package/dist/parser/tests/statement/Throw.spec.js.map +0 -1
  417. package/dist/parser/tests/statement/TryCatch.spec.d.ts +0 -1
  418. package/dist/parser/tests/statement/TryCatch.spec.js +0 -151
  419. package/dist/parser/tests/statement/TryCatch.spec.js.map +0 -1
  420. package/dist/preprocessor/Manifest.spec.d.ts +0 -1
  421. package/dist/preprocessor/Manifest.spec.js +0 -80
  422. package/dist/preprocessor/Manifest.spec.js.map +0 -1
  423. package/dist/types/ArrayType.spec.d.ts +0 -1
  424. package/dist/types/ArrayType.spec.js +0 -58
  425. package/dist/types/ArrayType.spec.js.map +0 -1
  426. package/dist/types/BooleanType.spec.d.ts +0 -1
  427. package/dist/types/BooleanType.spec.js +0 -18
  428. package/dist/types/BooleanType.spec.js.map +0 -1
  429. package/dist/types/BuiltInInterfaceAdder.spec.d.ts +0 -1
  430. package/dist/types/BuiltInInterfaceAdder.spec.js +0 -115
  431. package/dist/types/BuiltInInterfaceAdder.spec.js.map +0 -1
  432. package/dist/types/ClassType.spec.d.ts +0 -1
  433. package/dist/types/ClassType.spec.js +0 -76
  434. package/dist/types/ClassType.spec.js.map +0 -1
  435. package/dist/types/DoubleType.spec.d.ts +0 -1
  436. package/dist/types/DoubleType.spec.js +0 -20
  437. package/dist/types/DoubleType.spec.js.map +0 -1
  438. package/dist/types/DynamicType.spec.d.ts +0 -1
  439. package/dist/types/DynamicType.spec.js +0 -23
  440. package/dist/types/DynamicType.spec.js.map +0 -1
  441. package/dist/types/EnumType.spec.d.ts +0 -1
  442. package/dist/types/EnumType.spec.js +0 -33
  443. package/dist/types/EnumType.spec.js.map +0 -1
  444. package/dist/types/FloatType.spec.d.ts +0 -1
  445. package/dist/types/FloatType.spec.js +0 -12
  446. package/dist/types/FloatType.spec.js.map +0 -1
  447. package/dist/types/IntegerType.spec.d.ts +0 -1
  448. package/dist/types/IntegerType.spec.js +0 -16
  449. package/dist/types/IntegerType.spec.js.map +0 -1
  450. package/dist/types/InterfaceType.spec.d.ts +0 -1
  451. package/dist/types/InterfaceType.spec.js +0 -227
  452. package/dist/types/InterfaceType.spec.js.map +0 -1
  453. package/dist/types/IntersectionType.spec.d.ts +0 -1
  454. package/dist/types/IntersectionType.spec.js +0 -150
  455. package/dist/types/IntersectionType.spec.js.map +0 -1
  456. package/dist/types/InvalidType.spec.d.ts +0 -1
  457. package/dist/types/InvalidType.spec.js +0 -16
  458. package/dist/types/InvalidType.spec.js.map +0 -1
  459. package/dist/types/LongIntegerType.spec.d.ts +0 -1
  460. package/dist/types/LongIntegerType.spec.js +0 -18
  461. package/dist/types/LongIntegerType.spec.js.map +0 -1
  462. package/dist/types/ObjectType.spec.d.ts +0 -1
  463. package/dist/types/ObjectType.spec.js +0 -12
  464. package/dist/types/ObjectType.spec.js.map +0 -1
  465. package/dist/types/ReferenceType.spec.d.ts +0 -1
  466. package/dist/types/ReferenceType.spec.js +0 -151
  467. package/dist/types/ReferenceType.spec.js.map +0 -1
  468. package/dist/types/StringType.spec.d.ts +0 -1
  469. package/dist/types/StringType.spec.js +0 -12
  470. package/dist/types/StringType.spec.js.map +0 -1
  471. package/dist/types/TypedFunctionType.spec.d.ts +0 -1
  472. package/dist/types/TypedFunctionType.spec.js +0 -122
  473. package/dist/types/TypedFunctionType.spec.js.map +0 -1
  474. package/dist/types/UnionType.spec.d.ts +0 -1
  475. package/dist/types/UnionType.spec.js +0 -205
  476. package/dist/types/UnionType.spec.js.map +0 -1
  477. package/dist/types/VoidType.spec.d.ts +0 -1
  478. package/dist/types/VoidType.spec.js +0 -12
  479. package/dist/types/VoidType.spec.js.map +0 -1
  480. package/dist/types/helper.spec.d.ts +0 -1
  481. package/dist/types/helper.spec.js +0 -174
  482. package/dist/types/helper.spec.js.map +0 -1
  483. package/dist/types/roFunctionType.spec.d.ts +0 -1
  484. package/dist/types/roFunctionType.spec.js +0 -20
  485. package/dist/types/roFunctionType.spec.js.map +0 -1
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const BooleanType_1 = require("./BooleanType");
5
- const DoubleType_1 = require("./DoubleType");
6
- const DynamicType_1 = require("./DynamicType");
7
- const IntegerType_1 = require("./IntegerType");
8
- describe('DoubleType', () => {
9
- it('is equal to double type', () => {
10
- (0, chai_config_spec_1.expect)(new DoubleType_1.DoubleType().isEqual(new DoubleType_1.DoubleType())).to.be.true;
11
- (0, chai_config_spec_1.expect)(new DoubleType_1.DoubleType().isEqual(new DynamicType_1.DynamicType())).to.be.false;
12
- });
13
- it('is compatible with only correct types', () => {
14
- (0, chai_config_spec_1.expect)(new DoubleType_1.DoubleType().isTypeCompatible(new DoubleType_1.DoubleType())).to.be.true;
15
- (0, chai_config_spec_1.expect)(new DoubleType_1.DoubleType().isTypeCompatible(new DynamicType_1.DynamicType())).to.be.true;
16
- (0, chai_config_spec_1.expect)(new DoubleType_1.DoubleType().isTypeCompatible(IntegerType_1.IntegerType.instance)).to.be.true;
17
- (0, chai_config_spec_1.expect)(new DoubleType_1.DoubleType().isTypeCompatible(BooleanType_1.BooleanType.instance)).to.be.false;
18
- });
19
- });
20
- //# sourceMappingURL=DoubleType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DoubleType.spec.js","sourceRoot":"","sources":["../../src/types/DoubleType.spec.ts"],"names":[],"mappings":";;AAAA,0DAA6C;AAC7C,+CAA4C;AAE5C,6CAA0C;AAC1C,+CAA4C;AAC5C,+CAA4C;AAE5C,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAExB,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QAC/B,IAAA,yBAAM,EAAC,IAAI,uBAAU,EAAE,CAAC,OAAO,CAAC,IAAI,uBAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC9D,IAAA,yBAAM,EAAC,IAAI,uBAAU,EAAE,CAAC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC7C,IAAA,yBAAM,EAAC,IAAI,uBAAU,EAAE,CAAC,gBAAgB,CAAC,IAAI,uBAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACvE,IAAA,yBAAM,EAAC,IAAI,uBAAU,EAAE,CAAC,gBAAgB,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACxE,IAAA,yBAAM,EAAC,IAAI,uBAAU,EAAE,CAAC,gBAAgB,CAAC,yBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC3E,IAAA,yBAAM,EAAC,IAAI,uBAAU,EAAE,CAAC,gBAAgB,CAAC,yBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IAChF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const BooleanType_1 = require("./BooleanType");
5
- const ClassType_1 = require("./ClassType");
6
- const DoubleType_1 = require("./DoubleType");
7
- const DynamicType_1 = require("./DynamicType");
8
- const IntegerType_1 = require("./IntegerType");
9
- describe('DynamicType', () => {
10
- it('is equal to dynamic type', () => {
11
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isEqual(new DynamicType_1.DynamicType())).to.be.true;
12
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isEqual(new DoubleType_1.DoubleType())).to.be.false;
13
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isEqual(new ClassType_1.ClassType('test'))).to.be.false;
14
- });
15
- it('is compatible with only all types', () => {
16
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isTypeCompatible(new DoubleType_1.DoubleType())).to.be.true;
17
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isTypeCompatible(new DynamicType_1.DynamicType())).to.be.true;
18
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isTypeCompatible(IntegerType_1.IntegerType.instance)).to.be.true;
19
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isTypeCompatible(BooleanType_1.BooleanType.instance)).to.be.true;
20
- (0, chai_config_spec_1.expect)(new DynamicType_1.DynamicType().isTypeCompatible(new ClassType_1.ClassType('test'))).to.be.true;
21
- });
22
- });
23
- //# sourceMappingURL=DynamicType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DynamicType.spec.js","sourceRoot":"","sources":["../../src/types/DynamicType.spec.ts"],"names":[],"mappings":";;AAAA,0DAA6C;AAC7C,+CAA4C;AAC5C,2CAAwC;AACxC,6CAA0C;AAE1C,+CAA4C;AAC5C,+CAA4C;AAE5C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAChC,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,OAAO,CAAC,IAAI,uBAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAChE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,OAAO,CAAC,IAAI,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACzC,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,uBAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACxE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACzE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,yBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC5E,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,yBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC5E,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const ClassType_1 = require("./ClassType");
5
- const EnumType_1 = require("./EnumType");
6
- describe('EnumType', () => {
7
- it('is equal to appropriate enum type', () => {
8
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumType('hello').isEqual(new ClassType_1.ClassType('hello'))).to.be.false;
9
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumType('hello').isEqual(new EnumType_1.EnumType('hello'))).to.be.true;
10
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumType('hello').isEqual(new EnumType_1.EnumType('notHello'))).to.be.false;
11
- });
12
- it('is compatible with enum type that is the same', () => {
13
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumType('hello').isTypeCompatible(new ClassType_1.ClassType('hello'))).to.be.false;
14
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumType('hello').isTypeCompatible(new EnumType_1.EnumType('hello'))).to.be.true;
15
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumType('hello').isTypeCompatible(new EnumType_1.EnumType('notHello'))).to.be.false;
16
- });
17
- it('is compatible with appropriate enum member type', () => {
18
- const myEnum = new EnumType_1.EnumType('hello');
19
- (0, chai_config_spec_1.expect)(myEnum.isTypeCompatible(new EnumType_1.EnumType('hello'))).to.be.true;
20
- const enumMember = new EnumType_1.EnumMemberType(myEnum.name, 'someMember');
21
- const enumMember2 = new EnumType_1.EnumMemberType('other', 'someMember');
22
- (0, chai_config_spec_1.expect)(myEnum.isTypeCompatible(enumMember)).to.be.true;
23
- (0, chai_config_spec_1.expect)(myEnum.isTypeCompatible(enumMember2)).to.be.false;
24
- });
25
- });
26
- describe('EnumMemberType', () => {
27
- it('is equal to appropriate enum member type', () => {
28
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumMemberType('a', 'b').isEqual(new EnumType_1.EnumMemberType('a', 'b'))).to.be.true;
29
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumMemberType('a', 'b').isEqual(new EnumType_1.EnumMemberType('a', 'c'))).to.be.false;
30
- (0, chai_config_spec_1.expect)(new EnumType_1.EnumMemberType('a', 'b').isEqual(new EnumType_1.EnumMemberType('d', 'b'))).to.be.false;
31
- });
32
- });
33
- //# sourceMappingURL=EnumType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnumType.spec.js","sourceRoot":"","sources":["../../src/types/EnumType.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const DynamicType_1 = require("./DynamicType");
5
- const FloatType_1 = require("./FloatType");
6
- describe('FloatType', () => {
7
- it('is compatible to double types', () => {
8
- (0, chai_config_spec_1.expect)(new FloatType_1.FloatType().isTypeCompatible(new FloatType_1.FloatType())).to.be.true;
9
- (0, chai_config_spec_1.expect)(new FloatType_1.FloatType().isTypeCompatible(new DynamicType_1.DynamicType())).to.be.true;
10
- });
11
- });
12
- //# sourceMappingURL=FloatType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FloatType.spec.js","sourceRoot":"","sources":["../../src/types/FloatType.spec.ts"],"names":[],"mappings":";;AAAA,0DAA6C;AAE7C,+CAA4C;AAC5C,2CAAwC;AAExC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACrC,IAAA,yBAAM,EAAC,IAAI,qBAAS,EAAE,CAAC,gBAAgB,CAAC,IAAI,qBAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACrE,IAAA,yBAAM,EAAC,IAAI,qBAAS,EAAE,CAAC,gBAAgB,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC3E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const DynamicType_1 = require("./DynamicType");
5
- const IntegerType_1 = require("./IntegerType");
6
- describe('IntegerType', () => {
7
- it('is equal to other integer types', () => {
8
- (0, chai_config_spec_1.expect)(new IntegerType_1.IntegerType().isEqual(new IntegerType_1.IntegerType())).to.be.true;
9
- (0, chai_config_spec_1.expect)(new IntegerType_1.IntegerType().isEqual(new DynamicType_1.DynamicType())).to.be.false;
10
- });
11
- it('is compatible with to other integer types', () => {
12
- (0, chai_config_spec_1.expect)(new IntegerType_1.IntegerType().isTypeCompatible(new IntegerType_1.IntegerType())).to.be.true;
13
- (0, chai_config_spec_1.expect)(new IntegerType_1.IntegerType().isTypeCompatible(new DynamicType_1.DynamicType())).to.be.true;
14
- });
15
- });
16
- //# sourceMappingURL=IntegerType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IntegerType.spec.js","sourceRoot":"","sources":["../../src/types/IntegerType.spec.ts"],"names":[],"mappings":";;AAAA,0DAA6C;AAC7C,+CAA4C;AAC5C,+CAA4C;AAE5C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACvC,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACjD,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACzE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC7E,CAAC,CAAC,CAAC;AAGP,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,227 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const sinon_1 = require("sinon");
5
- const DynamicType_1 = require("./DynamicType");
6
- const IntegerType_1 = require("./IntegerType");
7
- const InterfaceType_1 = require("./InterfaceType");
8
- const ObjectType_1 = require("./ObjectType");
9
- const StringType_1 = require("./StringType");
10
- const AssociativeArrayType_1 = require("./AssociativeArrayType");
11
- const ArrayType_1 = require("./ArrayType");
12
- const BooleanType_1 = require("./BooleanType");
13
- const DiagnosticMessages_1 = require("../DiagnosticMessages");
14
- describe('InterfaceType', () => {
15
- describe('toJSString', () => {
16
- it('returns empty curly braces when no members', () => {
17
- (0, chai_config_spec_1.expect)(iface({}).toJSString()).to.eql('{}');
18
- });
19
- it('includes member types', () => {
20
- (0, chai_config_spec_1.expect)(iface({ name: new StringType_1.StringType() }).toJSString()).to.eql('{ name: string; }');
21
- });
22
- it('includes nested object types', () => {
23
- (0, chai_config_spec_1.expect)(iface({
24
- name: new StringType_1.StringType(),
25
- parent: iface({
26
- age: new IntegerType_1.IntegerType()
27
- })
28
- }).toJSString()).to.eql('{ name: string; parent: { age: integer; }; }');
29
- });
30
- });
31
- describe('isTypeCompatible', () => {
32
- it('works', () => {
33
- expectCompatible({
34
- name: new StringType_1.StringType()
35
- }, {
36
- name: new StringType_1.StringType()
37
- });
38
- });
39
- it('does not crash when given non types', () => {
40
- const iface = new InterfaceType_1.InterfaceType('roArray');
41
- (0, chai_config_spec_1.expect)(iface.isTypeCompatible(undefined)).to.be.false;
42
- (0, chai_config_spec_1.expect)(iface.isTypeCompatible(null)).to.be.false;
43
- });
44
- it('roku component types are compatible with BscTypes', () => {
45
- // TODO: Fix String type compatibility - reason is because of overloaded members (Mid(), StartsWith(), etc)
46
- // SEE: https://github.com/rokucommunity/brighterscript/issues/926
47
- // expectTypeCrossCompatible(new StringType(), new InterfaceType('roString'));
48
- expectTypeCrossCompatible(new ArrayType_1.ArrayType(), new InterfaceType_1.InterfaceType('roArray'));
49
- expectTypeCrossCompatible(new AssociativeArrayType_1.AssociativeArrayType(), new InterfaceType_1.InterfaceType('roAssociativeArray'));
50
- expectTypeCrossCompatible(new BooleanType_1.BooleanType(), new InterfaceType_1.InterfaceType('roBoolean'));
51
- expectTypeCrossCompatible(new IntegerType_1.IntegerType(), new InterfaceType_1.InterfaceType('roInt'));
52
- });
53
- });
54
- describe('equals', () => {
55
- it('matches same objects', () => {
56
- const ifaceObj = iface({ name: new StringType_1.StringType() });
57
- (0, chai_config_spec_1.expect)(ifaceObj.isEqual(ifaceObj)).to.be.true;
58
- });
59
- it('does not match interfaces with same members', () => {
60
- (0, chai_config_spec_1.expect)(iface({ name: new StringType_1.StringType() }).isEqual(iface({ name: new StringType_1.StringType() }))).to.be.false;
61
- });
62
- it('does not match inequal objects', () => {
63
- (0, chai_config_spec_1.expect)(iface({ name: new StringType_1.StringType() }).isEqual(iface({ name: new IntegerType_1.IntegerType() }))).to.be.false;
64
- });
65
- it('works for recursive types', () => {
66
- var _a;
67
- let linkListNode1 = iface({ name: StringType_1.StringType.instance }, 'LinkNode');
68
- linkListNode1.addMember('next', {}, linkListNode1, 1 /* SymbolTypeFlag.runtime */);
69
- let linkListNode2 = iface({ name: StringType_1.StringType.instance }, 'LinkNode');
70
- linkListNode2.addMember('next', {}, linkListNode2, 1 /* SymbolTypeFlag.runtime */);
71
- let compatData = {};
72
- let typesAreEqual = linkListNode1.isEqual(linkListNode2, compatData);
73
- (0, chai_config_spec_1.expect)(typesAreEqual).to.be.true;
74
- (0, chai_config_spec_1.expect)((_a = compatData === null || compatData === void 0 ? void 0 : compatData.fieldMismatches) !== null && _a !== void 0 ? _a : []).to.be.empty;
75
- });
76
- });
77
- describe('isTypeCompatible', () => {
78
- it('rejects being able to assign other types to this', () => {
79
- (0, chai_config_spec_1.expect)(iface({
80
- name: new StringType_1.StringType()
81
- }).isTypeCompatible(new IntegerType_1.IntegerType())).to.be.false;
82
- });
83
- it('matches exact properties', () => {
84
- expectCompatible({
85
- name: new StringType_1.StringType()
86
- }, {
87
- name: new StringType_1.StringType()
88
- });
89
- });
90
- it('matches an object with more properties being assigned to an object with less', () => {
91
- expectCompatible({
92
- name: new StringType_1.StringType()
93
- }, {
94
- name: new StringType_1.StringType(),
95
- age: new IntegerType_1.IntegerType()
96
- });
97
- });
98
- it('rejects assigning an object with less properties to one with more', () => {
99
- expectNotCompatible({
100
- name: new StringType_1.StringType(),
101
- age: new IntegerType_1.IntegerType()
102
- }, {
103
- name: new StringType_1.StringType()
104
- });
105
- });
106
- it('matches properties in mismatched order', () => {
107
- const ifaceOne = iface({
108
- name: new StringType_1.StringType(),
109
- age: new IntegerType_1.IntegerType()
110
- });
111
- const ifaceTwo = iface({
112
- age: new IntegerType_1.IntegerType(),
113
- name: new StringType_1.StringType()
114
- });
115
- (0, chai_config_spec_1.expect)(ifaceOne.isTypeCompatible(ifaceTwo)).to.be.true;
116
- (0, chai_config_spec_1.expect)(ifaceTwo.isTypeCompatible(ifaceOne)).to.be.true;
117
- });
118
- it('rejects with member having mismatched type', () => {
119
- expectNotCompatible({
120
- name: new StringType_1.StringType()
121
- }, {
122
- name: new IntegerType_1.IntegerType()
123
- });
124
- });
125
- it('rejects with object member having mismatched type', () => {
126
- expectNotCompatible({
127
- parent: iface({
128
- name: new StringType_1.StringType()
129
- })
130
- }, {
131
- parent: iface({
132
- name: new IntegerType_1.IntegerType()
133
- })
134
- });
135
- });
136
- it('rejects with object member having missing prop type', () => {
137
- expectNotCompatible({
138
- parent: iface({
139
- name: new StringType_1.StringType(),
140
- age: new IntegerType_1.IntegerType()
141
- })
142
- }, {
143
- parent: iface({
144
- name: new StringType_1.StringType()
145
- })
146
- });
147
- });
148
- it('accepts with object member having same prop types', () => {
149
- expectCompatible({
150
- parent: iface({
151
- name: new StringType_1.StringType(),
152
- age: new IntegerType_1.IntegerType()
153
- })
154
- }, {
155
- parent: iface({
156
- name: new StringType_1.StringType(),
157
- age: new IntegerType_1.IntegerType()
158
- })
159
- });
160
- });
161
- it('accepts with source member having dyanmic prop type', () => {
162
- expectCompatible({
163
- parent: new DynamicType_1.DynamicType()
164
- }, {
165
- parent: iface({
166
- name: new StringType_1.StringType(),
167
- age: new IntegerType_1.IntegerType()
168
- })
169
- });
170
- });
171
- it('accepts with target member having dynamic prop type', () => {
172
- expectCompatible({
173
- parent: iface({
174
- name: new StringType_1.StringType(),
175
- age: new IntegerType_1.IntegerType()
176
- })
177
- }, {
178
- parent: new DynamicType_1.DynamicType()
179
- });
180
- });
181
- it('accepts with target member having "object" prop type', () => {
182
- expectCompatible({
183
- parent: iface({
184
- name: new StringType_1.StringType(),
185
- age: new IntegerType_1.IntegerType()
186
- })
187
- }, {
188
- parent: new ObjectType_1.ObjectType()
189
- });
190
- });
191
- });
192
- });
193
- let ifaceCount = 0;
194
- function iface(members, name, parentType) {
195
- name = name !== null && name !== void 0 ? name : 'SomeIFace' + ifaceCount;
196
- ifaceCount++;
197
- const ifaceType = new InterfaceType_1.InterfaceType(name, parentType);
198
- for (const key in members) {
199
- ifaceType.addMember(key, null, members[key], 1 /* SymbolTypeFlag.runtime */);
200
- }
201
- return ifaceType;
202
- }
203
- function expectCompatible(sourceMembers, targetMembers) {
204
- const targetIface = iface(targetMembers);
205
- const sourceIface = iface(sourceMembers);
206
- if (!sourceIface.isTypeCompatible(targetIface)) {
207
- sinon_1.assert.fail(`expected type ${targetIface.toJSString()} to be assignable to type ${sourceIface.toJSString()}`);
208
- }
209
- }
210
- function expectNotCompatible(sourceMembers, targetMembers) {
211
- const targetIface = iface(targetMembers);
212
- const sourceIface = iface(sourceMembers);
213
- if (sourceIface.isTypeCompatible(targetIface)) {
214
- sinon_1.assert.fail(`expected type ${targetIface.toJSString()} to not be assignable to type ${sourceIface.toJSString()}`);
215
- }
216
- }
217
- function expectTypeCrossCompatible(source, target) {
218
- let data = {};
219
- if (!source.isTypeCompatible(target, data)) {
220
- sinon_1.assert.fail((0, DiagnosticMessages_1.typeCompatibilityMessage)(target.toString(), source.toString(), data));
221
- }
222
- data = {};
223
- if (!target.isTypeCompatible(source, data)) {
224
- sinon_1.assert.fail((0, DiagnosticMessages_1.typeCompatibilityMessage)(source.toString(), target.toString(), data));
225
- }
226
- }
227
- //# sourceMappingURL=InterfaceType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InterfaceType.spec.js","sourceRoot":"","sources":["../../src/types/InterfaceType.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,150 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_1 = require("chai");
4
- const StringType_1 = require("./StringType");
5
- const IntegerType_1 = require("./IntegerType");
6
- const IntersectionType_1 = require("./IntersectionType");
7
- const FloatType_1 = require("./FloatType");
8
- const InterfaceType_1 = require("./InterfaceType");
9
- const BooleanType_1 = require("./BooleanType");
10
- const testHelpers_spec_1 = require("../testHelpers.spec");
11
- const SymbolTable_1 = require("../SymbolTable");
12
- const ReferenceType_1 = require("./ReferenceType");
13
- describe('IntersectionType', () => {
14
- it('has all the members of all types', () => {
15
- const iFace = new InterfaceType_1.InterfaceType('Iface');
16
- iFace.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
17
- iFace.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
18
- const iFace2 = new InterfaceType_1.InterfaceType('Iface2');
19
- iFace2.addMember('age', null, FloatType_1.FloatType.instance, 1 /* SymbolTypeFlag.runtime */);
20
- const addressInterfaceType = new InterfaceType_1.InterfaceType('address');
21
- iFace2.addMember('address', null, addressInterfaceType, 1 /* SymbolTypeFlag.runtime */);
22
- iFace2.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
23
- const myIntersection = new IntersectionType_1.IntersectionType([iFace, iFace2]);
24
- const ageType = myIntersection.getMemberType('age', { flags: 1 /* SymbolTypeFlag.runtime */ });
25
- const addressType = myIntersection.getMemberType('address', { flags: 1 /* SymbolTypeFlag.runtime */ });
26
- const nameType = myIntersection.getMemberType('name', { flags: 1 /* SymbolTypeFlag.runtime */ });
27
- (0, testHelpers_spec_1.expectTypeToBe)(nameType, StringType_1.StringType);
28
- (0, testHelpers_spec_1.expectTypeToBe)(addressType, InterfaceType_1.InterfaceType);
29
- (0, chai_1.expect)(addressType).to.equal(addressInterfaceType);
30
- (0, testHelpers_spec_1.expectTypeToBe)(ageType, IntersectionType_1.IntersectionType);
31
- (0, chai_1.expect)(ageType.types.length).to.eq(2);
32
- (0, chai_1.expect)(ageType.types).to.include(FloatType_1.FloatType.instance);
33
- (0, chai_1.expect)(ageType.types).to.include(IntegerType_1.IntegerType.instance);
34
- });
35
- it('can assign to a more specific Intersection', () => {
36
- const myInter = new IntersectionType_1.IntersectionType([StringType_1.StringType.instance, FloatType_1.FloatType.instance]);
37
- const otherInter = new IntersectionType_1.IntersectionType([FloatType_1.FloatType.instance, StringType_1.StringType.instance, BooleanType_1.BooleanType.instance]);
38
- (0, chai_1.expect)(myInter.isTypeCompatible(otherInter)).to.be.true;
39
- (0, chai_1.expect)(otherInter.isTypeCompatible(myInter)).to.be.false;
40
- });
41
- it('will get a string representation in order given', () => {
42
- const iFace1 = new InterfaceType_1.InterfaceType('SomeIface');
43
- iFace1.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
44
- iFace1.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
45
- iFace1.addMember('height', null, FloatType_1.FloatType.instance, 1 /* SymbolTypeFlag.runtime */);
46
- const myInter = new IntersectionType_1.IntersectionType([FloatType_1.FloatType.instance, StringType_1.StringType.instance, BooleanType_1.BooleanType.instance, iFace1]);
47
- (0, chai_1.expect)(myInter.toString()).to.eq('float and string and boolean and SomeIface');
48
- });
49
- it('isResolvable if any inner type is resolvable', () => {
50
- const refTable = new SymbolTable_1.SymbolTable('test');
51
- const refType = new ReferenceType_1.ReferenceType('SomeType', 'SomeType', 2 /* SymbolTypeFlag.typetime */, () => refTable);
52
- const myInter1 = new IntersectionType_1.IntersectionType([refType, StringType_1.StringType.instance]);
53
- (0, chai_1.expect)(myInter1.isResolvable()).to.be.true;
54
- const myInter2 = new IntersectionType_1.IntersectionType([refType]);
55
- (0, chai_1.expect)(myInter2.isResolvable()).to.be.false;
56
- });
57
- it('inner type order does not affect equality', () => {
58
- const inter1 = new IntersectionType_1.IntersectionType([StringType_1.StringType.instance, IntegerType_1.IntegerType.instance, FloatType_1.FloatType.instance]);
59
- const inter2 = new IntersectionType_1.IntersectionType([FloatType_1.FloatType.instance, StringType_1.StringType.instance, IntegerType_1.IntegerType.instance]);
60
- (0, chai_1.expect)(inter1.isEqual(inter2)).to.be.true;
61
- });
62
- it('more specific intersections are compatible with less specific ones', () => {
63
- const inter1 = new IntersectionType_1.IntersectionType([StringType_1.StringType.instance, BooleanType_1.BooleanType.instance, FloatType_1.FloatType.instance]);
64
- const inter2 = new IntersectionType_1.IntersectionType([FloatType_1.FloatType.instance, BooleanType_1.BooleanType.instance]);
65
- (0, chai_1.expect)(inter1.isTypeCompatible(inter2)).to.be.false;
66
- (0, chai_1.expect)(inter2.isTypeCompatible(inter1)).to.be.true;
67
- });
68
- it('more specific member interface is compatible with less specific ones', () => {
69
- const iFace1 = new InterfaceType_1.InterfaceType('iFace1');
70
- iFace1.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
71
- iFace1.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
72
- const iFace2 = new InterfaceType_1.InterfaceType('iFace2');
73
- iFace2.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
74
- iFace2.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
75
- iFace2.addMember('height', null, FloatType_1.FloatType.instance, 1 /* SymbolTypeFlag.runtime */);
76
- const inter1 = new IntersectionType_1.IntersectionType([iFace1, StringType_1.StringType.instance]);
77
- const inter2 = new IntersectionType_1.IntersectionType([iFace2, StringType_1.StringType.instance]);
78
- (0, chai_1.expect)(inter2.isTypeCompatible(inter1)).to.be.false;
79
- (0, chai_1.expect)(inter1.isTypeCompatible(inter2)).to.be.true;
80
- });
81
- it('interface is compatible with intersection with common members and vice versa', () => {
82
- const iFace1 = new InterfaceType_1.InterfaceType('iFace1');
83
- iFace1.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
84
- iFace1.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
85
- const iFace2 = new InterfaceType_1.InterfaceType('iFace2');
86
- iFace2.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
87
- const iFace3 = new InterfaceType_1.InterfaceType('iFace3');
88
- iFace3.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
89
- const inter = new IntersectionType_1.IntersectionType([iFace2, iFace3]);
90
- (0, chai_1.expect)(iFace1.isTypeCompatible(inter)).to.be.true;
91
- (0, chai_1.expect)(inter.isTypeCompatible(iFace1)).to.be.true;
92
- });
93
- it('is not compatible when it must satisfy conflicting member types', () => {
94
- const iFace1 = new InterfaceType_1.InterfaceType('iFace1');
95
- iFace1.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
96
- const iFace2 = new InterfaceType_1.InterfaceType('iFace2');
97
- iFace2.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
98
- const inter = new IntersectionType_1.IntersectionType([iFace1, iFace2]);
99
- const iFace3 = new InterfaceType_1.InterfaceType('iFace3');
100
- iFace3.addMember('age', null, BooleanType_1.BooleanType.instance, 1 /* SymbolTypeFlag.runtime */);
101
- iFace3.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
102
- (0, chai_1.expect)(inter.isTypeCompatible(iFace3)).to.be.false;
103
- (0, chai_1.expect)(iFace3.isTypeCompatible(inter)).to.be.false;
104
- });
105
- describe('getMemberType', () => {
106
- it('will find the intersection of inner types', () => {
107
- const iFace1 = new InterfaceType_1.InterfaceType('iFace1');
108
- iFace1.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
109
- iFace1.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
110
- iFace1.addMember('height', null, FloatType_1.FloatType.instance, 1 /* SymbolTypeFlag.runtime */);
111
- const iFace2 = new InterfaceType_1.InterfaceType('iFace2');
112
- iFace2.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
113
- iFace2.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
114
- iFace2.addMember('height', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
115
- const myInter = new IntersectionType_1.IntersectionType([iFace1, iFace2]);
116
- const options = { flags: 1 /* SymbolTypeFlag.runtime */ };
117
- const ageType = myInter.getMemberType('age', options);
118
- (0, testHelpers_spec_1.expectTypeToBe)(ageType, IntegerType_1.IntegerType);
119
- const nameType = myInter.getMemberType('name', options);
120
- (0, testHelpers_spec_1.expectTypeToBe)(nameType, StringType_1.StringType);
121
- const heightType = myInter.getMemberType('height', options);
122
- (0, testHelpers_spec_1.expectTypeToBe)(heightType, IntersectionType_1.IntersectionType);
123
- const heightTypes = heightType.types;
124
- (0, chai_1.expect)(heightTypes).to.include(FloatType_1.FloatType.instance);
125
- (0, chai_1.expect)(heightTypes).to.include(StringType_1.StringType.instance);
126
- });
127
- it('will not return reference types if at least one inner type includes the member', () => {
128
- const iFace1 = new InterfaceType_1.InterfaceType('iFace1');
129
- iFace1.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
130
- iFace1.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
131
- iFace1.addMember('height', null, FloatType_1.FloatType.instance, 1 /* SymbolTypeFlag.runtime */);
132
- const iFace2 = new InterfaceType_1.InterfaceType('iFace2');
133
- iFace2.addMember('age', null, IntegerType_1.IntegerType.instance, 1 /* SymbolTypeFlag.runtime */);
134
- iFace2.addMember('name', null, StringType_1.StringType.instance, 1 /* SymbolTypeFlag.runtime */);
135
- const myInter = new IntersectionType_1.IntersectionType([iFace1, iFace2]);
136
- const options = { flags: 1 /* SymbolTypeFlag.runtime */ };
137
- const heightType1 = myInter.getMemberType('height', options);
138
- (0, testHelpers_spec_1.expectTypeToBe)(heightType1, FloatType_1.FloatType);
139
- // adding new member to iFace2, result will be intersection
140
- iFace2.addMember('height', null, BooleanType_1.BooleanType.instance, 1 /* SymbolTypeFlag.runtime */);
141
- const heightType2 = myInter.getMemberType('height', options);
142
- (0, testHelpers_spec_1.expectTypeToBe)(heightType2, IntersectionType_1.IntersectionType);
143
- const heightTypes2 = heightType2.types;
144
- (0, chai_1.expect)(heightTypes2.length).to.eq(2);
145
- (0, testHelpers_spec_1.expectTypeToBe)(heightTypes2[0], FloatType_1.FloatType);
146
- (0, testHelpers_spec_1.expectTypeToBe)(heightTypes2[1], BooleanType_1.BooleanType);
147
- });
148
- });
149
- });
150
- //# sourceMappingURL=IntersectionType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IntersectionType.spec.js","sourceRoot":"","sources":["../../src/types/IntersectionType.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const DynamicType_1 = require("./DynamicType");
5
- const InvalidType_1 = require("./InvalidType");
6
- describe('InvalidType', () => {
7
- it('is compatible to invalid types', () => {
8
- (0, chai_config_spec_1.expect)(new InvalidType_1.InvalidType().isTypeCompatible(new InvalidType_1.InvalidType())).to.be.true;
9
- (0, chai_config_spec_1.expect)(new InvalidType_1.InvalidType().isTypeCompatible(new DynamicType_1.DynamicType())).to.be.true;
10
- });
11
- it('is equal to invalid types', () => {
12
- (0, chai_config_spec_1.expect)(new InvalidType_1.InvalidType().isEqual(new InvalidType_1.InvalidType())).to.be.true;
13
- (0, chai_config_spec_1.expect)(new InvalidType_1.InvalidType().isEqual(new DynamicType_1.DynamicType())).to.be.false;
14
- });
15
- });
16
- //# sourceMappingURL=InvalidType.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InvalidType.spec.js","sourceRoot":"","sources":["../../src/types/InvalidType.spec.ts"],"names":[],"mappings":";;AAAA,0DAA6C;AAE7C,+CAA4C;AAC5C,+CAA4C;AAE5C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACtC,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACzE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACjC,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChE,IAAA,yBAAM,EAAC,IAAI,yBAAW,EAAE,CAAC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACrE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_config_spec_1 = require("../chai-config.spec");
4
- const DynamicType_1 = require("./DynamicType");
5
- const FloatType_1 = require("./FloatType");
6
- const LongIntegerType_1 = require("./LongIntegerType");
7
- describe('LongIntegerType', () => {
8
- it('is equal to other longinteger types', () => {
9
- (0, chai_config_spec_1.expect)(new LongIntegerType_1.LongIntegerType().isEqual(new LongIntegerType_1.LongIntegerType())).to.be.true;
10
- (0, chai_config_spec_1.expect)(new LongIntegerType_1.LongIntegerType().isEqual(new DynamicType_1.DynamicType())).to.be.false;
11
- });
12
- it('is compatible with to other integer types', () => {
13
- (0, chai_config_spec_1.expect)(new LongIntegerType_1.LongIntegerType().isTypeCompatible(new LongIntegerType_1.LongIntegerType())).to.be.true;
14
- (0, chai_config_spec_1.expect)(new LongIntegerType_1.LongIntegerType().isTypeCompatible(new FloatType_1.FloatType())).to.be.true;
15
- (0, chai_config_spec_1.expect)(new LongIntegerType_1.LongIntegerType().isTypeCompatible(new DynamicType_1.DynamicType())).to.be.true;
16
- });
17
- });
18
- //# sourceMappingURL=LongIntegerType.spec.js.map