@harmoniclabs/pebble 0.1.0-dev0 → 0.1.0-dev2

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 (769) hide show
  1. package/package.json +1 -1
  2. package/dist/IR/IRHash.d.ts +0 -8
  3. package/dist/IR/IRHash.js +0 -78
  4. package/dist/IR/IRNodeKind.d.ts +0 -17
  5. package/dist/IR/IRNodeKind.js +0 -19
  6. package/dist/IR/IRNodes/BaseIRMetadata.d.ts +0 -3
  7. package/dist/IR/IRNodes/BaseIRMetadata.js +0 -1
  8. package/dist/IR/IRNodes/IRApp.d.ts +0 -36
  9. package/dist/IR/IRNodes/IRApp.js +0 -91
  10. package/dist/IR/IRNodes/IRCase.d.ts +0 -32
  11. package/dist/IR/IRNodes/IRCase.js +0 -91
  12. package/dist/IR/IRNodes/IRConst.d.ts +0 -49
  13. package/dist/IR/IRNodes/IRConst.js +0 -273
  14. package/dist/IR/IRNodes/IRConstr.d.ts +0 -30
  15. package/dist/IR/IRNodes/IRConstr.js +0 -87
  16. package/dist/IR/IRNodes/IRDelayed.d.ts +0 -31
  17. package/dist/IR/IRNodes/IRDelayed.js +0 -68
  18. package/dist/IR/IRNodes/IRError.d.ts +0 -32
  19. package/dist/IR/IRNodes/IRError.js +0 -44
  20. package/dist/IR/IRNodes/IRForced.d.ts +0 -31
  21. package/dist/IR/IRNodes/IRForced.js +0 -69
  22. package/dist/IR/IRNodes/IRFunc.d.ts +0 -33
  23. package/dist/IR/IRNodes/IRFunc.js +0 -91
  24. package/dist/IR/IRNodes/IRHoisted.d.ts +0 -55
  25. package/dist/IR/IRNodes/IRHoisted.js +0 -212
  26. package/dist/IR/IRNodes/IRLetted.d.ts +0 -108
  27. package/dist/IR/IRNodes/IRLetted.js +0 -444
  28. package/dist/IR/IRNodes/IRNative/IRNativeTag.d.ts +0 -138
  29. package/dist/IR/IRNodes/IRNative/IRNativeTag.js +0 -204
  30. package/dist/IR/IRNodes/IRNative/index.d.ts +0 -165
  31. package/dist/IR/IRNodes/IRNative/index.js +0 -240
  32. package/dist/IR/IRNodes/IRNative/isForcedNative.d.ts +0 -3
  33. package/dist/IR/IRNodes/IRNative/isForcedNative.js +0 -18
  34. package/dist/IR/IRNodes/IRRecursive.d.ts +0 -29
  35. package/dist/IR/IRNodes/IRRecursive.js +0 -90
  36. package/dist/IR/IRNodes/IRSelfCall.d.ts +0 -46
  37. package/dist/IR/IRNodes/IRSelfCall.js +0 -127
  38. package/dist/IR/IRNodes/IRVar.d.ts +0 -41
  39. package/dist/IR/IRNodes/IRVar.js +0 -93
  40. package/dist/IR/IRNodes/index.d.ts +0 -12
  41. package/dist/IR/IRNodes/index.js +0 -12
  42. package/dist/IR/IRNodes/utils/dependsByDbns.d.ts +0 -5
  43. package/dist/IR/IRNodes/utils/dependsByDbns.js +0 -29
  44. package/dist/IR/IRNodes/utils/isClosedAtDbn.d.ts +0 -2
  45. package/dist/IR/IRNodes/utils/isClosedAtDbn.js +0 -22
  46. package/dist/IR/IRNodes/utils/makeArrayLikeProxy.d.ts +0 -1
  47. package/dist/IR/IRNodes/utils/makeArrayLikeProxy.js +0 -34
  48. package/dist/IR/IRNodes/utils/mapArrayLike.d.ts +0 -1
  49. package/dist/IR/IRNodes/utils/mapArrayLike.js +0 -8
  50. package/dist/IR/IRTerm.d.ts +0 -15
  51. package/dist/IR/IRTerm.js +0 -1
  52. package/dist/IR/index.d.ts +0 -5
  53. package/dist/IR/index.js +0 -5
  54. package/dist/IR/interfaces/IHash.d.ts +0 -6
  55. package/dist/IR/interfaces/IHash.js +0 -1
  56. package/dist/IR/interfaces/IIRParent.d.ts +0 -4
  57. package/dist/IR/interfaces/IIRParent.js +0 -1
  58. package/dist/IR/interfaces/IRMetadata.d.ts +0 -3
  59. package/dist/IR/interfaces/IRMetadata.js +0 -2
  60. package/dist/IR/interfaces/ToIR.d.ts +0 -5
  61. package/dist/IR/interfaces/ToIR.js +0 -1
  62. package/dist/IR/interfaces/index.d.ts +0 -4
  63. package/dist/IR/interfaces/index.js +0 -4
  64. package/dist/IR/toUPLC/CompilerOptions.d.ts +0 -80
  65. package/dist/IR/toUPLC/CompilerOptions.js +0 -98
  66. package/dist/IR/toUPLC/_internal/_addDepth.d.ts +0 -2
  67. package/dist/IR/toUPLC/_internal/_addDepth.js +0 -58
  68. package/dist/IR/toUPLC/_internal/_irToUplc.d.ts +0 -9
  69. package/dist/IR/toUPLC/_internal/_irToUplc.js +0 -156
  70. package/dist/IR/toUPLC/_internal/_makeAllNegativeNativesHoisted.d.ts +0 -2
  71. package/dist/IR/toUPLC/_internal/_makeAllNegativeNativesHoisted.js +0 -12
  72. package/dist/IR/toUPLC/_internal/_modifyChildFromTo.d.ts +0 -10
  73. package/dist/IR/toUPLC/_internal/_modifyChildFromTo.js +0 -141
  74. package/dist/IR/toUPLC/_internal/depth.d.ts +0 -5
  75. package/dist/IR/toUPLC/_internal/depth.js +0 -8
  76. package/dist/IR/toUPLC/_internal/findAll.d.ts +0 -3
  77. package/dist/IR/toUPLC/_internal/findAll.js +0 -99
  78. package/dist/IR/toUPLC/_internal/getDebruijnInTerm.d.ts +0 -2
  79. package/dist/IR/toUPLC/_internal/getDebruijnInTerm.js +0 -51
  80. package/dist/IR/toUPLC/_internal/getDiffDbn.d.ts +0 -2
  81. package/dist/IR/toUPLC/_internal/getDiffDbn.js +0 -55
  82. package/dist/IR/toUPLC/_internal/includesLettedTerms.d.ts +0 -2
  83. package/dist/IR/toUPLC/_internal/includesLettedTerms.js +0 -50
  84. package/dist/IR/toUPLC/_internal/includesNode.d.ts +0 -2
  85. package/dist/IR/toUPLC/_internal/includesNode.js +0 -54
  86. package/dist/IR/toUPLC/_internal/iterTree.d.ts +0 -2
  87. package/dist/IR/toUPLC/_internal/iterTree.js +0 -93
  88. package/dist/IR/toUPLC/_internal/lowestCommonAncestor.d.ts +0 -3
  89. package/dist/IR/toUPLC/_internal/lowestCommonAncestor.js +0 -41
  90. package/dist/IR/toUPLC/compileIRToUPLC.d.ts +0 -4
  91. package/dist/IR/toUPLC/compileIRToUPLC.js +0 -118
  92. package/dist/IR/toUPLC/index.d.ts +0 -1
  93. package/dist/IR/toUPLC/index.js +0 -1
  94. package/dist/IR/toUPLC/subRoutines/handleHoistedAndReturnRoot/index.d.ts +0 -2
  95. package/dist/IR/toUPLC/subRoutines/handleHoistedAndReturnRoot/index.js +0 -161
  96. package/dist/IR/toUPLC/subRoutines/handleLetted/findHighestRecursiveParent.d.ts +0 -5
  97. package/dist/IR/toUPLC/subRoutines/handleLetted/findHighestRecursiveParent.js +0 -14
  98. package/dist/IR/toUPLC/subRoutines/handleLetted/groupByScope.d.ts +0 -20
  99. package/dist/IR/toUPLC/subRoutines/handleLetted/groupByScope.js +0 -107
  100. package/dist/IR/toUPLC/subRoutines/handleLetted/incrementUnboundDbns.d.ts +0 -9
  101. package/dist/IR/toUPLC/subRoutines/handleLetted/incrementUnboundDbns.js +0 -73
  102. package/dist/IR/toUPLC/subRoutines/handleLetted/index.d.ts +0 -2
  103. package/dist/IR/toUPLC/subRoutines/handleLetted/index.js +0 -304
  104. package/dist/IR/toUPLC/subRoutines/handleRecursiveTerms.d.ts +0 -3
  105. package/dist/IR/toUPLC/subRoutines/handleRecursiveTerms.js +0 -32
  106. package/dist/IR/toUPLC/subRoutines/hoistForcedNatives.d.ts +0 -2
  107. package/dist/IR/toUPLC/subRoutines/hoistForcedNatives.js +0 -58
  108. package/dist/IR/toUPLC/subRoutines/inlineSingleUseApplications.d.ts +0 -1
  109. package/dist/IR/toUPLC/subRoutines/inlineSingleUseApplications.js +0 -12
  110. package/dist/IR/toUPLC/subRoutines/markRecursiveHoistsAsForced.d.ts +0 -2
  111. package/dist/IR/toUPLC/subRoutines/markRecursiveHoistsAsForced.js +0 -82
  112. package/dist/IR/toUPLC/subRoutines/performUplcOptimizationsAndReturnRoot/expandFuncsAndReturnRoot.d.ts +0 -4
  113. package/dist/IR/toUPLC/subRoutines/performUplcOptimizationsAndReturnRoot/expandFuncsAndReturnRoot.js +0 -68
  114. package/dist/IR/toUPLC/subRoutines/performUplcOptimizationsAndReturnRoot/index.d.ts +0 -5
  115. package/dist/IR/toUPLC/subRoutines/performUplcOptimizationsAndReturnRoot/index.js +0 -227
  116. package/dist/IR/toUPLC/subRoutines/replaceClosedLettedWithHoisted.d.ts +0 -2
  117. package/dist/IR/toUPLC/subRoutines/replaceClosedLettedWithHoisted.js +0 -13
  118. package/dist/IR/toUPLC/subRoutines/replaceForcedNativesWithHoisted.d.ts +0 -2
  119. package/dist/IR/toUPLC/subRoutines/replaceForcedNativesWithHoisted.js +0 -11
  120. package/dist/IR/toUPLC/subRoutines/replaceHoistedWithLetted.d.ts +0 -2
  121. package/dist/IR/toUPLC/subRoutines/replaceHoistedWithLetted.js +0 -16
  122. package/dist/IR/toUPLC/subRoutines/replaceNatives/index.d.ts +0 -2
  123. package/dist/IR/toUPLC/subRoutines/replaceNatives/index.js +0 -16
  124. package/dist/IR/toUPLC/subRoutines/replaceNatives/nativeToIR.d.ts +0 -3
  125. package/dist/IR/toUPLC/subRoutines/replaceNatives/nativeToIR.js +0 -520
  126. package/dist/IR/toUPLC/subRoutines/sanifyTree.d.ts +0 -5
  127. package/dist/IR/toUPLC/subRoutines/sanifyTree.js +0 -84
  128. package/dist/IR/tree_utils/_ir_apps.d.ts +0 -3
  129. package/dist/IR/tree_utils/_ir_apps.js +0 -8
  130. package/dist/IR/tree_utils/_ir_lazyChooseList.d.ts +0 -3
  131. package/dist/IR/tree_utils/_ir_lazyChooseList.js +0 -5
  132. package/dist/IR/tree_utils/_ir_lazyIfThenElse.d.ts +0 -3
  133. package/dist/IR/tree_utils/_ir_lazyIfThenElse.js +0 -5
  134. package/dist/IR/tree_utils/_ir_let.d.ts +0 -3
  135. package/dist/IR/tree_utils/_ir_let.js +0 -4
  136. package/dist/IR/tree_utils/getChildren.d.ts +0 -2
  137. package/dist/IR/tree_utils/getChildren.js +0 -33
  138. package/dist/IR/tree_utils/getRoot.d.ts +0 -2
  139. package/dist/IR/tree_utils/getRoot.js +0 -6
  140. package/dist/IR/utils/MutArrayLike.d.ts +0 -5
  141. package/dist/IR/utils/MutArrayLike.js +0 -1
  142. package/dist/IR/utils/concatUint8Arr.d.ts +0 -1
  143. package/dist/IR/utils/concatUint8Arr.js +0 -11
  144. package/dist/IR/utils/equalIRTerm.d.ts +0 -12
  145. package/dist/IR/utils/equalIRTerm.js +0 -19
  146. package/dist/IR/utils/index.d.ts +0 -3
  147. package/dist/IR/utils/index.js +0 -3
  148. package/dist/IR/utils/isClosedIRTerm.d.ts +0 -2
  149. package/dist/IR/utils/isClosedIRTerm.js +0 -58
  150. package/dist/IR/utils/isIRParentTerm.d.ts +0 -12
  151. package/dist/IR/utils/isIRParentTerm.js +0 -26
  152. package/dist/IR/utils/isIRTerm.d.ts +0 -2
  153. package/dist/IR/utils/isIRTerm.js +0 -30
  154. package/dist/IR/utils/positiveIntAsBytes.d.ts +0 -5
  155. package/dist/IR/utils/positiveIntAsBytes.js +0 -27
  156. package/dist/IR/utils/showIR.d.ts +0 -43
  157. package/dist/IR/utils/showIR.js +0 -372
  158. package/dist/ast/PebbleAst.d.ts +0 -8
  159. package/dist/ast/PebbleAst.js +0 -15
  160. package/dist/ast/Source/Source.d.ts +0 -47
  161. package/dist/ast/Source/Source.js +0 -89
  162. package/dist/ast/Source/SourceRange.d.ts +0 -16
  163. package/dist/ast/Source/SourceRange.js +0 -49
  164. package/dist/ast/nodes/HasSourceRange.d.ts +0 -5
  165. package/dist/ast/nodes/HasSourceRange.js +0 -6
  166. package/dist/ast/nodes/common/Identifier.d.ts +0 -13
  167. package/dist/ast/nodes/common/Identifier.js +0 -20
  168. package/dist/ast/nodes/expr/CaseExpr.d.ts +0 -22
  169. package/dist/ast/nodes/expr/CaseExpr.js +0 -30
  170. package/dist/ast/nodes/expr/ElemAccessExpr.d.ts +0 -12
  171. package/dist/ast/nodes/expr/ElemAccessExpr.js +0 -13
  172. package/dist/ast/nodes/expr/IsExpr.d.ts +0 -1
  173. package/dist/ast/nodes/expr/IsExpr.js +0 -14
  174. package/dist/ast/nodes/expr/ParentesizedExpr.d.ts +0 -8
  175. package/dist/ast/nodes/expr/ParentesizedExpr.js +0 -8
  176. package/dist/ast/nodes/expr/PebbleExpr.d.ts +0 -18
  177. package/dist/ast/nodes/expr/PebbleExpr.js +0 -31
  178. package/dist/ast/nodes/expr/PropAccessExpr.d.ts +0 -28
  179. package/dist/ast/nodes/expr/PropAccessExpr.js +0 -46
  180. package/dist/ast/nodes/expr/TernaryExpr.d.ts +0 -10
  181. package/dist/ast/nodes/expr/TernaryExpr.js +0 -12
  182. package/dist/ast/nodes/expr/TypeConversionExpr.d.ts +0 -10
  183. package/dist/ast/nodes/expr/TypeConversionExpr.js +0 -11
  184. package/dist/ast/nodes/expr/binary/BinaryExpr.d.ts +0 -133
  185. package/dist/ast/nodes/expr/binary/BinaryExpr.js +0 -253
  186. package/dist/ast/nodes/expr/functions/ArrowKind.d.ts +0 -9
  187. package/dist/ast/nodes/expr/functions/ArrowKind.js +0 -11
  188. package/dist/ast/nodes/expr/functions/CallExpr.d.ts +0 -17
  189. package/dist/ast/nodes/expr/functions/CallExpr.js +0 -16
  190. package/dist/ast/nodes/expr/functions/FuncExpr.d.ts +0 -21
  191. package/dist/ast/nodes/expr/functions/FuncExpr.js +0 -21
  192. package/dist/ast/nodes/expr/litteral/LitArrExpr.d.ts +0 -8
  193. package/dist/ast/nodes/expr/litteral/LitArrExpr.js +0 -8
  194. package/dist/ast/nodes/expr/litteral/LitFalseExpr.d.ts +0 -6
  195. package/dist/ast/nodes/expr/litteral/LitFalseExpr.js +0 -6
  196. package/dist/ast/nodes/expr/litteral/LitHexBytesExpr.d.ts +0 -7
  197. package/dist/ast/nodes/expr/litteral/LitHexBytesExpr.js +0 -8
  198. package/dist/ast/nodes/expr/litteral/LitIntExpr.d.ts +0 -7
  199. package/dist/ast/nodes/expr/litteral/LitIntExpr.js +0 -8
  200. package/dist/ast/nodes/expr/litteral/LitNamedObjExpr.d.ts +0 -12
  201. package/dist/ast/nodes/expr/litteral/LitNamedObjExpr.js +0 -12
  202. package/dist/ast/nodes/expr/litteral/LitObjExpr.d.ts +0 -14
  203. package/dist/ast/nodes/expr/litteral/LitObjExpr.js +0 -10
  204. package/dist/ast/nodes/expr/litteral/LitStrExpr.d.ts +0 -7
  205. package/dist/ast/nodes/expr/litteral/LitStrExpr.js +0 -8
  206. package/dist/ast/nodes/expr/litteral/LitThisExpr.d.ts +0 -6
  207. package/dist/ast/nodes/expr/litteral/LitThisExpr.js +0 -6
  208. package/dist/ast/nodes/expr/litteral/LitTrueExpr.d.ts +0 -6
  209. package/dist/ast/nodes/expr/litteral/LitTrueExpr.js +0 -6
  210. package/dist/ast/nodes/expr/litteral/LitUndefExpr.d.ts +0 -6
  211. package/dist/ast/nodes/expr/litteral/LitUndefExpr.js +0 -6
  212. package/dist/ast/nodes/expr/litteral/LitVoidExpr.d.ts +0 -6
  213. package/dist/ast/nodes/expr/litteral/LitVoidExpr.js +0 -6
  214. package/dist/ast/nodes/expr/litteral/LitteralExpr.d.ts +0 -13
  215. package/dist/ast/nodes/expr/litteral/LitteralExpr.js +0 -24
  216. package/dist/ast/nodes/expr/unary/IUnaryExpression.d.ts +0 -4
  217. package/dist/ast/nodes/expr/unary/IUnaryExpression.js +0 -1
  218. package/dist/ast/nodes/expr/unary/NonNullExpr.d.ts +0 -8
  219. package/dist/ast/nodes/expr/unary/NonNullExpr.js +0 -8
  220. package/dist/ast/nodes/expr/unary/UnaryExclamation.d.ts +0 -9
  221. package/dist/ast/nodes/expr/unary/UnaryExclamation.js +0 -8
  222. package/dist/ast/nodes/expr/unary/UnaryMinus.d.ts +0 -9
  223. package/dist/ast/nodes/expr/unary/UnaryMinus.js +0 -8
  224. package/dist/ast/nodes/expr/unary/UnaryPlus.d.ts +0 -9
  225. package/dist/ast/nodes/expr/unary/UnaryPlus.js +0 -8
  226. package/dist/ast/nodes/expr/unary/UnaryPrefixExpr.d.ts +0 -14
  227. package/dist/ast/nodes/expr/unary/UnaryPrefixExpr.js +0 -27
  228. package/dist/ast/nodes/expr/unary/UnaryTilde.d.ts +0 -9
  229. package/dist/ast/nodes/expr/unary/UnaryTilde.js +0 -8
  230. package/dist/ast/nodes/statements/AssertStmt.d.ts +0 -15
  231. package/dist/ast/nodes/statements/AssertStmt.js +0 -14
  232. package/dist/ast/nodes/statements/AssignmentStmt.d.ts +0 -105
  233. package/dist/ast/nodes/statements/AssignmentStmt.js +0 -211
  234. package/dist/ast/nodes/statements/BlockStmt.d.ts +0 -8
  235. package/dist/ast/nodes/statements/BlockStmt.js +0 -8
  236. package/dist/ast/nodes/statements/BreakStmt.d.ts +0 -6
  237. package/dist/ast/nodes/statements/BreakStmt.js +0 -6
  238. package/dist/ast/nodes/statements/ContinueStmt.d.ts +0 -6
  239. package/dist/ast/nodes/statements/ContinueStmt.js +0 -6
  240. package/dist/ast/nodes/statements/DecrStmt.d.ts +0 -11
  241. package/dist/ast/nodes/statements/DecrStmt.js +0 -11
  242. package/dist/ast/nodes/statements/DoWhileStmt.d.ts +0 -10
  243. package/dist/ast/nodes/statements/DoWhileStmt.js +0 -10
  244. package/dist/ast/nodes/statements/EmptyStmt.d.ts +0 -6
  245. package/dist/ast/nodes/statements/EmptyStmt.js +0 -6
  246. package/dist/ast/nodes/statements/ExportImportStmt.d.ts +0 -15
  247. package/dist/ast/nodes/statements/ExportImportStmt.js +0 -15
  248. package/dist/ast/nodes/statements/ExportStarStmt.d.ts +0 -8
  249. package/dist/ast/nodes/statements/ExportStarStmt.js +0 -8
  250. package/dist/ast/nodes/statements/ExportStmt.d.ts +0 -13
  251. package/dist/ast/nodes/statements/ExportStmt.js +0 -13
  252. package/dist/ast/nodes/statements/ExprStmt.d.ts +0 -8
  253. package/dist/ast/nodes/statements/ExprStmt.js +0 -18
  254. package/dist/ast/nodes/statements/FailStmt.d.ts +0 -11
  255. package/dist/ast/nodes/statements/FailStmt.js +0 -10
  256. package/dist/ast/nodes/statements/ForOfStmt.d.ts +0 -16
  257. package/dist/ast/nodes/statements/ForOfStmt.js +0 -15
  258. package/dist/ast/nodes/statements/ForStmt.d.ts +0 -19
  259. package/dist/ast/nodes/statements/ForStmt.js +0 -19
  260. package/dist/ast/nodes/statements/IfStmt.d.ts +0 -11
  261. package/dist/ast/nodes/statements/IfStmt.js +0 -12
  262. package/dist/ast/nodes/statements/ImportStarStmt.d.ts +0 -15
  263. package/dist/ast/nodes/statements/ImportStarStmt.js +0 -15
  264. package/dist/ast/nodes/statements/ImportStmt.d.ts +0 -21
  265. package/dist/ast/nodes/statements/ImportStmt.js +0 -25
  266. package/dist/ast/nodes/statements/IncrStmt.d.ts +0 -8
  267. package/dist/ast/nodes/statements/IncrStmt.js +0 -8
  268. package/dist/ast/nodes/statements/MatchStmt.d.ts +0 -17
  269. package/dist/ast/nodes/statements/MatchStmt.js +0 -20
  270. package/dist/ast/nodes/statements/PebbleStmt.d.ts +0 -29
  271. package/dist/ast/nodes/statements/PebbleStmt.js +0 -62
  272. package/dist/ast/nodes/statements/ReturnStmt.d.ts +0 -8
  273. package/dist/ast/nodes/statements/ReturnStmt.js +0 -8
  274. package/dist/ast/nodes/statements/TestStmt.d.ts +0 -10
  275. package/dist/ast/nodes/statements/TestStmt.js +0 -10
  276. package/dist/ast/nodes/statements/TypeImplementsStmt.d.ts +0 -21
  277. package/dist/ast/nodes/statements/TypeImplementsStmt.js +0 -26
  278. package/dist/ast/nodes/statements/UsingStmt.d.ts +0 -16
  279. package/dist/ast/nodes/statements/UsingStmt.js +0 -20
  280. package/dist/ast/nodes/statements/VarStmt.d.ts +0 -10
  281. package/dist/ast/nodes/statements/VarStmt.js +0 -11
  282. package/dist/ast/nodes/statements/WhileStmt.d.ts +0 -10
  283. package/dist/ast/nodes/statements/WhileStmt.js +0 -10
  284. package/dist/ast/nodes/statements/declarations/EnumDecl.d.ts +0 -18
  285. package/dist/ast/nodes/statements/declarations/EnumDecl.js +0 -22
  286. package/dist/ast/nodes/statements/declarations/FuncDecl.d.ts +0 -8
  287. package/dist/ast/nodes/statements/declarations/FuncDecl.js +0 -9
  288. package/dist/ast/nodes/statements/declarations/InterfaceDecl.d.ts +0 -19
  289. package/dist/ast/nodes/statements/declarations/InterfaceDecl.js +0 -26
  290. package/dist/ast/nodes/statements/declarations/PebbleTypeDecl.d.ts +0 -5
  291. package/dist/ast/nodes/statements/declarations/PebbleTypeDecl.js +0 -8
  292. package/dist/ast/nodes/statements/declarations/StructDecl.d.ts +0 -25
  293. package/dist/ast/nodes/statements/declarations/StructDecl.js +0 -36
  294. package/dist/ast/nodes/statements/declarations/TypeAliasDecl.d.ts +0 -11
  295. package/dist/ast/nodes/statements/declarations/TypeAliasDecl.js +0 -12
  296. package/dist/ast/nodes/statements/declarations/VarDecl/ArrayLikeDeconstr.d.ts +0 -19
  297. package/dist/ast/nodes/statements/declarations/VarDecl/ArrayLikeDeconstr.js +0 -19
  298. package/dist/ast/nodes/statements/declarations/VarDecl/HasInit.d.ts +0 -5
  299. package/dist/ast/nodes/statements/declarations/VarDecl/HasInit.js +0 -7
  300. package/dist/ast/nodes/statements/declarations/VarDecl/NamedDeconstructVarDecl.d.ts +0 -24
  301. package/dist/ast/nodes/statements/declarations/VarDecl/NamedDeconstructVarDecl.js +0 -30
  302. package/dist/ast/nodes/statements/declarations/VarDecl/SimpleVarDecl.d.ts +0 -17
  303. package/dist/ast/nodes/statements/declarations/VarDecl/SimpleVarDecl.js +0 -21
  304. package/dist/ast/nodes/statements/declarations/VarDecl/SingleDeconstructVarDecl.d.ts +0 -24
  305. package/dist/ast/nodes/statements/declarations/VarDecl/SingleDeconstructVarDecl.js +0 -20
  306. package/dist/ast/nodes/statements/declarations/VarDecl/VarDecl.d.ts +0 -8
  307. package/dist/ast/nodes/statements/declarations/VarDecl/VarDecl.js +0 -13
  308. package/dist/ast/nodes/types/AstNamedTypeExpr.d.ts +0 -14
  309. package/dist/ast/nodes/types/AstNamedTypeExpr.js +0 -14
  310. package/dist/ast/nodes/types/AstNativeTypeExpr.d.ts +0 -52
  311. package/dist/ast/nodes/types/AstNativeTypeExpr.js +0 -82
  312. package/dist/ast/nodes/types/AstTypeExpr.d.ts +0 -4
  313. package/dist/ast/nodes/types/AstTypeExpr.js +0 -7
  314. package/dist/common.d.ts +0 -194
  315. package/dist/common.js +0 -224
  316. package/dist/compiler/AstCompiler/AstCompilationCtx.d.ts +0 -35
  317. package/dist/compiler/AstCompiler/AstCompilationCtx.js +0 -43
  318. package/dist/compiler/AstCompiler/AstCompiler.d.ts +0 -73
  319. package/dist/compiler/AstCompiler/AstCompiler.js +0 -532
  320. package/dist/compiler/AstCompiler/compileAst.d.ts +0 -0
  321. package/dist/compiler/AstCompiler/compileAst.js +0 -0
  322. package/dist/compiler/AstCompiler/index.d.ts +0 -1
  323. package/dist/compiler/AstCompiler/index.js +0 -1
  324. package/dist/compiler/AstCompiler/internal/exprs/_compileBinaryExpr.d.ts +0 -5
  325. package/dist/compiler/AstCompiler/internal/exprs/_compileBinaryExpr.js +0 -66
  326. package/dist/compiler/AstCompiler/internal/exprs/_compileCallExpr.d.ts +0 -5
  327. package/dist/compiler/AstCompiler/internal/exprs/_compileCallExpr.js +0 -36
  328. package/dist/compiler/AstCompiler/internal/exprs/_compileCaseExpr.d.ts +0 -6
  329. package/dist/compiler/AstCompiler/internal/exprs/_compileCaseExpr.js +0 -47
  330. package/dist/compiler/AstCompiler/internal/exprs/_compileElemAccessExpr.d.ts +0 -5
  331. package/dist/compiler/AstCompiler/internal/exprs/_compileElemAccessExpr.js +0 -23
  332. package/dist/compiler/AstCompiler/internal/exprs/_compileExpr.d.ts +0 -22
  333. package/dist/compiler/AstCompiler/internal/exprs/_compileExpr.js +0 -77
  334. package/dist/compiler/AstCompiler/internal/exprs/_compileFuncExpr.d.ts +0 -26
  335. package/dist/compiler/AstCompiler/internal/exprs/_compileFuncExpr.js +0 -163
  336. package/dist/compiler/AstCompiler/internal/exprs/_compileIsExpr.d.ts +0 -1
  337. package/dist/compiler/AstCompiler/internal/exprs/_compileIsExpr.js +0 -43
  338. package/dist/compiler/AstCompiler/internal/exprs/_compileLitteralExpr.d.ts +0 -19
  339. package/dist/compiler/AstCompiler/internal/exprs/_compileLitteralExpr.js +0 -202
  340. package/dist/compiler/AstCompiler/internal/exprs/_compileNonNullExpr.d.ts +0 -5
  341. package/dist/compiler/AstCompiler/internal/exprs/_compileNonNullExpr.js +0 -43
  342. package/dist/compiler/AstCompiler/internal/exprs/_compilePropAccessExpr.d.ts +0 -9
  343. package/dist/compiler/AstCompiler/internal/exprs/_compilePropAccessExpr.js +0 -102
  344. package/dist/compiler/AstCompiler/internal/exprs/_compileTernaryExpr.d.ts +0 -5
  345. package/dist/compiler/AstCompiler/internal/exprs/_compileTernaryExpr.js +0 -22
  346. package/dist/compiler/AstCompiler/internal/exprs/_compileTypeConversionExpr.d.ts +0 -5
  347. package/dist/compiler/AstCompiler/internal/exprs/_compileTypeConversionExpr.js +0 -25
  348. package/dist/compiler/AstCompiler/internal/exprs/_compileUnaryPrefixExpr.d.ts +0 -5
  349. package/dist/compiler/AstCompiler/internal/exprs/_compileUnaryPrefixExpr.js +0 -54
  350. package/dist/compiler/AstCompiler/internal/exprs/_compileVarAccessExpr.d.ts +0 -5
  351. package/dist/compiler/AstCompiler/internal/exprs/_compileVarAccessExpr.js +0 -9
  352. package/dist/compiler/AstCompiler/internal/exprs/_hasDuplicateTypeParams.d.ts +0 -3
  353. package/dist/compiler/AstCompiler/internal/exprs/_hasDuplicateTypeParams.js +0 -13
  354. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileAddExpr.d.ts +0 -5
  355. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileAddExpr.js +0 -20
  356. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileBitwiseAndExpr.d.ts +0 -5
  357. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileBitwiseAndExpr.js +0 -20
  358. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileBitwiseOrExpr.d.ts +0 -5
  359. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileBitwiseOrExpr.js +0 -20
  360. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileBitwiseXorExpr.d.ts +0 -5
  361. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileBitwiseXorExpr.js +0 -20
  362. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileDivExpr.d.ts +0 -5
  363. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileDivExpr.js +0 -20
  364. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileEqualExpr.d.ts +0 -5
  365. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileEqualExpr.js +0 -18
  366. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileExponentiationExpr.d.ts +0 -5
  367. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileExponentiationExpr.js +0 -20
  368. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileGreaterThanEqualExpr.d.ts +0 -5
  369. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileGreaterThanEqualExpr.js +0 -27
  370. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileGreaterThanExpr.d.ts +0 -5
  371. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileGreaterThanExpr.js +0 -26
  372. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLessThanEqualExpr.d.ts +0 -5
  373. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLessThanEqualExpr.js +0 -25
  374. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLessThanExpr.d.ts +0 -5
  375. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLessThanExpr.js +0 -26
  376. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLogicalAndExpr.d.ts +0 -5
  377. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLogicalAndExpr.js +0 -22
  378. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLogicalOrExpr.d.ts +0 -5
  379. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileLogicalOrExpr.js +0 -22
  380. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileModuloExpr.d.ts +0 -5
  381. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileModuloExpr.js +0 -20
  382. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileMultExpr.d.ts +0 -5
  383. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileMultExpr.js +0 -20
  384. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileNotEqualExpr.d.ts +0 -5
  385. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileNotEqualExpr.js +0 -18
  386. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileOptionalDefaultExpr.d.ts +0 -5
  387. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileOptionalDefaultExpr.js +0 -60
  388. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileShiftLeftExpr.d.ts +0 -5
  389. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileShiftLeftExpr.js +0 -21
  390. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileShiftRightExpr.d.ts +0 -5
  391. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileShiftRightExpr.js +0 -21
  392. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileSubExpr.d.ts +0 -5
  393. package/dist/compiler/AstCompiler/internal/exprs/binary/_compileSubExpr.js +0 -20
  394. package/dist/compiler/AstCompiler/internal/statements/_compileAssertStmt.d.ts +0 -4
  395. package/dist/compiler/AstCompiler/internal/statements/_compileAssertStmt.js +0 -30
  396. package/dist/compiler/AstCompiler/internal/statements/_compileAssignmentStmt.d.ts +0 -8
  397. package/dist/compiler/AstCompiler/internal/statements/_compileAssignmentStmt.js +0 -154
  398. package/dist/compiler/AstCompiler/internal/statements/_compileBlockStmt.d.ts +0 -4
  399. package/dist/compiler/AstCompiler/internal/statements/_compileBlockStmt.js +0 -14
  400. package/dist/compiler/AstCompiler/internal/statements/_compileBreakStmt.d.ts +0 -4
  401. package/dist/compiler/AstCompiler/internal/statements/_compileBreakStmt.js +0 -7
  402. package/dist/compiler/AstCompiler/internal/statements/_compileContinueStmt.d.ts +0 -4
  403. package/dist/compiler/AstCompiler/internal/statements/_compileContinueStmt.js +0 -7
  404. package/dist/compiler/AstCompiler/internal/statements/_compileExprStmt.d.ts +0 -1
  405. package/dist/compiler/AstCompiler/internal/statements/_compileExprStmt.js +0 -12
  406. package/dist/compiler/AstCompiler/internal/statements/_compileFailStmt.d.ts +0 -4
  407. package/dist/compiler/AstCompiler/internal/statements/_compileFailStmt.js +0 -18
  408. package/dist/compiler/AstCompiler/internal/statements/_compileForOfStmt.d.ts +0 -4
  409. package/dist/compiler/AstCompiler/internal/statements/_compileForOfStmt.js +0 -30
  410. package/dist/compiler/AstCompiler/internal/statements/_compileForStmt.d.ts +0 -7
  411. package/dist/compiler/AstCompiler/internal/statements/_compileForStmt.js +0 -46
  412. package/dist/compiler/AstCompiler/internal/statements/_compileIfStmt.d.ts +0 -4
  413. package/dist/compiler/AstCompiler/internal/statements/_compileIfStmt.js +0 -27
  414. package/dist/compiler/AstCompiler/internal/statements/_compileMatchStmt.d.ts +0 -6
  415. package/dist/compiler/AstCompiler/internal/statements/_compileMatchStmt.js +0 -182
  416. package/dist/compiler/AstCompiler/internal/statements/_compileReturnStmt.d.ts +0 -4
  417. package/dist/compiler/AstCompiler/internal/statements/_compileReturnStmt.js +0 -17
  418. package/dist/compiler/AstCompiler/internal/statements/_compileStatement.d.ts +0 -11
  419. package/dist/compiler/AstCompiler/internal/statements/_compileStatement.js +0 -73
  420. package/dist/compiler/AstCompiler/internal/statements/_compileTestStmt.d.ts +0 -1
  421. package/dist/compiler/AstCompiler/internal/statements/_compileTestStmt.js +0 -32
  422. package/dist/compiler/AstCompiler/internal/statements/_compileUsingStmt.d.ts +0 -11
  423. package/dist/compiler/AstCompiler/internal/statements/_compileUsingStmt.js +0 -41
  424. package/dist/compiler/AstCompiler/internal/statements/_compileVarStmt.d.ts +0 -34
  425. package/dist/compiler/AstCompiler/internal/statements/_compileVarStmt.js +0 -207
  426. package/dist/compiler/AstCompiler/internal/statements/_compileWhileStmt.d.ts +0 -4
  427. package/dist/compiler/AstCompiler/internal/statements/_compileWhileStmt.js +0 -19
  428. package/dist/compiler/AstCompiler/internal/types/_compileDataEncodedConcreteType.d.ts +0 -4
  429. package/dist/compiler/AstCompiler/internal/types/_compileDataEncodedConcreteType.js +0 -61
  430. package/dist/compiler/AstCompiler/internal/types/_compileSopEncodedConcreteType.d.ts +0 -4
  431. package/dist/compiler/AstCompiler/internal/types/_compileSopEncodedConcreteType.js +0 -59
  432. package/dist/compiler/AstCompiler/scope/AstScope.d.ts +0 -102
  433. package/dist/compiler/AstCompiler/scope/AstScope.js +0 -195
  434. package/dist/compiler/AstCompiler/utils/deps/ResolveStackNode.d.ts +0 -14
  435. package/dist/compiler/AstCompiler/utils/deps/ResolveStackNode.js +0 -36
  436. package/dist/compiler/AstCompiler/utils/getPropAccessReturnType.d.ts +0 -4
  437. package/dist/compiler/AstCompiler/utils/getPropAccessReturnType.js +0 -121
  438. package/dist/compiler/AstCompiler/utils/getTirFuncSigTree/TirFuncSigTree.d.ts +0 -39
  439. package/dist/compiler/AstCompiler/utils/getTirFuncSigTree/TirFuncSigTree.js +0 -129
  440. package/dist/compiler/AstCompiler/utils/getTirFuncSigTree/getTirFuncSigTree.d.ts +0 -4
  441. package/dist/compiler/AstCompiler/utils/getTirFuncSigTree/getTirFuncSigTree.js +0 -49
  442. package/dist/compiler/AstCompiler/utils/wrapManyStatementsOrReturnSame.d.ts +0 -3
  443. package/dist/compiler/AstCompiler/utils/wrapManyStatementsOrReturnSame.js +0 -12
  444. package/dist/compiler/Compiler.d.ts +0 -10
  445. package/dist/compiler/Compiler.js +0 -39
  446. package/dist/compiler/TirCompiler/TirCompilerCtx.d.ts +0 -7
  447. package/dist/compiler/TirCompiler/TirCompilerCtx.js +0 -8
  448. package/dist/compiler/TirCompiler/compileTirProgram.d.ts +0 -9
  449. package/dist/compiler/TirCompiler/compileTirProgram.js +0 -18
  450. package/dist/compiler/TirCompiler/expressify/ExpressifyCtx.d.ts +0 -72
  451. package/dist/compiler/TirCompiler/expressify/ExpressifyCtx.js +0 -282
  452. package/dist/compiler/TirCompiler/expressify/determineReassignedVariablesAndReturn.d.ts +0 -27
  453. package/dist/compiler/TirCompiler/expressify/determineReassignedVariablesAndReturn.js +0 -248
  454. package/dist/compiler/TirCompiler/expressify/expressify.d.ts +0 -15
  455. package/dist/compiler/TirCompiler/expressify/expressify.js +0 -403
  456. package/dist/compiler/TirCompiler/expressify/expressifyForStmt.d.ts +0 -8
  457. package/dist/compiler/TirCompiler/expressify/expressifyForStmt.js +0 -115
  458. package/dist/compiler/TirCompiler/expressify/expressifyIfBranch.d.ts +0 -6
  459. package/dist/compiler/TirCompiler/expressify/expressifyIfBranch.js +0 -105
  460. package/dist/compiler/TirCompiler/expressify/expressifyTerminatingIfStmt.d.ts +0 -5
  461. package/dist/compiler/TirCompiler/expressify/expressifyTerminatingIfStmt.js +0 -15
  462. package/dist/compiler/TirCompiler/expressify/expressifyVarAssignmentStmt.d.ts +0 -4
  463. package/dist/compiler/TirCompiler/expressify/expressifyVarAssignmentStmt.js +0 -20
  464. package/dist/compiler/TirCompiler/expressify/expressifyVarDecl.d.ts +0 -3
  465. package/dist/compiler/TirCompiler/expressify/expressifyVarDecl.js +0 -34
  466. package/dist/compiler/TirCompiler/expressify/expressifyVars.d.ts +0 -10
  467. package/dist/compiler/TirCompiler/expressify/expressifyVars.js +0 -320
  468. package/dist/compiler/TirCompiler/expressify/flattenSopNamedDeconstructInplace_addTopDestructToCtx_getNestedDeconstruct.d.ts +0 -9
  469. package/dist/compiler/TirCompiler/expressify/flattenSopNamedDeconstructInplace_addTopDestructToCtx_getNestedDeconstruct.js +0 -59
  470. package/dist/compiler/TirCompiler/expressify/isSingleConstrStruct.d.ts +0 -3
  471. package/dist/compiler/TirCompiler/expressify/isSingleConstrStruct.js +0 -9
  472. package/dist/compiler/TirCompiler/expressify/toNamedDeconstructVarDecl.d.ts +0 -3
  473. package/dist/compiler/TirCompiler/expressify/toNamedDeconstructVarDecl.js +0 -15
  474. package/dist/compiler/TirCompiler/index.d.ts +0 -2
  475. package/dist/compiler/TirCompiler/index.js +0 -2
  476. package/dist/compiler/TirCompiler/internal/_compileHoistedDeps.d.ts +0 -5
  477. package/dist/compiler/TirCompiler/internal/_compileHoistedDeps.js +0 -37
  478. package/dist/compiler/TirCompiler/internal/deps/DepsNode.d.ts +0 -13
  479. package/dist/compiler/TirCompiler/internal/deps/DepsNode.js +0 -36
  480. package/dist/compiler/index.d.ts +0 -4
  481. package/dist/compiler/index.js +0 -4
  482. package/dist/compiler/internalVar.d.ts +0 -19
  483. package/dist/compiler/internalVar.js +0 -56
  484. package/dist/compiler/io/CompilerIoApi.d.ts +0 -36
  485. package/dist/compiler/io/CompilerIoApi.js +0 -62
  486. package/dist/compiler/io/IOutputStream.d.ts +0 -28
  487. package/dist/compiler/io/IOutputStream.js +0 -45
  488. package/dist/compiler/io/index.d.ts +0 -2
  489. package/dist/compiler/io/index.js +0 -2
  490. package/dist/compiler/path/getAbsolutePath.d.ts +0 -12
  491. package/dist/compiler/path/getAbsolutePath.js +0 -114
  492. package/dist/compiler/path/path.d.ts +0 -5
  493. package/dist/compiler/path/path.js +0 -160
  494. package/dist/compiler/tir/expressions/ITirExpr.d.ts +0 -11
  495. package/dist/compiler/tir/expressions/ITirExpr.js +0 -1
  496. package/dist/compiler/tir/expressions/TirAssertAndContinueExpr.d.ts +0 -19
  497. package/dist/compiler/tir/expressions/TirAssertAndContinueExpr.js +0 -41
  498. package/dist/compiler/tir/expressions/TirCallExpr.d.ts +0 -17
  499. package/dist/compiler/tir/expressions/TirCallExpr.js +0 -28
  500. package/dist/compiler/tir/expressions/TirCaseExpr.d.ts +0 -36
  501. package/dist/compiler/tir/expressions/TirCaseExpr.js +0 -257
  502. package/dist/compiler/tir/expressions/TirElemAccessExpr.d.ts +0 -20
  503. package/dist/compiler/tir/expressions/TirElemAccessExpr.js +0 -43
  504. package/dist/compiler/tir/expressions/TirExpr.d.ts +0 -23
  505. package/dist/compiler/tir/expressions/TirExpr.js +0 -46
  506. package/dist/compiler/tir/expressions/TirFailExpr.d.ts +0 -19
  507. package/dist/compiler/tir/expressions/TirFailExpr.js +0 -28
  508. package/dist/compiler/tir/expressions/TirFromDataExpr.d.ts +0 -22
  509. package/dist/compiler/tir/expressions/TirFromDataExpr.js +0 -196
  510. package/dist/compiler/tir/expressions/TirFuncExpr.d.ts +0 -37
  511. package/dist/compiler/tir/expressions/TirFuncExpr.js +0 -92
  512. package/dist/compiler/tir/expressions/TirHoistedExpr.d.ts +0 -18
  513. package/dist/compiler/tir/expressions/TirHoistedExpr.js +0 -28
  514. package/dist/compiler/tir/expressions/TirInlineClosedIR.d.ts +0 -16
  515. package/dist/compiler/tir/expressions/TirInlineClosedIR.js +0 -25
  516. package/dist/compiler/tir/expressions/TirLettedExpr.d.ts +0 -18
  517. package/dist/compiler/tir/expressions/TirLettedExpr.js +0 -28
  518. package/dist/compiler/tir/expressions/TirNativeFunc.d.ts +0 -104
  519. package/dist/compiler/tir/expressions/TirNativeFunc.js +0 -805
  520. package/dist/compiler/tir/expressions/TirParentesizedExpr.d.ts +0 -17
  521. package/dist/compiler/tir/expressions/TirParentesizedExpr.js +0 -20
  522. package/dist/compiler/tir/expressions/TirPropAccessExpr.d.ts +0 -18
  523. package/dist/compiler/tir/expressions/TirPropAccessExpr.js +0 -29
  524. package/dist/compiler/tir/expressions/TirTernaryExpr.d.ts +0 -18
  525. package/dist/compiler/tir/expressions/TirTernaryExpr.js +0 -36
  526. package/dist/compiler/tir/expressions/TirToDataExpr.d.ts +0 -28
  527. package/dist/compiler/tir/expressions/TirToDataExpr.js +0 -172
  528. package/dist/compiler/tir/expressions/TirTraceIfFalseExpr.d.ts +0 -23
  529. package/dist/compiler/tir/expressions/TirTraceIfFalseExpr.js +0 -32
  530. package/dist/compiler/tir/expressions/TirTypeConversionExpr.d.ts +0 -16
  531. package/dist/compiler/tir/expressions/TirTypeConversionExpr.js +0 -66
  532. package/dist/compiler/tir/expressions/TirVariableAccessExpr.d.ts +0 -18
  533. package/dist/compiler/tir/expressions/TirVariableAccessExpr.js +0 -30
  534. package/dist/compiler/tir/expressions/ToIRTermCtx.d.ts +0 -29
  535. package/dist/compiler/tir/expressions/ToIRTermCtx.js +0 -77
  536. package/dist/compiler/tir/expressions/binary/TirBinaryExpr.d.ts +0 -221
  537. package/dist/compiler/tir/expressions/binary/TirBinaryExpr.js +0 -532
  538. package/dist/compiler/tir/expressions/litteral/TirLitArrExpr.d.ts +0 -16
  539. package/dist/compiler/tir/expressions/litteral/TirLitArrExpr.js +0 -60
  540. package/dist/compiler/tir/expressions/litteral/TirLitFalseExpr.d.ts +0 -14
  541. package/dist/compiler/tir/expressions/litteral/TirLitFalseExpr.js +0 -17
  542. package/dist/compiler/tir/expressions/litteral/TirLitHexBytesExpr.d.ts +0 -15
  543. package/dist/compiler/tir/expressions/litteral/TirLitHexBytesExpr.js +0 -19
  544. package/dist/compiler/tir/expressions/litteral/TirLitIntExpr.d.ts +0 -15
  545. package/dist/compiler/tir/expressions/litteral/TirLitIntExpr.js +0 -19
  546. package/dist/compiler/tir/expressions/litteral/TirLitNamedObjExpr.d.ts +0 -22
  547. package/dist/compiler/tir/expressions/litteral/TirLitNamedObjExpr.js +0 -105
  548. package/dist/compiler/tir/expressions/litteral/TirLitObjExpr.d.ts +0 -22
  549. package/dist/compiler/tir/expressions/litteral/TirLitObjExpr.js +0 -102
  550. package/dist/compiler/tir/expressions/litteral/TirLitStrExpr.d.ts +0 -15
  551. package/dist/compiler/tir/expressions/litteral/TirLitStrExpr.js +0 -20
  552. package/dist/compiler/tir/expressions/litteral/TirLitThisExpr.d.ts +0 -14
  553. package/dist/compiler/tir/expressions/litteral/TirLitThisExpr.js +0 -20
  554. package/dist/compiler/tir/expressions/litteral/TirLitTrueExpr.d.ts +0 -14
  555. package/dist/compiler/tir/expressions/litteral/TirLitTrueExpr.js +0 -17
  556. package/dist/compiler/tir/expressions/litteral/TirLitUndefExpr.d.ts +0 -18
  557. package/dist/compiler/tir/expressions/litteral/TirLitUndefExpr.js +0 -23
  558. package/dist/compiler/tir/expressions/litteral/TirLitVoidExpr.d.ts +0 -14
  559. package/dist/compiler/tir/expressions/litteral/TirLitVoidExpr.js +0 -17
  560. package/dist/compiler/tir/expressions/litteral/TirLitteralExpr.d.ts +0 -13
  561. package/dist/compiler/tir/expressions/litteral/TirLitteralExpr.js +0 -24
  562. package/dist/compiler/tir/expressions/unary/ITirUnaryExpression.d.ts +0 -4
  563. package/dist/compiler/tir/expressions/unary/ITirUnaryExpression.js +0 -1
  564. package/dist/compiler/tir/expressions/unary/TirUnaryExclamation.d.ts +0 -17
  565. package/dist/compiler/tir/expressions/unary/TirUnaryExclamation.js +0 -23
  566. package/dist/compiler/tir/expressions/unary/TirUnaryMinus.d.ts +0 -17
  567. package/dist/compiler/tir/expressions/unary/TirUnaryMinus.js +0 -22
  568. package/dist/compiler/tir/expressions/unary/TirUnaryPlus.d.ts +0 -15
  569. package/dist/compiler/tir/expressions/unary/TirUnaryPlus.js +0 -20
  570. package/dist/compiler/tir/expressions/unary/TirUnaryPrefixExpr.d.ts +0 -6
  571. package/dist/compiler/tir/expressions/unary/TirUnaryPrefixExpr.js +0 -10
  572. package/dist/compiler/tir/expressions/unary/TirUnaryTilde.d.ts +0 -17
  573. package/dist/compiler/tir/expressions/unary/TirUnaryTilde.js +0 -22
  574. package/dist/compiler/tir/expressions/utils/NamedExpr.d.ts +0 -5
  575. package/dist/compiler/tir/expressions/utils/NamedExpr.js +0 -1
  576. package/dist/compiler/tir/program/TypedProgram.d.ts +0 -44
  577. package/dist/compiler/tir/program/TypedProgram.js +0 -126
  578. package/dist/compiler/tir/program/stdScope/StdTypes.d.ts +0 -34
  579. package/dist/compiler/tir/program/stdScope/StdTypes.js +0 -40
  580. package/dist/compiler/tir/program/stdScope/prelude/preludeTypesSrc.d.ts +0 -0
  581. package/dist/compiler/tir/program/stdScope/prelude/preludeTypesSrc.js +0 -288
  582. package/dist/compiler/tir/program/stdScope/stdScope.d.ts +0 -15
  583. package/dist/compiler/tir/program/stdScope/stdScope.js +0 -730
  584. package/dist/compiler/tir/statements/TirAssertStmt.d.ts +0 -18
  585. package/dist/compiler/tir/statements/TirAssertStmt.js +0 -29
  586. package/dist/compiler/tir/statements/TirAssignmentStmt.d.ts +0 -12
  587. package/dist/compiler/tir/statements/TirAssignmentStmt.js +0 -14
  588. package/dist/compiler/tir/statements/TirBlockStmt.d.ts +0 -9
  589. package/dist/compiler/tir/statements/TirBlockStmt.js +0 -25
  590. package/dist/compiler/tir/statements/TirBreakStmt.d.ts +0 -8
  591. package/dist/compiler/tir/statements/TirBreakStmt.js +0 -11
  592. package/dist/compiler/tir/statements/TirContinueStmt.d.ts +0 -8
  593. package/dist/compiler/tir/statements/TirContinueStmt.js +0 -13
  594. package/dist/compiler/tir/statements/TirFailStmt.d.ts +0 -13
  595. package/dist/compiler/tir/statements/TirFailStmt.js +0 -14
  596. package/dist/compiler/tir/statements/TirForOfStmt.d.ts +0 -16
  597. package/dist/compiler/tir/statements/TirForOfStmt.js +0 -25
  598. package/dist/compiler/tir/statements/TirForStmt.d.ts +0 -19
  599. package/dist/compiler/tir/statements/TirForStmt.js +0 -39
  600. package/dist/compiler/tir/statements/TirIfStmt.d.ts +0 -12
  601. package/dist/compiler/tir/statements/TirIfStmt.js +0 -23
  602. package/dist/compiler/tir/statements/TirMatchStmt.d.ts +0 -27
  603. package/dist/compiler/tir/statements/TirMatchStmt.js +0 -51
  604. package/dist/compiler/tir/statements/TirReturnStmt.d.ts +0 -10
  605. package/dist/compiler/tir/statements/TirReturnStmt.js +0 -12
  606. package/dist/compiler/tir/statements/TirStmt.d.ts +0 -32
  607. package/dist/compiler/tir/statements/TirStmt.js +0 -40
  608. package/dist/compiler/tir/statements/TirVarDecl/TirArrayLikeDeconstr.d.ts +0 -17
  609. package/dist/compiler/tir/statements/TirVarDecl/TirArrayLikeDeconstr.js +0 -30
  610. package/dist/compiler/tir/statements/TirVarDecl/TirNamedDeconstructVarDecl.d.ts +0 -21
  611. package/dist/compiler/tir/statements/TirVarDecl/TirNamedDeconstructVarDecl.js +0 -34
  612. package/dist/compiler/tir/statements/TirVarDecl/TirSimpleVarDecl.d.ts +0 -17
  613. package/dist/compiler/tir/statements/TirVarDecl/TirSimpleVarDecl.js +0 -22
  614. package/dist/compiler/tir/statements/TirVarDecl/TirSingleDeconstructVarDecl.d.ts +0 -17
  615. package/dist/compiler/tir/statements/TirVarDecl/TirSingleDeconstructVarDecl.js +0 -30
  616. package/dist/compiler/tir/statements/TirVarDecl/TirVarDecl.d.ts +0 -10
  617. package/dist/compiler/tir/statements/TirVarDecl/TirVarDecl.js +0 -11
  618. package/dist/compiler/tir/statements/TirWhileStmt.d.ts +0 -11
  619. package/dist/compiler/tir/statements/TirWhileStmt.js +0 -19
  620. package/dist/compiler/tir/statements/utils/definitelyFails.d.ts +0 -3
  621. package/dist/compiler/tir/statements/utils/definitelyFails.js +0 -52
  622. package/dist/compiler/tir/types/TirAliasType.d.ts +0 -32
  623. package/dist/compiler/tir/types/TirAliasType.js +0 -49
  624. package/dist/compiler/tir/types/TirInterfaceImpl.d.ts +0 -44
  625. package/dist/compiler/tir/types/TirInterfaceImpl.js +0 -32
  626. package/dist/compiler/tir/types/TirInterfaceType.d.ts +0 -28
  627. package/dist/compiler/tir/types/TirInterfaceType.js +0 -36
  628. package/dist/compiler/tir/types/TirNativeType/TirNativeType.d.ts +0 -41
  629. package/dist/compiler/tir/types/TirNativeType/TirNativeType.js +0 -86
  630. package/dist/compiler/tir/types/TirNativeType/index.d.ts +0 -2
  631. package/dist/compiler/tir/types/TirNativeType/index.js +0 -2
  632. package/dist/compiler/tir/types/TirNativeType/native/Optional/data.d.ts +0 -17
  633. package/dist/compiler/tir/types/TirNativeType/native/Optional/data.js +0 -47
  634. package/dist/compiler/tir/types/TirNativeType/native/Optional/index.d.ts +0 -3
  635. package/dist/compiler/tir/types/TirNativeType/native/Optional/index.js +0 -3
  636. package/dist/compiler/tir/types/TirNativeType/native/Optional/isTirOptType.d.ts +0 -4
  637. package/dist/compiler/tir/types/TirNativeType/native/Optional/isTirOptType.js +0 -6
  638. package/dist/compiler/tir/types/TirNativeType/native/Optional/sop.d.ts +0 -17
  639. package/dist/compiler/tir/types/TirNativeType/native/Optional/sop.js +0 -48
  640. package/dist/compiler/tir/types/TirNativeType/native/bool.d.ts +0 -13
  641. package/dist/compiler/tir/types/TirNativeType/native/bool.js +0 -12
  642. package/dist/compiler/tir/types/TirNativeType/native/bytes.d.ts +0 -13
  643. package/dist/compiler/tir/types/TirNativeType/native/bytes.js +0 -12
  644. package/dist/compiler/tir/types/TirNativeType/native/data.d.ts +0 -13
  645. package/dist/compiler/tir/types/TirNativeType/native/data.js +0 -12
  646. package/dist/compiler/tir/types/TirNativeType/native/function.d.ts +0 -16
  647. package/dist/compiler/tir/types/TirNativeType/native/function.js +0 -38
  648. package/dist/compiler/tir/types/TirNativeType/native/index.d.ts +0 -10
  649. package/dist/compiler/tir/types/TirNativeType/native/index.js +0 -10
  650. package/dist/compiler/tir/types/TirNativeType/native/int.d.ts +0 -13
  651. package/dist/compiler/tir/types/TirNativeType/native/int.js +0 -12
  652. package/dist/compiler/tir/types/TirNativeType/native/linearMap.d.ts +0 -17
  653. package/dist/compiler/tir/types/TirNativeType/native/linearMap.js +0 -44
  654. package/dist/compiler/tir/types/TirNativeType/native/list.d.ts +0 -16
  655. package/dist/compiler/tir/types/TirNativeType/native/list.js +0 -38
  656. package/dist/compiler/tir/types/TirNativeType/native/string.d.ts +0 -13
  657. package/dist/compiler/tir/types/TirNativeType/native/string.js +0 -12
  658. package/dist/compiler/tir/types/TirNativeType/native/void.d.ts +0 -13
  659. package/dist/compiler/tir/types/TirNativeType/native/void.js +0 -12
  660. package/dist/compiler/tir/types/TirStructType.d.ts +0 -68
  661. package/dist/compiler/tir/types/TirStructType.js +0 -128
  662. package/dist/compiler/tir/types/TirType.d.ts +0 -34
  663. package/dist/compiler/tir/types/TirType.js +0 -16
  664. package/dist/compiler/tir/types/TirTypeParam.d.ts +0 -18
  665. package/dist/compiler/tir/types/TirTypeParam.js +0 -39
  666. package/dist/compiler/tir/types/utils/canAssignTo.d.ts +0 -24
  667. package/dist/compiler/tir/types/utils/canAssignTo.js +0 -337
  668. package/dist/compiler/tir/types/utils/canCastTo.d.ts +0 -9
  669. package/dist/compiler/tir/types/utils/canCastTo.js +0 -155
  670. package/dist/compiler/tir/types/utils/getDeconstructableType.d.ts +0 -9
  671. package/dist/compiler/tir/types/utils/getDeconstructableType.js +0 -20
  672. package/dist/compiler/tir/types/utils/getListTypeArg.d.ts +0 -2
  673. package/dist/compiler/tir/types/utils/getListTypeArg.js +0 -9
  674. package/dist/compiler/tir/types/utils/getOptTypeArg.d.ts +0 -2
  675. package/dist/compiler/tir/types/utils/getOptTypeArg.js +0 -14
  676. package/dist/compiler/tir/types/utils/getUnaliased.d.ts +0 -3
  677. package/dist/compiler/tir/types/utils/getUnaliased.js +0 -9
  678. package/dist/diagnostics/DiagnosticCategory.d.ts +0 -16
  679. package/dist/diagnostics/DiagnosticCategory.js +0 -39
  680. package/dist/diagnostics/DiagnosticEmitter.d.ts +0 -32
  681. package/dist/diagnostics/DiagnosticEmitter.js +0 -95
  682. package/dist/diagnostics/DiagnosticMessage.d.ts +0 -37
  683. package/dist/diagnostics/DiagnosticMessage.js +0 -229
  684. package/dist/diagnostics/diagnosticMessages.generated.d.ts +0 -275
  685. package/dist/diagnostics/diagnosticMessages.generated.js +0 -551
  686. package/dist/diagnostics/utils/types.d.ts +0 -5
  687. package/dist/diagnostics/utils/types.js +0 -1
  688. package/dist/index.d.ts +0 -12
  689. package/dist/index.js +0 -13
  690. package/dist/parser/Parser.d.ts +0 -150
  691. package/dist/parser/Parser.js +0 -2416
  692. package/dist/parser/Precedence.d.ts +0 -38
  693. package/dist/parser/Precedence.js +0 -98
  694. package/dist/parser/hoistStatementsInplace.d.ts +0 -14
  695. package/dist/parser/hoistStatementsInplace.js +0 -94
  696. package/dist/parser/index.d.ts +0 -1
  697. package/dist/parser/index.js +0 -1
  698. package/dist/parser/parseFile.d.ts +0 -3
  699. package/dist/parser/parseFile.js +0 -8
  700. package/dist/tokenizer/IdentifierHandling.d.ts +0 -5
  701. package/dist/tokenizer/IdentifierHandling.js +0 -6
  702. package/dist/tokenizer/OnNewLine.d.ts +0 -6
  703. package/dist/tokenizer/OnNewLine.js +0 -8
  704. package/dist/tokenizer/Token.d.ts +0 -160
  705. package/dist/tokenizer/Token.js +0 -213
  706. package/dist/tokenizer/Tokenizer.d.ts +0 -129
  707. package/dist/tokenizer/Tokenizer.js +0 -1323
  708. package/dist/tokenizer/TokenizerState.d.ts +0 -17
  709. package/dist/tokenizer/TokenizerState.js +0 -17
  710. package/dist/tokenizer/index.d.ts +0 -2
  711. package/dist/tokenizer/index.js +0 -2
  712. package/dist/tokenizer/utils/isIllegalVariableIdentifier.d.ts +0 -1
  713. package/dist/tokenizer/utils/isIllegalVariableIdentifier.js +0 -12
  714. package/dist/tokenizer/utils/operatorTokenToString.d.ts +0 -2
  715. package/dist/tokenizer/utils/operatorTokenToString.js +0 -57
  716. package/dist/tokenizer/utils/tokenFromKeyword.d.ts +0 -2
  717. package/dist/tokenizer/utils/tokenFromKeyword.js +0 -222
  718. package/dist/tokenizer/utils/tokenIsAlsoIdentifier.d.ts +0 -2
  719. package/dist/tokenizer/utils/tokenIsAlsoIdentifier.js +0 -24
  720. package/dist/utils/BasePlutsError.d.ts +0 -2
  721. package/dist/utils/BasePlutsError.js +0 -2
  722. package/dist/utils/BitUtils/index.d.ts +0 -30
  723. package/dist/utils/BitUtils/index.js +0 -60
  724. package/dist/utils/CharCode.d.ts +0 -125
  725. package/dist/utils/CharCode.js +0 -1
  726. package/dist/utils/Cloneable.d.ts +0 -6
  727. package/dist/utils/Cloneable.js +0 -4
  728. package/dist/utils/InvalidCborFormatError.d.ts +0 -3
  729. package/dist/utils/InvalidCborFormatError.js +0 -5
  730. package/dist/utils/IsSingleKey.d.ts +0 -7
  731. package/dist/utils/IsSingleKey.js +0 -1
  732. package/dist/utils/MaybePromise.d.ts +0 -2
  733. package/dist/utils/MaybePromise.js +0 -4
  734. package/dist/utils/PlutusScriptType.d.ts +0 -12
  735. package/dist/utils/PlutusScriptType.js +0 -1
  736. package/dist/utils/ToJson.d.ts +0 -4
  737. package/dist/utils/ToJson.js +0 -5
  738. package/dist/utils/UPLCFlatUtils/index.d.ts +0 -46
  739. package/dist/utils/UPLCFlatUtils/index.js +0 -124
  740. package/dist/utils/array/filterSortedStrArrInplace.d.ts +0 -7
  741. package/dist/utils/array/filterSortedStrArrInplace.js +0 -46
  742. package/dist/utils/array/keepSortedArrInplace.d.ts +0 -7
  743. package/dist/utils/array/keepSortedArrInplace.js +0 -49
  744. package/dist/utils/array/mergeSortedStrArrInplace.d.ts +0 -6
  745. package/dist/utils/array/mergeSortedStrArrInplace.js +0 -52
  746. package/dist/utils/assert.d.ts +0 -1
  747. package/dist/utils/assert.js +0 -5
  748. package/dist/utils/capitalize.d.ts +0 -1
  749. package/dist/utils/capitalize.js +0 -5
  750. package/dist/utils/combinators.d.ts +0 -37
  751. package/dist/utils/combinators.js +0 -76
  752. package/dist/utils/getCallStackAt/index.d.ts +0 -43
  753. package/dist/utils/getCallStackAt/index.js +0 -295
  754. package/dist/utils/hex.d.ts +0 -1
  755. package/dist/utils/hex.js +0 -6
  756. package/dist/utils/ints.d.ts +0 -4
  757. package/dist/utils/ints.js +0 -19
  758. package/dist/utils/isNonEmpty.d.ts +0 -1
  759. package/dist/utils/isNonEmpty.js +0 -3
  760. package/dist/utils/maybeData.d.ts +0 -4
  761. package/dist/utils/maybeData.js +0 -10
  762. package/dist/utils/stringify.d.ts +0 -2
  763. package/dist/utils/stringify.js +0 -31
  764. package/dist/utils/terminal.d.ts +0 -28
  765. package/dist/utils/terminal.js +0 -38
  766. package/dist/utils/text.d.ts +0 -172
  767. package/dist/utils/text.js +0 -672
  768. package/dist/utils/types.d.ts +0 -12
  769. package/dist/utils/types.js +0 -1
