@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,520 +0,0 @@
1
- import { DataConstr } from "@harmoniclabs/plutus-data";
2
- import { IRApp } from "../../../IRNodes/IRApp.js";
3
- import { IRConst } from "../../../IRNodes/IRConst.js";
4
- import { IRDelayed } from "../../../IRNodes/IRDelayed.js";
5
- import { IRForced } from "../../../IRNodes/IRForced.js";
6
- import { IRFunc } from "../../../IRNodes/IRFunc.js";
7
- import { IRHoisted } from "../../../IRNodes/IRHoisted.js";
8
- import { IRNative } from "../../../IRNodes/IRNative/index.js";
9
- import { IRNativeTag } from "../../../IRNodes/IRNative/IRNativeTag.js";
10
- import { IRVar } from "../../../IRNodes/IRVar.js";
11
- import { _ir_apps } from "../../../tree_utils/_ir_apps.js";
12
- import { IRRecursive } from "../../../IRNodes/IRRecursive.js";
13
- import { IRSelfCall } from "../../../IRNodes/IRSelfCall.js";
14
- import { IRError } from "../../../IRNodes/index.js";
15
- import { _ir_let } from "../../../tree_utils/_ir_let.js";
16
- import { _ir_lazyIfThenElse } from "../../../tree_utils/_ir_lazyIfThenElse.js";
17
- const hoisted_id = new IRHoisted(new IRFunc(1, new IRVar(0)));
18
- hoisted_id.hash;
19
- const hoisted_not = new IRHoisted(new IRFunc(1, // someBool
20
- _ir_apps(IRNative.strictIfThenElse, new IRVar(0), // someBool
21
- IRConst.bool(false), // someBool == true -> false
22
- IRConst.bool(true) // someBool == false -> true
23
- )));
24
- hoisted_not.hash;
25
- const hoisted_drop2 = new IRHoisted(new IRFunc(1, // lst
26
- _ir_apps(IRNative.tailList, _ir_apps(IRNative.tailList, new IRVar(0) // lst
27
- ))));
28
- hoisted_drop2.hash;
29
- const hoisted_drop3 = new IRHoisted(new IRFunc(1, // lst
30
- _ir_apps(IRNative.tailList, _ir_apps(IRNative.tailList, _ir_apps(IRNative.tailList, new IRVar(0) // lst
31
- )))));
32
- hoisted_drop3.hash;
33
- const hoisted_drop4 = new IRHoisted(new IRFunc(1, // lst
34
- _ir_apps(IRNative.tailList, _ir_apps(IRNative.tailList, _ir_apps(IRNative.tailList, _ir_apps(IRNative.tailList, new IRVar(0) // lst
35
- ))))));
36
- hoisted_drop4.hash;
37
- const hoisted_drop8 = new IRHoisted(new IRFunc(1, // lst
38
- _ir_apps(hoisted_drop4.clone(), _ir_apps(hoisted_drop4.clone(), new IRVar(0) // lst
39
- ))));
40
- hoisted_drop8.hash;
41
- const hoisted_drop16 = new IRHoisted(new IRFunc(1, // lst
42
- _ir_apps(hoisted_drop8.clone(), _ir_apps(hoisted_drop8.clone(), new IRVar(0) // lst
43
- ))));
44
- hoisted_drop16.hash;
45
- const hoisted_drop32 = new IRHoisted(new IRFunc(1, // lst
46
- _ir_apps(hoisted_drop16.clone(), _ir_apps(hoisted_drop16.clone(), new IRVar(0) // lst
47
- ))));
48
- hoisted_drop32.hash;
49
- const hoisted_incr = new IRHoisted(new IRApp(IRNative.addInteger, IRConst.int(1)));
50
- hoisted_incr.hash;
51
- const hoisted_decr = new IRHoisted(new IRApp(IRNative.addInteger, IRConst.int(-1)));
52
- hoisted_decr.hash;
53
- const hoisted_isZero = new IRHoisted(new IRApp(IRNative.equalsInteger, IRConst.int(0)));
54
- hoisted_isZero.hash;
55
- const hoisted_isOne = new IRHoisted(new IRApp(IRNative.equalsInteger, IRConst.int(1)));
56
- hoisted_isZero.hash;
57
- const hoisted_isTwo = new IRHoisted(new IRApp(IRNative.equalsInteger, IRConst.int(2)));
58
- hoisted_isTwo.hash;
59
- const hoisted_isThree = new IRHoisted(new IRApp(IRNative.equalsInteger, IRConst.int(3)));
60
- const hoisted_addOne = new IRHoisted(new IRApp(IRNative.addInteger, IRConst.int(1)));
61
- hoisted_addOne.hash;
62
- const hoisted_subOne = new IRHoisted(new IRApp(IRNative.addInteger, IRConst.int(-1)));
63
- hoisted_subOne.hash;
64
- const hoisted_isPositive = new IRHoisted(new IRApp(IRNative.lessThanInteger, IRConst.int(0)));
65
- hoisted_isPositive.hash;
66
- const hoisted_isNonNegative = new IRHoisted(new IRApp(IRNative.lessThanEqualInteger, IRConst.int(0)));
67
- hoisted_isNonNegative.hash;
68
- const innerZ = new IRFunc(1, // f
69
- new IRApp(new IRVar(1), // Z
70
- new IRFunc(1, new IRApp(new IRApp(new IRVar(1), // toMakeRecursive
71
- new IRVar(1) // toMakeRecursive ( self )
72
- ), new IRVar(0) // first argument (other than self)
73
- ))));
74
- innerZ.hash;
75
- const hoisted_z_comb = new IRHoisted(new IRFunc(1, // Z
76
- new IRApp(innerZ.clone(), innerZ.clone())));
77
- hoisted_z_comb.hash;
78
- const hoisted_matchList = new IRHoisted(new IRFunc(3, // delayed_matchNil, matchCons, list
79
- new IRForced(new IRForced(_ir_apps(IRNative.strictChooseList, new IRVar(0), // list, last argument of IRFunc above
80
- new IRVar(2), // delayed_matchNil (`delayed( resultT )`)
81
- new IRDelayed(// delay
82
- _ir_apps(new IRVar(1), // matchCons
83
- new IRApp(IRNative.headList, new IRVar(0) // list
84
- ), new IRApp(IRNative.tailList, new IRVar(0) // list
85
- ))))))));
86
- hoisted_matchList.hash;
87
- const hosited_lazyChooseList = new IRHoisted(new IRFunc(3, // list, delayed_caseNil, delayed_caseCons
88
- new IRForced(_ir_apps(IRNative.strictChooseList, new IRVar(2), new IRVar(1), new IRVar(0)))));
89
- hosited_lazyChooseList.hash;
90
- //*/
91
- const hoisted_isMoreThanOrEqualTo4 = new IRHoisted(_ir_apps(IRNative.lessThanInteger, IRConst.int(4)));
92
- hoisted_isMoreThanOrEqualTo4.hash;
93
- const hoisted_sub4 = new IRHoisted(_ir_apps(IRNative.addInteger, IRConst.int(-4)));
94
- const hoisted_dropList = new IRHoisted(new IRRecursive(// self,
95
- new IRFunc(2, // 2: self, 1: n, 0: lst
96
- _ir_lazyIfThenElse(_ir_apps(hoisted_isMoreThanOrEqualTo4.clone(), new IRVar(1) // n
97
- ),
98
- // then
99
- _ir_apps(new IRSelfCall(2), // self
100
- _ir_apps(hoisted_sub4.clone(), new IRVar(1) // n
101
- ), _ir_apps(hoisted_drop4.clone(), new IRVar(0) // lst
102
- )),
103
- // else
104
- _ir_lazyIfThenElse(_ir_apps(hoisted_isZero.clone(), new IRVar(1) // n
105
- ),
106
- // then
107
- new IRVar(0), // lst
108
- // else
109
- _ir_lazyIfThenElse(_ir_apps(hoisted_isOne.clone(), new IRVar(1) // n
110
- ),
111
- // then
112
- _ir_apps(IRNative.tailList, new IRVar(0) // lst
113
- ),
114
- // else
115
- _ir_lazyIfThenElse(_ir_apps(hoisted_isTwo.clone(), new IRVar(1) // n
116
- ),
117
- // then
118
- _ir_apps(hoisted_drop2.clone(), new IRVar(0) // lst
119
- ),
120
- // else
121
- _ir_apps(hoisted_drop3.clone(), new IRVar(0) // lst
122
- ))))))));
123
- hoisted_dropList.hash;
124
- const hoisted_recursiveList = new IRHoisted(new IRFunc(2, // matchNil (3), matchCons (2)
125
- new IRRecursive(// self (1)
126
- new IRFunc(1, // lst (0)
127
- _ir_apps(hoisted_matchList.clone(), new IRApp(new IRVar(3), // matchNil
128
- new IRSelfCall(1) // self
129
- ), new IRApp(new IRVar(2), // matchCons,
130
- new IRSelfCall(1) // self
131
- ), new IRVar(0))))));
132
- hoisted_recursiveList.hash;
133
- const hoisted_lazyOr = new IRHoisted(new IRFunc(2, // a(1), delayed_b (0)
134
- new IRForced(_ir_apps(IRNative.strictIfThenElse, new IRVar(1), // a
135
- new IRDelayed(IRConst.bool(true)), // a == true -> true // const 7 bits; var 8 bits
136
- new IRVar(0) // a == false -> whatever b is
137
- ))));
138
- hoisted_lazyOr.hash;
139
- const hoisted_lazyAnd = new IRHoisted(new IRFunc(2, // a, b
140
- new IRForced(_ir_apps(IRNative.strictIfThenElse, new IRVar(1), // a
141
- new IRVar(0), // a == true -> whatever b is
142
- new IRDelayed(IRConst.bool(false)) // a == false -> false
143
- ))));
144
- hoisted_lazyAnd.hash;
145
- const hoisted_foldr = new IRHoisted(new IRFunc(2, // reduceFunc, accmulator
146
- _ir_apps(hoisted_recursiveList.clone(), new IRFunc(1, // _self
147
- new IRDelayed(new IRVar(1))), new IRFunc(3, // self, head, tail
148
- _ir_apps(new IRVar(4), // reduceFunc ( up to 2 are of callback, 3 is accum, 4 is reduce )
149
- new IRVar(1), // head
150
- // strictly evaluated
151
- // recursive call happens before this `reduce` call
152
- new IRApp(new IRVar(2), // self
153
- new IRVar(0) // tail
154
- ))))));
155
- hoisted_foldr.hash;
156
- const MAX_WORD4 = BigInt(1) << BigInt(32);
157
- const hoisted_sizeofPositiveInt = new IRHoisted(_ir_apps(new IRRecursive(// self
158
- new IRFunc(2, // count_words, n
159
- new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(hoisted_isZero.clone(), new IRVar(0) // n
160
- ),
161
- // then n === 0
162
- new IRDelayed(new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(hoisted_isZero.clone(), new IRVar(1) // count_words
163
- ),
164
- // then count_words === 0
165
- // at least one word is needed to represent 0, so we return 4 bytes (1 word)
166
- new IRDelayed(IRConst.int(4)),
167
- // else count_words > 0
168
- // return count_words * 4
169
- new IRDelayed(_ir_apps(IRNative.multiplyInteger, IRConst.int(4), new IRVar(1)))))),
170
- // else n > 0
171
- new IRDelayed(_ir_apps(new IRSelfCall(2), // self
172
- _ir_apps(hoisted_addOne.clone(), new IRVar(1) // count_words
173
- ), _ir_apps(IRNative.divideInteger, new IRVar(0), // n
174
- IRConst.int(MAX_WORD4)))))))), IRConst.int(0)));
175
- export function nativeToIR(native) {
176
- // positive natives are translated to uplc builtins (no need to hoist)
177
- if (native.tag >= 0)
178
- return native;
179
- switch (native.tag) {
180
- case IRNativeTag._foldr:
181
- return hoisted_foldr.clone();
182
- break;
183
- case IRNativeTag._foldl:
184
- return new IRHoisted(new IRFunc(1, // reduceFunc (4)
185
- new IRRecursive(// self (3)
186
- new IRFunc(1, // accum (2)
187
- _ir_apps(hoisted_matchList.clone(), new IRDelayed(new IRVar(0)), // pdelay( accum )
188
- new IRFunc(2, // head (1), tail (0)
189
- _ir_apps(new IRSelfCall(3), // self
190
- // compute new accumoulator before proceeding
191
- _ir_apps(new IRVar(4), // reduceFunc
192
- new IRVar(2), // accum
193
- new IRVar(1)), new IRVar(0) // tail
194
- )))))));
195
- break;
196
- case IRNativeTag._mkFindDataOptional:
197
- return new IRHoisted(new IRFunc(2, // elemToData (4), predicate (3)
198
- new IRRecursive(// self (2)
199
- new IRFunc(1, // list (1)
200
- new IRForced(_ir_apps(new IRApp(IRNative.strictChooseList, new IRVar(0) // list
201
- ),
202
- // then (caseNil)
203
- // Nothing data
204
- new IRDelayed(IRConst.data(new DataConstr(1, []) // Nothing is the second contructor
205
- )),
206
- // else // caseCons
207
- new IRDelayed(new IRApp(new IRFunc(1, // head (0) (pletted)
208
- new IRForced(_ir_apps(IRNative.strictIfThenElse, new IRApp(new IRVar(3), // predicate
209
- new IRVar(0) // head
210
- ),
211
- // then
212
- new IRDelayed(_ir_apps(IRNative.constrData, IRConst.int(0), // just contructor
213
- new IRApp(new IRVar(4), // elemToData
214
- new IRVar(0) // head
215
- ))),
216
- // else
217
- new IRDelayed(new IRApp(new IRSelfCall(2), // self
218
- new IRApp(IRNative.tailList, new IRVar(1) // list
219
- )))))), new IRApp(IRNative.headList, new IRVar(0) // list
220
- )))))))));
221
- break;
222
- case IRNativeTag._length:
223
- return new IRHoisted(new IRRecursive(// self
224
- new IRFunc(1, // list
225
- new IRForced(_ir_apps(new IRApp(IRNative.strictChooseList, new IRVar(0) // list
226
- ),
227
- // then
228
- IRConst.int(0),
229
- // else
230
- _ir_apps(hoisted_incr.clone(), new IRApp(new IRSelfCall(1), // self
231
- new IRApp(// list.tail
232
- IRNative.tailList, new IRVar(0) // list
233
- ))))))));
234
- break;
235
- case IRNativeTag._some:
236
- return new IRHoisted(new IRFunc(1, // predicate
237
- _ir_apps(hoisted_recursiveList.clone(), new IRFunc(1, // _self
238
- new IRDelayed(// pdelay( pBool( true ) )
239
- IRConst.bool(false))), new IRFunc(3, // self, head, tail
240
- _ir_apps(hoisted_lazyOr.clone(), // lazy in second
241
- new IRApp(new IRVar(3), // predicate ( 0, 1, 2 are of callback, 3 is predicate )
242
- new IRVar(1)), new IRDelayed(new IRApp(new IRVar(2), // self
243
- new IRVar(0) // tail
244
- )))))));
245
- break;
246
- case IRNativeTag._every:
247
- return new IRHoisted(new IRFunc(1, // predicate
248
- _ir_apps(hoisted_recursiveList.clone(), new IRFunc(1, // _self
249
- new IRDelayed(// pdelay( pBool( true ) )
250
- IRConst.bool(true))), new IRFunc(3, // self, head, tail
251
- _ir_apps(hoisted_lazyAnd.clone(), // lazy in second
252
- new IRApp(new IRVar(3), // predicate ( 0, 1, 2 are of callback, 3 is predicate )
253
- new IRVar(1)), new IRDelayed(new IRApp(new IRVar(2), // self
254
- new IRVar(0) // tail
255
- )))))));
256
- break;
257
- case IRNativeTag._mkFilter:
258
- return new IRHoisted(new IRFunc(2, // pnilOfType, predicate
259
- _ir_apps(hoisted_foldr.clone(), new IRFunc(2, // elem, accum
260
- new IRForced(_ir_apps(IRNative.strictIfThenElse, new IRApp(new IRVar(2), // predicate
261
- new IRVar(1) // elem
262
- ),
263
- // then
264
- new IRDelayed(_ir_apps(IRNative.mkCons, new IRVar(1), // elem
265
- new IRVar(0) // accum
266
- )),
267
- // else
268
- // filter out this element
269
- new IRDelayed(new IRVar(0) // accum
270
- )))),
271
- // initial accum
272
- new IRVar(3) // pnilOfType
273
- )));
274
- break;
275
- // case IRNativeTag._fstPair :
276
- // return new IRHoisted();
277
- // break;
278
- // case IRNativeTag._sndPair :
279
- // return new IRHoisted();
280
- // break;
281
- case IRNativeTag._id:
282
- return hoisted_id.clone();
283
- break;
284
- case IRNativeTag._not:
285
- return hoisted_not.clone();
286
- break;
287
- case IRNativeTag._strictAnd:
288
- return new IRHoisted(new IRFunc(2, // a, b
289
- _ir_apps(IRNative.strictIfThenElse, new IRVar(1), // a
290
- new IRVar(0), // a == true -> whatever b is
291
- IRConst.bool(false) // a == false -> false
292
- )));
293
- break;
294
- case IRNativeTag._and:
295
- return hoisted_lazyAnd.clone();
296
- break;
297
- case IRNativeTag._strictOr:
298
- return new IRHoisted(new IRFunc(2, // a, b
299
- _ir_apps(IRNative.strictIfThenElse, new IRVar(1), // a
300
- IRConst.bool(true), // a == true -> true
301
- new IRVar(0) // a == false -> whatever b is
302
- )));
303
- break;
304
- case IRNativeTag._or:
305
- return hoisted_lazyOr.clone();
306
- break;
307
- case IRNativeTag._gtBS:
308
- return new IRHoisted(new IRFunc(2, // a, b
309
- _ir_apps(IRNative.lessThanByteString, new IRVar(0), // b
310
- new IRVar(1))));
311
- break;
312
- case IRNativeTag._gtEqBS:
313
- return new IRHoisted(new IRFunc(2, // a, b
314
- _ir_apps(IRNative.lessThanEqualsByteString, new IRVar(0), // b
315
- new IRVar(1))));
316
- break;
317
- case IRNativeTag._gtInt:
318
- return new IRHoisted(new IRFunc(2, // a, b
319
- _ir_apps(IRNative.lessThanInteger, new IRVar(0), // b
320
- new IRVar(1))));
321
- break;
322
- case IRNativeTag._gtEqInt:
323
- return new IRHoisted(new IRFunc(2, // a, b
324
- _ir_apps(IRNative.lessThanEqualInteger, new IRVar(0), // b
325
- new IRVar(1))));
326
- break;
327
- case IRNativeTag._strToData:
328
- return new IRHoisted(new IRFunc(1, // str
329
- new IRApp(IRNative.bData, new IRApp(IRNative.encodeUtf8, new IRVar(0) // str
330
- ))));
331
- break;
332
- case IRNativeTag._pairDataToData:
333
- return new IRHoisted(new IRFunc(1, // pair
334
- new IRApp(IRNative.listData, _ir_apps(IRNative.mkCons, new IRApp(IRNative.fstPair, new IRVar(0)), _ir_apps(IRNative.mkCons, new IRApp(IRNative.sndPair, new IRVar(0)), new IRApp(IRNative.mkNilData, IRConst.unit))))));
335
- break;
336
- case IRNativeTag._strFromData:
337
- return new IRHoisted(new IRFunc(1, // data
338
- new IRApp(IRNative.decodeUtf8, new IRApp(IRNative.unBData, new IRVar(0) // data
339
- ))));
340
- break;
341
- case IRNativeTag._pairDataFromData:
342
- return new IRHoisted(new IRFunc(1, // data
343
- new IRApp(new IRFunc(1, // unlisted_data
344
- _ir_apps(IRNative.mkPairData, new IRApp(IRNative.headList, new IRVar(0) // unlised_data
345
- ), new IRApp(IRNative.headList, new IRApp(IRNative.tailList, new IRVar(0) // unlised_data
346
- )))), new IRApp(IRNative.unListData, new IRVar(0) // data
347
- ))));
348
- break;
349
- case IRNativeTag._mkMapList:
350
- {
351
- return new IRHoisted(new IRFunc(2, // nilListOfType, mapFn
352
- new IRRecursive(// self
353
- new IRFunc(1, // lst
354
- new IRForced(_ir_apps(IRNative.strictChooseList, new IRVar(0), // lst
355
- // case Nil
356
- new IRDelayed(new IRVar(3)), // delay( nilListOfType )
357
- // case Cons
358
- new IRDelayed(_ir_apps(IRNative.mkCons, _ir_apps(new IRVar(2), // mapFn
359
- _ir_apps(IRNative.headList, new IRVar(0) // lst
360
- )), _ir_apps(new IRSelfCall(1), // self
361
- _ir_apps(IRNative.tailList, new IRVar(0) // lst
362
- ))))))))));
363
- }
364
- break;
365
- case IRNativeTag._equalBoolean:
366
- {
367
- return new IRHoisted(new IRFunc(1, _ir_apps(IRNative.strictIfThenElse, new IRVar(0), // a
368
- hoisted_id.clone(), // a == true -> true
369
- hoisted_not.clone() // a == false -> b ? false : true
370
- )));
371
- }
372
- break;
373
- case IRNativeTag._negateInt:
374
- {
375
- return new IRHoisted(_ir_apps(IRNative.subtractInteger, IRConst.int(0)));
376
- }
377
- break;
378
- case IRNativeTag._bytesToIntBE:
379
- {
380
- return new IRHoisted(_ir_apps(IRNative.byteStringToInteger, IRConst.bool(true) // big endian
381
- ));
382
- }
383
- break;
384
- case IRNativeTag._boolToInt:
385
- {
386
- return new IRHoisted(new IRFunc(1, // bool
387
- _ir_apps(IRNative.strictIfThenElse, new IRVar(0), // bool
388
- IRConst.int(1), // b == true -> 1
389
- IRConst.int(0) // b == false -> 0
390
- )));
391
- }
392
- break;
393
- case IRNativeTag._intToBytesBE:
394
- {
395
- return new IRHoisted(new IRFunc(1, // int
396
- _ir_apps(IRNative.integerToByteString, IRConst.bool(true), // big endian
397
- _ir_apps(// int size
398
- hoisted_sizeofPositiveInt.clone(),
399
- // integerToByteString fails for negative integers
400
- // so we don't bother converting negative to positive here
401
- new IRVar(0) // int
402
- ), new IRVar(0) // int
403
- )));
404
- }
405
- break;
406
- case IRNativeTag._intToBool:
407
- {
408
- return hoisted_isNonNegative.clone();
409
- }
410
- break;
411
- case IRNativeTag._exponentiateInteger:
412
- {
413
- return new IRHoisted(new IRFunc(2, // base, exponent
414
- new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(hoisted_isNonNegative.clone(), new IRVar(0) // exponent
415
- ),
416
- // then, normal exponentiation
417
- new IRDelayed(new IRRecursive(new IRFunc(2, // expInt, x, n
418
- new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(hoisted_isZero.clone(), new IRVar(0) // n
419
- ),
420
- // then (n == 0)
421
- // yes, even `0 ** 0` is 1
422
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Exponentiation#description
423
- new IRDelayed(IRConst.int(1)), // return 1
424
- // else (n > 0)
425
- new IRDelayed(new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(hoisted_isOne.clone(), new IRVar(0) // n
426
- ),
427
- // then (n == 1)
428
- new IRDelayed(new IRVar(1)), // return x
429
- // else (n > 1)
430
- new IRDelayed(new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(hoisted_isZero.clone(), _ir_apps(IRNative.modInteger, new IRVar(0), // exponent
431
- IRConst.int(2))),
432
- // then (exponent % 2 == 0)
433
- new IRDelayed(_ir_let(_ir_apps(new IRSelfCall(2), // expInt
434
- new IRVar(1), // x
435
- _ir_apps(IRNative.divideInteger, new IRVar(0), // exponent
436
- IRConst.int(2))), // half
437
- _ir_apps(IRNative.multiplyInteger, new IRVar(0), // half
438
- new IRVar(0) // half
439
- ))),
440
- // else (exponent % 2 == 1)
441
- new IRDelayed(_ir_apps(// x * expInt( x, n - 1 )
442
- IRNative.multiplyInteger, new IRVar(1), // x
443
- _ir_apps(new IRSelfCall(2), // expInt
444
- new IRVar(1), // x
445
- _ir_apps(hoisted_subOne.clone(), new IRVar(0)))))))))))))))),
446
- // else (exponent < 0) fails
447
- new IRDelayed(new IRError())))));
448
- }
449
- break;
450
- case IRNativeTag._amountOfValue:
451
- {
452
- // ((policy => bool), value, (tokenName => bool)) => amount
453
- return hoisted_amountOfValue.clone();
454
- }
455
- break;
456
- case IRNativeTag._isZero:
457
- {
458
- return hoisted_isZero.clone();
459
- }
460
- break;
461
- case IRNativeTag._sortedValueLovelaces:
462
- {
463
- return new IRHoisted(new IRFunc(1, // value
464
- _ir_apps(IRNative.unIData, _ir_apps(IRNative.sndPair, _ir_apps(IRNative.headList, _ir_apps(IRNative.unMapData, _ir_apps(IRNative.sndPair, _ir_apps(IRNative.headList, new IRVar(0) // value
465
- ))))))));
466
- }
467
- break;
468
- case IRNativeTag._dropList:
469
- {
470
- return hoisted_dropList.clone();
471
- }
472
- break;
473
- default: throw new Error("unknown (negative) native calling 'nativeToIR'; " +
474
- "number: " + native.tag + "; " +
475
- "name: " + IRNativeTag[native.tag]);
476
- }
477
- }
478
- // ((policy => bool), value, (tokenName => bool)) => amount
479
- const hoisted_amountOfValue = new IRHoisted(new IRFunc(1, // 0: isPolicy
480
- new IRRecursive(// 1: isPolicy, 0: policyLoop
481
- new IRFunc(1, // 2: isPolicy, 1: policyLoop, 0: value
482
- new IRForced(_ir_apps(IRNative.strictChooseList, new IRVar(0), // value
483
- // case nil
484
- new IRDelayed(new IRFunc(1, IRConst.int(0)) // isTokenName => 0
485
- ),
486
- // case cons
487
- new IRDelayed(_ir_let(_ir_apps(IRNative.headList, new IRVar(0) // value
488
- ), // 3: isPolicy, 2: policyLoop, 1: value, 0: pairData
489
- new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(// isPolicy( pairData.fst as bytes )
490
- new IRVar(3), // isPolicy
491
- _ir_apps(IRNative.unBData, _ir_apps(IRNative.fstPair, new IRVar(0) // pairData
492
- ))),
493
- // then this is the policy
494
- new IRDelayed(new IRFunc(1, // 4: isPolicy, 3: policyLoop, 2: value, 1: pairData, 0: isTokenName
495
- _ir_apps(new IRRecursive(new IRFunc(1, // 6: isPolicy, 5: policyLoop, 4: value, 3: pairData, 2: isTokenName, 1: tokenNameLoop, 0: tokenMap
496
- new IRForced(_ir_apps(IRNative.strictChooseList, new IRVar(0), // tokenMap
497
- // case nil
498
- new IRDelayed(IRConst.int(0)),
499
- // case cons
500
- new IRDelayed(_ir_let(_ir_apps(IRNative.headList, new IRVar(0) // tokenMap
501
- ), // 7: isPolicy, 6: policyLoop, 5: value, 4: pairData, 3: isTokenName, 2: tokenNameLoop, 1: tokenMap, 0: pairDataToken
502
- new IRForced(_ir_apps(IRNative.strictIfThenElse, _ir_apps(// isTokenName( pairDataToken.fst as bytes )
503
- new IRVar(3), // isTokenName
504
- _ir_apps(IRNative.unBData, _ir_apps(IRNative.fstPair, new IRVar(0) // pairDataToken
505
- )),
506
- // then return amount
507
- new IRDelayed(_ir_apps(IRNative.unIData, _ir_apps(IRNative.sndPair, new IRVar(0) // pairDataToken
508
- ))),
509
- // else check next token entry
510
- new IRDelayed(_ir_apps(new IRSelfCall(2), // tokenNameLoop
511
- _ir_apps(IRNative.tailList, new IRVar(1) // tokenMap
512
- )))))))))))),
513
- // tokenMap
514
- _ir_apps(IRNative.unMapData, _ir_apps(IRNative.sndPair, new IRVar(0) // pairData
515
- ))))),
516
- // else check next
517
- new IRDelayed(_ir_apps(new IRSelfCall(2), // policyLoop
518
- _ir_apps(IRNative.tailList, new IRVar(1) // value
519
- )))))))))))));
520
- hoisted_amountOfValue.hash;
@@ -1,5 +0,0 @@
1
- import { IRTerm } from "../../IRTerm.js";
2
- /**
3
- * makes sure all the childrens in a tree are pointing to the correct parent
4
- */
5
- export declare function sanifyTree(ir: IRTerm): void;
@@ -1,84 +0,0 @@
1
- import { IRApp, IRFunc, IRLetted, IRHoisted, IRDelayed, IRForced, IRConstr, IRCase } from "../../IRNodes/index.js";
2
- import { IRRecursive } from "../../IRNodes/IRRecursive.js";
3
- /**
4
- * makes sure all the childrens in a tree are pointing to the correct parent
5
- */
6
- export function sanifyTree(ir) {
7
- if (ir instanceof IRApp) {
8
- if (ir.fn.parent !== ir)
9
- ir.fn = ir.fn.clone();
10
- else
11
- sanifyTree(ir.fn);
12
- if (ir.arg.parent !== ir)
13
- ir.arg = ir.arg.clone();
14
- else
15
- sanifyTree(ir.arg);
16
- return;
17
- }
18
- else if (ir instanceof IRFunc) {
19
- if (ir.body.parent !== ir)
20
- ir.body = ir.body.clone();
21
- else
22
- sanifyTree(ir.body);
23
- return;
24
- }
25
- else if (ir instanceof IRRecursive) {
26
- if (ir.body.parent !== ir)
27
- ir.body = ir.body.clone();
28
- else
29
- sanifyTree(ir.body);
30
- return;
31
- }
32
- else if (ir instanceof IRLetted) {
33
- if (ir.value.parent !== ir)
34
- ir.value = ir.value.clone();
35
- else
36
- sanifyTree(ir.value);
37
- return;
38
- }
39
- else if (ir instanceof IRHoisted) {
40
- if (ir.hoisted.parent !== ir)
41
- ir.hoisted = ir.hoisted.clone();
42
- else
43
- sanifyTree(ir.hoisted);
44
- return;
45
- }
46
- else if (ir instanceof IRDelayed) {
47
- if (ir.delayed.parent !== ir)
48
- ir.delayed = ir.delayed.clone();
49
- else
50
- sanifyTree(ir.delayed);
51
- return;
52
- }
53
- else if (ir instanceof IRForced) {
54
- if (ir.forced.parent !== ir)
55
- ir.forced = ir.forced.clone();
56
- else
57
- sanifyTree(ir.forced);
58
- return;
59
- }
60
- else if (ir instanceof IRConstr) {
61
- for (let i = 0; i < ir.fields.length; i++) {
62
- const field = ir.fields[i];
63
- if (field.parent !== ir)
64
- ir.fields[i] = field.clone();
65
- else
66
- sanifyTree(ir.fields[i]);
67
- }
68
- return;
69
- }
70
- else if (ir instanceof IRCase) {
71
- if (ir.constrTerm.parent !== ir)
72
- ir.constrTerm = ir.constrTerm.clone();
73
- else
74
- sanifyTree(ir.constrTerm);
75
- for (let i = 0; i < ir.continuations.length; i++) {
76
- const continuation = ir.continuations[i];
77
- if (continuation.parent !== ir)
78
- ir.continuations[i] = continuation.clone();
79
- else
80
- sanifyTree(ir.continuations[i]);
81
- }
82
- return;
83
- }
84
- }
@@ -1,3 +0,0 @@
1
- import { IRApp } from "../IRNodes/IRApp.js";
2
- import { IRTerm } from "../IRTerm.js";
3
- export declare function _ir_apps(...terms: [IRTerm, IRTerm, ...IRTerm[]]): IRApp;
@@ -1,8 +0,0 @@
1
- import { IRApp } from "../IRNodes/IRApp.js";
2
- export function _ir_apps(...terms) {
3
- let term = new IRApp(terms[0], terms[1]);
4
- for (let i = 2; i < terms.length; i++) {
5
- term = new IRApp(term, terms[i]);
6
- }
7
- return term;
8
- }
@@ -1,3 +0,0 @@
1
- import { IRForced } from "../IRNodes/index.js";
2
- import { IRTerm } from "../IRTerm.js";
3
- export declare function _ir_lazyChooseList(listTerm: IRTerm, caseNil: IRTerm, caseCons: IRTerm): IRForced;
@@ -1,5 +0,0 @@
1
- import { IRDelayed, IRForced, IRNative } from "../IRNodes/index.js";
2
- import { _ir_apps } from "./_ir_apps.js";
3
- export function _ir_lazyChooseList(listTerm, caseNil, caseCons) {
4
- return new IRForced(_ir_apps(IRNative.strictChooseList, listTerm, new IRDelayed(caseNil), new IRDelayed(caseCons)));
5
- }
@@ -1,3 +0,0 @@
1
- import { IRForced } from "../IRNodes/index.js";
2
- import { IRTerm } from "../IRTerm.js";
3
- export declare function _ir_lazyIfThenElse(condition: IRTerm, thenBranch: IRTerm, elseBranch: IRTerm): IRForced;
@@ -1,5 +0,0 @@
1
- import { IRDelayed, IRForced, IRNative } from "../IRNodes/index.js";
2
- import { _ir_apps } from "./_ir_apps.js";
3
- export function _ir_lazyIfThenElse(condition, thenBranch, elseBranch) {
4
- return new IRForced(_ir_apps(IRNative.strictIfThenElse, condition, new IRDelayed(thenBranch), new IRDelayed(elseBranch)));
5
- }
@@ -1,3 +0,0 @@
1
- import { IRApp } from "../IRNodes/index.js";
2
- import { IRTerm } from "../IRTerm.js";
3
- export declare function _ir_let(value: IRTerm, body: IRTerm): IRApp;
@@ -1,4 +0,0 @@
1
- import { IRApp, IRFunc } from "../IRNodes/index.js";
2
- export function _ir_let(value, body) {
3
- return new IRApp(new IRFunc(1, body), value);
4
- }
@@ -1,2 +0,0 @@
1
- import { IRTerm } from "../IRTerm.js";
2
- export declare function getChildren(term: IRTerm): IRTerm[];