@@ -1,18 +0,0 @@
1
- import { ConstType } from "@harmoniclabs/uplc";
2
- import { ITirType } from "./TirType.js";
3
- export declare class TirTypeParam implements ITirType {
4
- readonly name: string;
5
- readonly symbol: symbol;
6
- constructor(name: string, symbol?: symbol);
7
- hasDataEncoding(): boolean;
8
- toTirTypeKey(): string;
9
- toConcreteTirTypeName(): string;
10
- toString(): string;
11
- toAstName(): string;
12
- toInternalName(): string;
13
- isConcrete(): boolean;
14
- clone(): TirTypeParam;
15
- eq(other: TirTypeParam): boolean;
16
- static eq(a: TirTypeParam, b: TirTypeParam): boolean;
17
- toUplcConstType(): ConstType;
18
- }
@@ -1,39 +0,0 @@
1
- export class TirTypeParam {
2
- name;
3
- symbol;
4
- constructor(name, symbol) {
5
- this.name = name;
6
- this.name = name;
7
- if (typeof symbol !== "symbol")
8
- this.symbol = Symbol(name);
9
- }
10
- hasDataEncoding() { return false; }
11
- toTirTypeKey() {
12
- throw new Error("`toTirTypeKey` called on TirTypeParam; tir cannot have ambiguous types");
13
- }
14
- toConcreteTirTypeName() {
15
- throw new Error("`toConcreteTirTypeName` called on TirTypeParam; tir cannot have ambiguous types");
16
- }
17
- toString() {
18
- return this.name;
19
- }
20
- toAstName() {
21
- return this.toString();
22
- }
23
- toInternalName() {
24
- return this.toString();
25
- }
26
- isConcrete() { return false; }
27
- clone() {
28
- return new TirTypeParam(this.name, this.symbol);
29
- }
30
- eq(other) {
31
- return this.symbol === other.symbol;
32
- }
33
- static eq(a, b) {
34
- return a.symbol === b.symbol;
35
- }
36
- toUplcConstType() {
37
- throw new Error("type parameters cannot be represented as uplc constants.");
38
- }
39
- }
@@ -1,24 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { TirDataOptT } from "../TirNativeType/native/Optional/data.js";
3
- import { TirSopOptT } from "../TirNativeType/native/Optional/sop.js";
4
- import { TirStructType } from "../TirStructType.js";
5
- import { TirNamedDestructableType, TirType } from "../TirType.js";
6
- export declare enum CanAssign {
7
- LeftArgIsNotConcrete = -1,
8
- No = 0,
9
- Yes = 1,
10
- LiftToOptional = 2,
11
- RequiresExplicitCast = 3
12
- }
13
- export declare function isStructOrStructAlias(type: TirType): boolean;
14
- export declare function getStructType(type: TirType | undefined): TirStructType | undefined;
15
- export declare function getNamedDestructableType(type: TirType | undefined): TirNamedDestructableType | undefined;
16
- export declare function canAssignToOptional(type: TirType): type is TirDataOptT | TirSopOptT | TirAliasType<TirDataOptT | TirSopOptT>;
17
- export declare function canAssignToList(type: TirType): boolean;
18
- /**
19
- * @returns `true` if `a` can be assigned to `b` **without** explicit cast
20
- *
21
- * use `getCanAssign` for more detailed information
22
- */
23
- export declare function canAssignTo(a: TirType, b: TirType): boolean;
24
- export declare function getCanAssign(a: TirType, b: TirType): CanAssign;
@@ -1,337 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { TirUnConstrDataResultT, TirPairDataT } from "../TirNativeType/index.js";
3
- import { TirBoolT } from "../TirNativeType/native/bool.js";
4
- import { TirBytesT } from "../TirNativeType/native/bytes.js";
5
- import { TirDataT } from "../TirNativeType/native/data.js";
6
- import { TirFuncT } from "../TirNativeType/native/function.js";
7
- import { TirIntT } from "../TirNativeType/native/int.js";
8
- import { TirLinearMapT } from "../TirNativeType/native/linearMap.js";
9
- import { TirListT } from "../TirNativeType/native/list.js";
10
- import { TirDataOptT } from "../TirNativeType/native/Optional/data.js";
11
- import { TirSopOptT } from "../TirNativeType/native/Optional/sop.js";
12
- import { TirStringT } from "../TirNativeType/native/string.js";
13
- import { TirVoidT } from "../TirNativeType/native/void.js";
14
- import { isTirStructType, TirDataStructType, TirSoPStructType } from "../TirStructType.js";
15
- import { isTirNamedDestructableType } from "../TirType.js";
16
- import { TirTypeParam } from "../TirTypeParam.js";
17
- import { canCastToData } from "./canCastTo.js";
18
- import { getUnaliased } from "./getUnaliased.js";
19
- export var CanAssign;
20
- (function (CanAssign) {
21
- CanAssign[CanAssign["LeftArgIsNotConcrete"] = -1] = "LeftArgIsNotConcrete";
22
- CanAssign[CanAssign["No"] = 0] = "No";
23
- CanAssign[CanAssign["Yes"] = 1] = "Yes";
24
- // yes, but...
25
- CanAssign[CanAssign["LiftToOptional"] = 2] = "LiftToOptional";
26
- CanAssign[CanAssign["RequiresExplicitCast"] = 3] = "RequiresExplicitCast";
27
- // OnlyAsData,
28
- // runtimeModifier,
29
- })(CanAssign || (CanAssign = {}));
30
- Object.freeze(CanAssign);
31
- export function isStructOrStructAlias(type) {
32
- while (type instanceof TirAliasType)
33
- type = type.aliased;
34
- return isTirStructType(type);
35
- }
36
- export function getStructType(type) {
37
- while (type instanceof TirAliasType)
38
- type = type.aliased;
39
- return isTirStructType(type) ? type : undefined;
40
- }
41
- export function getNamedDestructableType(type) {
42
- while (type instanceof TirAliasType)
43
- type = type.aliased;
44
- if (!isTirNamedDestructableType(type))
45
- return undefined;
46
- return type;
47
- }
48
- export function canAssignToOptional(type) {
49
- type = getUnaliased(type);
50
- return (type instanceof TirDataOptT
51
- || type instanceof TirSopOptT);
52
- }
53
- export function canAssignToList(type) {
54
- type = getUnaliased(type);
55
- return (type instanceof TirListT
56
- // || type instanceof TirLinearMapT
57
- );
58
- }
59
- /**
60
- * @returns `true` if `a` can be assigned to `b` **without** explicit cast
61
- *
62
- * use `getCanAssign` for more detailed information
63
- */
64
- export function canAssignTo(a, b) {
65
- return getCanAssign(a, b) === CanAssign.Yes;
66
- }
67
- export function getCanAssign(a, b) {
68
- // remove for tests
69
- if (a === b)
70
- return CanAssign.Yes; // same object, we don't care if not concrete
71
- if (!a.isConcrete())
72
- return CanAssign.LeftArgIsNotConcrete;
73
- return uncheckedGetCanAssign(a, b, new Map());
74
- }
75
- function uncheckedGetCanAssign(a, b, symbols) {
76
- // remove for tests
77
- if (a === b)
78
- return CanAssign.Yes; // same object (here for recursive calls)
79
- // unwrap all aliases
80
- // aliases are only for custom interface implementations
81
- // but the data is the same
82
- while (a instanceof TirAliasType)
83
- a = a.aliased;
84
- while (b instanceof TirAliasType)
85
- b = b.aliased;
86
- if (b instanceof TirTypeParam) {
87
- if (symbols.has(b.symbol)) {
88
- return uncheckedGetCanAssign(a, symbols.get(b.symbol), symbols);
89
- }
90
- symbols.set(b.symbol, a);
91
- return CanAssign.Yes;
92
- }
93
- if (b instanceof TirVoidT) {
94
- if (a instanceof TirVoidT)
95
- return CanAssign.Yes;
96
- if (a instanceof TirDataT)
97
- return CanAssign.RequiresExplicitCast;
98
- return CanAssign.No;
99
- }
100
- if (b instanceof TirBoolT) {
101
- if (a instanceof TirBoolT)
102
- return CanAssign.Yes;
103
- if (a instanceof TirDataT)
104
- return CanAssign.RequiresExplicitCast;
105
- return CanAssign.No;
106
- }
107
- if (b instanceof TirIntT) {
108
- if (a instanceof TirIntT)
109
- return CanAssign.Yes;
110
- if (a instanceof TirDataT)
111
- return CanAssign.RequiresExplicitCast;
112
- return CanAssign.No;
113
- }
114
- if (b instanceof TirBytesT) {
115
- if (a instanceof TirBytesT)
116
- return CanAssign.Yes;
117
- if (a instanceof TirStringT)
118
- return CanAssign.RequiresExplicitCast;
119
- if (a instanceof TirDataT)
120
- return CanAssign.RequiresExplicitCast;
121
- return CanAssign.No;
122
- }
123
- if (b instanceof TirStringT) {
124
- if (a instanceof TirStringT)
125
- return CanAssign.Yes;
126
- if (a instanceof TirBytesT)
127
- return CanAssign.RequiresExplicitCast;
128
- if (a instanceof TirDataT)
129
- return CanAssign.RequiresExplicitCast;
130
- return CanAssign.No;
131
- }
132
- if (b instanceof TirUnConstrDataResultT) {
133
- return a instanceof TirUnConstrDataResultT ? CanAssign.Yes : CanAssign.No;
134
- }
135
- if (b instanceof TirPairDataT) {
136
- return a instanceof TirPairDataT ? CanAssign.Yes : CanAssign.No;
137
- }
138
- if (b instanceof TirSopOptT) {
139
- if (a instanceof TirSopOptT)
140
- return uncheckedGetCanAssign(a.typeArg, b.typeArg, symbols);
141
- if (a instanceof TirDataOptT)
142
- return canAssignTo(a.typeArg, b.typeArg) ? CanAssign.RequiresExplicitCast : CanAssign.No;
143
- if (a instanceof TirDataT)
144
- return CanAssign.RequiresExplicitCast;
145
- const canAssingToDefined = uncheckedGetCanAssign(a, b.typeArg, symbols);
146
- switch (canAssingToDefined) {
147
- case CanAssign.Yes: // value => Some{ value }
148
- return CanAssign.LiftToOptional;
149
- case CanAssign.RequiresExplicitCast:
150
- // TODO: do we want to allow this?
151
- // return CanAssign.RequiresExplicitCast;
152
- case CanAssign.No:
153
- case CanAssign.LeftArgIsNotConcrete:
154
- case CanAssign.LiftToOptional: // value is not assignable with single lift
155
- default:
156
- return CanAssign.No;
157
- }
158
- return CanAssign.No;
159
- }
160
- if (b instanceof TirDataOptT) {
161
- if (a instanceof TirSopOptT)
162
- return uncheckedGetCanAssign(a.typeArg, b.typeArg, symbols);
163
- if (a instanceof TirDataOptT)
164
- return canAssignTo(a.typeArg, b.typeArg) ? CanAssign.RequiresExplicitCast : CanAssign.No;
165
- if (a instanceof TirDataT)
166
- return CanAssign.RequiresExplicitCast;
167
- return CanAssign.No;
168
- }
169
- if (b instanceof TirListT) {
170
- if (a instanceof TirListT)
171
- return uncheckedGetCanAssign(a.typeArg, b.typeArg, symbols);
172
- if (a instanceof TirDataT)
173
- return CanAssign.RequiresExplicitCast;
174
- return CanAssign.No;
175
- }
176
- if (b instanceof TirLinearMapT) {
177
- if (a instanceof TirLinearMapT) {
178
- return decideCanAssignField(uncheckedGetCanAssign(a.keyTypeArg, b.keyTypeArg, symbols), uncheckedGetCanAssign(a.valTypeArg, b.valTypeArg, symbols));
179
- }
180
- if (a instanceof TirDataT)
181
- return CanAssign.RequiresExplicitCast;
182
- return CanAssign.No;
183
- }
184
- if (b instanceof TirDataT) {
185
- if (a instanceof TirDataT)
186
- return CanAssign.Yes;
187
- if (a instanceof TirDataStructType)
188
- return CanAssign.RequiresExplicitCast;
189
- if (a instanceof TirSoPStructType)
190
- return CanAssign.No;
191
- // int, bytes, string, bool, even void
192
- // optionals (part of the standard ledger API) as long as the type argument can too
193
- // structs that allow data encoding
194
- // lists and maps of any of the above
195
- // can all cast to data
196
- return canCastToData(a) ? CanAssign.RequiresExplicitCast : CanAssign.No;
197
- }
198
- if (b instanceof TirDataStructType) {
199
- if (a instanceof TirDataStructType)
200
- return canAssignStruct(a, b, symbols);
201
- if (a instanceof TirSoPStructType)
202
- return CanAssign.No;
203
- if (a instanceof TirDataT)
204
- return CanAssign.RequiresExplicitCast;
205
- return CanAssign.No;
206
- }
207
- if (b instanceof TirSoPStructType) {
208
- if (a instanceof TirSoPStructType)
209
- return canAssignStruct(a, b, symbols);
210
- return CanAssign.No;
211
- }
212
- if (isTirStructType(a))
213
- return CanAssign.No;
214
- if (b instanceof TirFuncT) {
215
- if (!(a instanceof TirFuncT
216
- && a.argTypes.length === b.argTypes.length))
217
- return CanAssign.No;
218
- let currentDecision = uncheckedGetCanAssign(a.returnType, b.returnType, symbols);
219
- for (let i = 0; i < a.argTypes.length; i++) {
220
- currentDecision = decideCanAssignField(currentDecision,
221
- // TODO make one only for functions
222
- uncheckedGetCanAssign(a.argTypes[i], b.argTypes[i], symbols));
223
- if (currentDecision <= CanAssign.No)
224
- return currentDecision;
225
- }
226
- return currentDecision;
227
- }
228
- const tsEnsureExsautstiveCheck = b;
229
- return CanAssign.No;
230
- }
231
- function canAssignStruct(a, b, symbols) {
232
- while (a instanceof TirAliasType)
233
- a = a.aliased;
234
- while (b instanceof TirAliasType)
235
- b = b.aliased;
236
- const aCtors = a.constructors;
237
- const bCtors = b.constructors;
238
- if (aCtors.length !== bCtors.length)
239
- return CanAssign.No;
240
- const len = aCtors.length;
241
- // check for the same number of fields
242
- // so we avoid useless checks on types that don't exsist
243
- for (let i = 0; i < len; i++) {
244
- const aCtor = aCtors[i];
245
- const bCtor = bCtors[i];
246
- if (aCtor.fields.length !== bCtor.fields.length)
247
- return CanAssign.No;
248
- }
249
- for (let i = 0; i < len; i++) {
250
- if (
251
- // check for the same fields and the extending types to extend the given struct ones
252
- !canAssignCtorDef(aCtors[i], bCtors[i], symbols))
253
- return CanAssign.No;
254
- }
255
- // check if cast is needed even if shape is the same
256
- for (let i = 0; i < len; i++) {
257
- const aCtor = aCtors[i];
258
- const bCtor = bCtors[i];
259
- if (aCtor.fields.length !== bCtor.fields.length)
260
- return CanAssign.RequiresExplicitCast;
261
- }
262
- if (a.name !== b.name)
263
- return CanAssign.RequiresExplicitCast;
264
- return CanAssign.Yes;
265
- }
266
- /**
267
- *
268
- * @param a extending ctor
269
- * @param b extended ctor
270
- * @returns
271
- */
272
- function canAssignCtorDef(a, b, symbols) {
273
- if (a.fields.length !== b.fields.length)
274
- return CanAssign.No;
275
- const len = a.fields.length;
276
- let currentDecision = CanAssign.Yes;
277
- let prevDecision = currentDecision;
278
- for (let i = 0; i < len; i++) {
279
- prevDecision = currentDecision;
280
- currentDecision = decideCanAssignField(currentDecision, uncheckedGetCanAssign(a.fields[i].type, b.fields[i].type, symbols));
281
- if (currentDecision <= CanAssign.No)
282
- return currentDecision;
283
- if (a.fields[i].name !== b.fields[i].name)
284
- currentDecision = decideCanAssignField(currentDecision, CanAssign.RequiresExplicitCast);
285
- }
286
- return currentDecision;
287
- }
288
- function decideCanAssignField(currentDecision, fieldDecision) {
289
- if (currentDecision === CanAssign.No
290
- || currentDecision === CanAssign.LeftArgIsNotConcrete)
291
- return currentDecision;
292
- switch (fieldDecision) {
293
- // lift to optional only valid for direct types
294
- case CanAssign.LiftToOptional: return CanAssign.No;
295
- // no decisions always win
296
- case CanAssign.No: return CanAssign.No;
297
- case CanAssign.LeftArgIsNotConcrete: return CanAssign.LeftArgIsNotConcrete;
298
- // yes decisions by most descriptive (sop and data conflict become nos)
299
- case CanAssign.Yes: return currentDecision;
300
- case CanAssign.RequiresExplicitCast: {
301
- switch (currentDecision) {
302
- case CanAssign.Yes: return CanAssign.RequiresExplicitCast;
303
- case CanAssign.RequiresExplicitCast: return CanAssign.RequiresExplicitCast;
304
- // case CanAssign.OnlyAsData: return CanAssign.OnlyAsData;
305
- // case CanAssign.runtimeModifier: return CanAssign.runtimeModifier;
306
- default: return CanAssign.No;
307
- }
308
- break;
309
- }
310
- // case CanAssign.OnlyAsData: {
311
- // switch( currentDecision )
312
- // {
313
- // case CanAssign.Yes: return CanAssign.OnlyAsData;
314
- // case CanAssign.RequiresExplicitCast: return CanAssign.OnlyAsData;
315
- // case CanAssign.OnlyAsData: return CanAssign.OnlyAsData;
316
- // case CanAssign.runtimeModifier: return CanAssign.No; // conflict
317
- // default: return CanAssign.No;
318
- // }
319
- // break;
320
- // }
321
- // case CanAssign.runtimeModifier: {
322
- // switch( currentDecision )
323
- // {
324
- // case CanAssign.Yes: return CanAssign.runtimeModifier;
325
- // case CanAssign.RequiresExplicitCast: return CanAssign.runtimeModifier;
326
- // // case CanAssign.OnlyAsData: return CanAssign.No; // conflict
327
- // case CanAssign.runtimeModifier: return CanAssign.runtimeModifier;
328
- // default: return CanAssign.No;
329
- // }
330
- // break;
331
- // }
332
- default:
333
- // never
334
- // fieldDecision;
335
- return CanAssign.No;
336
- }
337
- }
@@ -1,9 +0,0 @@
1
- import { TirType } from "../TirType.js";
2
- export declare function canCastTo(a: TirType, b: TirType): boolean;
3
- /**
4
- * int, bytes, string, bool, even void
5
- * lists and maps of any of the above
6
- * optionals (part of the standard ledger API) as long as the type argument can too
7
- * can all cast to data
8
- */
9
- export declare function canCastToData(a: TirType): boolean;
@@ -1,155 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { TirBoolT } from "../TirNativeType/native/bool.js";
3
- import { TirBytesT } from "../TirNativeType/native/bytes.js";
4
- import { TirDataT } from "../TirNativeType/native/data.js";
5
- import { TirFuncT } from "../TirNativeType/native/function.js";
6
- import { TirIntT } from "../TirNativeType/native/int.js";
7
- import { TirLinearMapT } from "../TirNativeType/native/linearMap.js";
8
- import { TirListT } from "../TirNativeType/native/list.js";
9
- import { TirDataOptT } from "../TirNativeType/native/Optional/data.js";
10
- import { TirSopOptT } from "../TirNativeType/native/Optional/sop.js";
11
- import { TirStringT } from "../TirNativeType/native/string.js";
12
- import { TirVoidT } from "../TirNativeType/native/void.js";
13
- import { isTirStructType, TirDataStructType } from "../TirStructType.js";
14
- import { CanAssign, getCanAssign } from "./canAssignTo.js";
15
- export function canCastTo(a, b) {
16
- if (!(a.isConcrete()
17
- && b.isConcrete()))
18
- return false; // both need to be concrete
19
- while (b instanceof TirAliasType)
20
- b = b.aliased;
21
- while (a instanceof TirAliasType)
22
- a = a.aliased;
23
- if (b instanceof TirDataT) {
24
- return canCastToData(a);
25
- }
26
- if (isTirStructType(b)) {
27
- switch (getCanAssign(a, b)) {
28
- case CanAssign.Yes:
29
- // case CanAssign.runtimeModifier:
30
- // case CanAssign.OnlyAsData:
31
- case CanAssign.RequiresExplicitCast:
32
- return true;
33
- case CanAssign.No:
34
- case CanAssign.LeftArgIsNotConcrete:
35
- default:
36
- return false;
37
- }
38
- }
39
- if (b instanceof TirVoidT) {
40
- return (a instanceof TirVoidT
41
- || a instanceof TirDataT // Constr( 0, [] ) // void is unit
42
- );
43
- }
44
- if (b instanceof TirBoolT) {
45
- return (a instanceof TirBoolT
46
- || a instanceof TirDataT
47
- || a instanceof TirIntT
48
- || a instanceof TirSopOptT
49
- || a instanceof TirDataOptT);
50
- }
51
- if (b instanceof TirIntT) {
52
- if (a instanceof TirIntT)
53
- return true;
54
- if (a instanceof TirDataT)
55
- return true;
56
- if (a instanceof TirBoolT)
57
- return true; // 0 | 1
58
- if (a instanceof TirBytesT)
59
- return true; // decode big endian plutus v3 builtin
60
- return false;
61
- }
62
- if (b instanceof TirBytesT) {
63
- if (a instanceof TirBytesT)
64
- return true;
65
- if (a instanceof TirDataT)
66
- return true;
67
- if (a instanceof TirStringT)
68
- return true; // string -> bytes // decode utf8
69
- // how do we handle this?
70
- // in theory we can encode but only fixed size
71
- // we have no idea of the size of ints
72
- // if( a instanceof TirIntT ) return true;
73
- return false;
74
- }
75
- if (b instanceof TirStringT) {
76
- if (a instanceof TirStringT)
77
- return true;
78
- if (a instanceof TirDataT)
79
- return true;
80
- if (a instanceof TirBytesT)
81
- return true; // bytes -> string // encode utf8
82
- return false;
83
- }
84
- if (b instanceof TirDataOptT
85
- || b instanceof TirSopOptT) {
86
- if (a instanceof TirDataOptT
87
- || a instanceof TirSopOptT)
88
- return canCastTo(a.typeArg, b.typeArg);
89
- if (a instanceof TirDataT)
90
- return true;
91
- return false;
92
- }
93
- if (b instanceof TirListT) {
94
- if (a instanceof TirListT)
95
- return canCastTo(a.typeArg, b.typeArg);
96
- if (a instanceof TirDataT)
97
- return canCastToData(b.typeArg);
98
- return false;
99
- }
100
- if (b instanceof TirLinearMapT) {
101
- if (a instanceof TirLinearMapT) {
102
- return (canCastTo(a.keyTypeArg, b.keyTypeArg)
103
- && canCastTo(a.valTypeArg, b.valTypeArg));
104
- }
105
- if (a instanceof TirDataT)
106
- return (canCastToData(b.keyTypeArg)
107
- && canCastToData(b.valTypeArg));
108
- return false;
109
- }
110
- if (b instanceof TirFuncT) {
111
- if (!(a instanceof TirFuncT))
112
- return false;
113
- return (a.argTypes.length === b.argTypes.length
114
- && a.argTypes.every((arg, i) => getCanAssign(arg, b.argTypes[i]) === CanAssign.Yes)
115
- && getCanAssign(a.returnType, b.returnType) === CanAssign.Yes);
116
- }
117
- // TirTypeParam
118
- // b;
119
- return false;
120
- }
121
- /**
122
- * int, bytes, string, bool, even void
123
- * lists and maps of any of the above
124
- * optionals (part of the standard ledger API) as long as the type argument can too
125
- * can all cast to data
126
- */
127
- export function canCastToData(a) {
128
- while (a instanceof TirAliasType
129
- || a instanceof TirSopOptT
130
- || a instanceof TirDataOptT
131
- || a instanceof TirListT) {
132
- if (a instanceof TirAliasType)
133
- a = a.aliased;
134
- if (a instanceof TirListT
135
- || a instanceof TirSopOptT)
136
- a = a.typeArg;
137
- }
138
- if (a instanceof TirDataT
139
- || a instanceof TirVoidT
140
- || a instanceof TirIntT
141
- || a instanceof TirBytesT
142
- || a instanceof TirStringT
143
- || a instanceof TirBoolT
144
- || a instanceof TirDataOptT
145
- || a instanceof TirDataStructType)
146
- return true;
147
- if (a instanceof TirLinearMapT) {
148
- const key = canCastToData(a.keyTypeArg);
149
- const value = canCastToData(a.valTypeArg);
150
- return key && value;
151
- }
152
- // TirFuncT | TirSoPStructType | TirTypeParam
153
- a;
154
- return false;
155
- }
@@ -1,9 +0,0 @@
1
- import { TirDataT } from "../TirNativeType/native/data.js";
2
- import { TirLinearMapT } from "../TirNativeType/native/linearMap.js";
3
- import { TirListT } from "../TirNativeType/native/list.js";
4
- import { TirDataOptT } from "../TirNativeType/native/Optional/data.js";
5
- import { TirSopOptT } from "../TirNativeType/native/Optional/sop.js";
6
- import { TirStructType } from "../TirStructType.js";
7
- import { TirType } from "../TirType.js";
8
- export type DeconstructableTirType = TirStructType | TirSopOptT | TirDataOptT | TirListT | TirLinearMapT | TirDataT;
9
- export declare function getDeconstructableType(type: TirType): DeconstructableTirType | undefined;
@@ -1,20 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { TirDataT } from "../TirNativeType/native/data.js";
3
- import { TirLinearMapT } from "../TirNativeType/native/linearMap.js";
4
- import { TirListT } from "../TirNativeType/native/list.js";
5
- import { TirDataOptT } from "../TirNativeType/native/Optional/data.js";
6
- import { TirSopOptT } from "../TirNativeType/native/Optional/sop.js";
7
- import { isTirStructType } from "../TirStructType.js";
8
- export function getDeconstructableType(type) {
9
- while (type instanceof TirAliasType)
10
- type = type.aliased;
11
- if (isTirStructType(type)
12
- || type instanceof TirSopOptT
13
- || type instanceof TirDataOptT
14
- || type instanceof TirListT
15
- || type instanceof TirLinearMapT
16
- || type instanceof TirDataT // builtin choose data
17
- )
18
- return type;
19
- return undefined;
20
- }
@@ -1,2 +0,0 @@
1
- import { TirType } from "../TirType.js";
2
- export declare function getListTypeArg(list_t: TirType): TirType | undefined;
@@ -1,9 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { TirListT } from "../TirNativeType/native/list.js";
3
- export function getListTypeArg(list_t) {
4
- while (list_t instanceof TirAliasType)
5
- list_t = list_t.aliased;
6
- if (list_t instanceof TirListT)
7
- return list_t.typeArg;
8
- return undefined;
9
- }
@@ -1,2 +0,0 @@
1
- import { TirType } from "../TirType.js";
2
- export declare function getOptTypeArg(opt_t: TirType): TirType | undefined;
@@ -1,14 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { TirDataOptT } from "../TirNativeType/native/Optional/data.js";
3
- import { TirSopOptT } from "../TirNativeType/native/Optional/sop.js";
4
- import { isTirType } from "../TirType.js";
5
- export function getOptTypeArg(opt_t) {
6
- if (!isTirType(opt_t))
7
- throw new Error("getOptTypeArg: not a TirType");
8
- while (opt_t instanceof TirAliasType)
9
- opt_t = opt_t.aliased;
10
- if (opt_t instanceof TirSopOptT
11
- || opt_t instanceof TirDataOptT)
12
- return opt_t.typeArg;
13
- return undefined;
14
- }
@@ -1,3 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { TirType } from "../TirType.js";
3
- export declare function getUnaliased(t: TirType): Exclude<TirType, TirAliasType<any>>;
@@ -1,9 +0,0 @@
1
- import { TirAliasType } from "../TirAliasType.js";
2
- import { isTirType } from "../TirType.js";
3
- export function getUnaliased(t) {
4
- if (!isTirType(t))
5
- throw new Error(`getUnaliased: expected a TirType, got ${t}`);
6
- while (t instanceof TirAliasType)
7
- t = t.aliased;
8
- return t;
9
- }