redscript-mc 3.0.0 → 3.0.2

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 (3382) hide show
  1. package/.github/workflows/ci.yml +1 -0
  2. package/README.md +119 -313
  3. package/README.zh.md +118 -314
  4. package/ROADMAP.md +7 -7
  5. package/dist/cli.js +0 -0
  6. package/dist/data/impl_test/function/counter/get.mcfunction +5 -0
  7. package/dist/data/impl_test/function/counter/inc.mcfunction +7 -0
  8. package/dist/data/impl_test/function/counter/new.mcfunction +4 -0
  9. package/dist/data/impl_test/function/load.mcfunction +1 -0
  10. package/dist/data/impl_test/function/test_impl.mcfunction +10 -0
  11. package/dist/data/minecraft/tags/function/load.json +1 -1
  12. package/dist/data/playground/function/load.mcfunction +1 -0
  13. package/dist/data/playground/function/start.mcfunction +4 -0
  14. package/dist/data/playground/function/start__say_macro_t1.mcfunction +1 -0
  15. package/dist/data/playground/function/stop.mcfunction +5 -0
  16. package/dist/data/playground/function/stop__say_macro_t0.mcfunction +1 -0
  17. package/dist/data/stdlib_queue8_test/function/__queue_append_apply.mcfunction +4 -0
  18. package/dist/data/stdlib_queue8_test/function/__queue_peek_apply.mcfunction +4 -0
  19. package/dist/data/stdlib_queue8_test/function/__queue_size_raw_apply.mcfunction +4 -0
  20. package/dist/data/stdlib_queue8_test/function/load.mcfunction +1 -0
  21. package/dist/data/stdlib_queue8_test/function/queue_clear.mcfunction +6 -0
  22. package/dist/data/stdlib_queue8_test/function/queue_empty__merge_1.mcfunction +5 -0
  23. package/dist/data/stdlib_queue8_test/function/queue_empty__then_0.mcfunction +5 -0
  24. package/dist/data/stdlib_queue8_test/function/queue_peek__merge_1.mcfunction +13 -0
  25. package/dist/data/stdlib_queue8_test/function/queue_peek__then_0.mcfunction +5 -0
  26. package/dist/data/stdlib_queue8_test/function/queue_pop__merge_1.mcfunction +15 -0
  27. package/dist/data/stdlib_queue8_test/function/queue_pop__then_0.mcfunction +5 -0
  28. package/dist/data/stdlib_queue8_test/function/queue_push__const_11.mcfunction +6 -0
  29. package/dist/data/stdlib_queue8_test/function/queue_push__const_22.mcfunction +6 -0
  30. package/dist/data/stdlib_queue8_test/function/queue_size.mcfunction +13 -0
  31. package/dist/data/stdlib_queue8_test/function/test_queue_push_and_size.mcfunction +13 -0
  32. package/dist/data/test/function/say_at.mcfunction +6 -0
  33. package/dist/data/test/function/test.mcfunction +4 -5
  34. package/dist/pack.mcmeta +1 -1
  35. package/dist/package.json +54 -0
  36. package/dist/src/__tests__/checker/checker-coverage-boost.test.d.ts +5 -0
  37. package/dist/src/__tests__/checker/checker-coverage-boost.test.js +980 -0
  38. package/dist/src/__tests__/cli-check-fix.test.js +124 -0
  39. package/dist/src/__tests__/cli-docs.test.js +101 -0
  40. package/dist/src/__tests__/compiler/benchmark-decorator.test.js +102 -0
  41. package/dist/src/__tests__/emit/compile-branches.test.js +12 -3
  42. package/dist/src/__tests__/emit/compile.test.js +4 -1
  43. package/dist/src/__tests__/emit/emit-coverage-boost.test.d.ts +7 -0
  44. package/dist/src/__tests__/emit/emit-coverage-boost.test.js +130 -0
  45. package/dist/src/__tests__/emit/execute-chain.test.js +2 -0
  46. package/dist/src/__tests__/emit/index-coverage.test.js +222 -0
  47. package/dist/src/__tests__/fmt/edge-cases.test.js +111 -0
  48. package/dist/src/__tests__/formatter-extra.test.d.ts +7 -0
  49. package/dist/src/__tests__/formatter-extra.test.js +123 -0
  50. package/dist/src/__tests__/generics.test.js +15 -9
  51. package/dist/src/__tests__/global-vars.test.d.ts +13 -0
  52. package/dist/src/__tests__/global-vars.test.js +156 -0
  53. package/dist/src/__tests__/hir/lower-coverage-boost.test.d.ts +11 -0
  54. package/dist/src/__tests__/hir/lower-coverage-boost.test.js +80 -0
  55. package/dist/src/__tests__/hir/monomorphize-coverage.test.d.ts +5 -0
  56. package/dist/src/__tests__/hir/monomorphize-coverage.test.js +397 -0
  57. package/dist/src/__tests__/impl.test.js +12 -8
  58. package/dist/src/__tests__/lint/hir-coverage.test.d.ts +6 -0
  59. package/dist/src/__tests__/lint/hir-coverage.test.js +1613 -0
  60. package/dist/src/__tests__/lint/new-rules.test.d.ts +9 -0
  61. package/dist/src/__tests__/lint/new-rules.test.js +402 -0
  62. package/dist/src/__tests__/lint/rules-coverage.test.d.ts +5 -0
  63. package/dist/src/__tests__/lint/rules-coverage.test.js +540 -0
  64. package/dist/src/__tests__/lsp/rename.test.js +150 -0
  65. package/dist/src/__tests__/lsp-rename.test.d.ts +8 -0
  66. package/dist/src/__tests__/lsp-rename.test.js +157 -0
  67. package/dist/src/__tests__/mc-integration/say-fstring.test.d.ts +11 -0
  68. package/dist/src/__tests__/mc-integration/say-fstring.test.js +220 -0
  69. package/dist/src/__tests__/mc-integration/stdlib-coverage-2.test.js +1 -1
  70. package/dist/src/__tests__/mc-integration/stdlib-coverage-3.test.js +1 -1
  71. package/dist/src/__tests__/mc-integration/stdlib-coverage-4.test.js +1 -1
  72. package/dist/src/__tests__/mc-integration/stdlib-coverage-5.test.js +1 -1
  73. package/dist/src/__tests__/mc-integration/stdlib-coverage-6.test.js +1 -1
  74. package/dist/src/__tests__/mc-integration/stdlib-coverage-7.test.js +1 -1
  75. package/dist/src/__tests__/mc-integration/stdlib-coverage-8.test.d.ts +9 -0
  76. package/dist/src/__tests__/mc-integration/stdlib-coverage-8.test.js +476 -0
  77. package/dist/src/__tests__/mc-syntax.test.js +4 -1
  78. package/dist/src/__tests__/monomorphize-coverage.test.d.ts +9 -0
  79. package/dist/src/__tests__/monomorphize-coverage.test.js +204 -0
  80. package/dist/src/__tests__/optimizer/nbt-coalesce.test.js +123 -0
  81. package/dist/src/__tests__/optimizer/scoreboard-batch.test.js +116 -0
  82. package/dist/src/__tests__/optimizer/single-call-inline.test.js +183 -0
  83. package/dist/src/__tests__/optimizer/tco-coverage-boost.test.js +65 -0
  84. package/dist/src/__tests__/optimizer/tco-coverage.test.js +172 -0
  85. package/dist/src/__tests__/optimizer/tco-edge-cases.test.js +128 -0
  86. package/dist/src/__tests__/optimizer-cse.test.d.ts +7 -0
  87. package/dist/src/__tests__/optimizer-cse.test.js +226 -0
  88. package/dist/src/__tests__/option.test.js +12 -7
  89. package/dist/src/__tests__/parser/parser-coverage-boost.test.d.ts +43 -0
  90. package/dist/src/__tests__/parser/parser-coverage-boost.test.js +849 -0
  91. package/dist/src/__tests__/parser.test.js +4 -13
  92. package/dist/src/__tests__/repl-server-extra.test.js +6 -7
  93. package/dist/src/__tests__/repl-server.test.js +5 -7
  94. package/dist/src/__tests__/stdlib/queue.test.js +6 -6
  95. package/dist/src/__tests__/tuple.test.js +10 -4
  96. package/dist/src/ast/types.d.ts +1 -1
  97. package/dist/src/check-fix.d.ts +9 -0
  98. package/dist/src/check-fix.js +377 -0
  99. package/dist/src/cli.js +52 -8
  100. package/dist/src/docs.d.ts +32 -0
  101. package/dist/src/docs.js +95 -0
  102. package/dist/src/emit/compile.js +27 -0
  103. package/dist/src/emit/index.d.ts +2 -0
  104. package/dist/src/emit/index.js +32 -0
  105. package/dist/src/formatter/index.js +173 -25
  106. package/dist/src/index.d.ts +1 -1
  107. package/dist/src/index.js +6 -1
  108. package/dist/src/lexer/index.js +2 -1
  109. package/dist/src/lint/index.d.ts +12 -5
  110. package/dist/src/lint/index.js +730 -5
  111. package/dist/src/lir/types.d.ts +2 -0
  112. package/dist/src/lsp/main.js +0 -0
  113. package/dist/src/lsp/rename.d.ts +5 -0
  114. package/dist/src/lsp/rename.js +502 -0
  115. package/dist/src/lsp/server.js +4 -15
  116. package/dist/src/mc-test/client.d.ts +21 -0
  117. package/dist/src/mc-test/client.js +34 -0
  118. package/dist/src/mir/lower.js +108 -6
  119. package/dist/src/mir/types.d.ts +10 -0
  120. package/dist/src/mir/verify.js +2 -0
  121. package/dist/src/optimizer/auto-inline.d.ts +4 -1
  122. package/dist/src/optimizer/auto-inline.js +23 -3
  123. package/dist/src/optimizer/copy_prop.js +2 -0
  124. package/dist/src/optimizer/coroutine.js +3 -0
  125. package/dist/src/optimizer/cse.js +13 -8
  126. package/dist/src/optimizer/dce.js +2 -0
  127. package/dist/src/optimizer/inline.js +10 -2
  128. package/dist/src/optimizer/interprocedural.js +38 -2
  129. package/dist/src/optimizer/licm.js +75 -28
  130. package/dist/src/optimizer/nbt-coalesce.d.ts +24 -0
  131. package/dist/src/optimizer/nbt-coalesce.js +95 -0
  132. package/dist/src/optimizer/pipeline.js +4 -0
  133. package/dist/src/optimizer/scoreboard-batch.d.ts +13 -0
  134. package/dist/src/optimizer/scoreboard-batch.js +54 -0
  135. package/dist/src/optimizer/single-call-inline.d.ts +2 -0
  136. package/dist/src/optimizer/single-call-inline.js +57 -0
  137. package/dist/src/optimizer/unroll.js +2 -0
  138. package/dist/src/parser/decl-parser.d.ts +19 -0
  139. package/dist/src/parser/decl-parser.js +323 -0
  140. package/dist/src/parser/expr-parser.d.ts +46 -0
  141. package/dist/src/parser/expr-parser.js +759 -0
  142. package/dist/src/parser/index.d.ts +8 -129
  143. package/dist/src/parser/index.js +13 -2262
  144. package/dist/src/parser/stmt-parser.d.ts +28 -0
  145. package/dist/src/parser/stmt-parser.js +577 -0
  146. package/dist/src/parser/type-parser.d.ts +20 -0
  147. package/dist/src/parser/type-parser.js +257 -0
  148. package/dist/src/parser/utils.d.ts +34 -0
  149. package/dist/src/parser/utils.js +141 -0
  150. package/dist/src/typechecker/index.js +9 -0
  151. package/docs/dev/README-mc-integration-tests.md +141 -0
  152. package/docs/lint-rules.md +162 -0
  153. package/docs/stdlib/bigint.md +2 -0
  154. package/editors/vscode/README.md +63 -41
  155. package/editors/vscode/out/extension.js +3676 -1892
  156. package/editors/vscode/out/lsp-server.js +7100 -4443
  157. package/editors/vscode/package-lock.json +3 -3
  158. package/editors/vscode/package.json +1 -1
  159. package/examples/loops-demo.mcrs +87 -0
  160. package/package.json +1 -1
  161. package/redscript-docs/docs/en/stdlib/advanced.md +629 -0
  162. package/redscript-docs/docs/en/stdlib/bigint.md +316 -0
  163. package/redscript-docs/docs/en/stdlib/bits.md +292 -0
  164. package/redscript-docs/docs/en/stdlib/bossbar.md +177 -0
  165. package/redscript-docs/docs/en/stdlib/calculus.md +289 -0
  166. package/redscript-docs/docs/en/stdlib/color.md +353 -0
  167. package/redscript-docs/docs/en/stdlib/combat.md +88 -0
  168. package/redscript-docs/docs/en/stdlib/cooldown.md +82 -0
  169. package/redscript-docs/docs/en/stdlib/dialog.md +155 -0
  170. package/redscript-docs/docs/en/stdlib/easing.md +558 -0
  171. package/redscript-docs/docs/en/stdlib/ecs.md +475 -0
  172. package/redscript-docs/docs/en/stdlib/effects.md +324 -0
  173. package/redscript-docs/docs/en/stdlib/events.md +3 -0
  174. package/redscript-docs/docs/en/stdlib/expr.md +45 -0
  175. package/redscript-docs/docs/en/stdlib/fft.md +141 -0
  176. package/redscript-docs/docs/en/stdlib/geometry.md +430 -0
  177. package/redscript-docs/docs/en/stdlib/graph.md +259 -0
  178. package/redscript-docs/docs/en/stdlib/heap.md +185 -0
  179. package/redscript-docs/docs/en/stdlib/interactions.md +179 -0
  180. package/redscript-docs/docs/en/stdlib/inventory.md +97 -0
  181. package/redscript-docs/docs/en/stdlib/linalg.md +557 -0
  182. package/redscript-docs/docs/en/stdlib/list.md +559 -0
  183. package/redscript-docs/docs/en/stdlib/map.md +140 -0
  184. package/redscript-docs/docs/en/stdlib/math.md +193 -0
  185. package/redscript-docs/docs/en/stdlib/math_hp.md +149 -0
  186. package/redscript-docs/docs/en/stdlib/matrix.md +403 -0
  187. package/redscript-docs/docs/en/stdlib/mobs.md +965 -0
  188. package/redscript-docs/docs/en/stdlib/noise.md +244 -0
  189. package/redscript-docs/docs/en/stdlib/ode.md +253 -0
  190. package/redscript-docs/docs/en/stdlib/parabola.md +342 -0
  191. package/redscript-docs/docs/en/stdlib/particles.md +311 -0
  192. package/redscript-docs/docs/en/stdlib/pathfind.md +255 -0
  193. package/redscript-docs/docs/en/stdlib/physics.md +493 -0
  194. package/redscript-docs/docs/en/stdlib/player.md +78 -0
  195. package/redscript-docs/docs/en/stdlib/quaternion.md +673 -0
  196. package/redscript-docs/docs/en/stdlib/queue.md +134 -0
  197. package/redscript-docs/docs/en/stdlib/random.md +223 -0
  198. package/redscript-docs/docs/en/stdlib/result.md +143 -0
  199. package/redscript-docs/docs/en/stdlib/scheduler.md +183 -0
  200. package/redscript-docs/docs/en/stdlib/set_int.md +190 -0
  201. package/redscript-docs/docs/en/stdlib/sets.md +101 -0
  202. package/redscript-docs/docs/en/stdlib/signal.md +400 -0
  203. package/redscript-docs/docs/en/stdlib/sort.md +104 -0
  204. package/redscript-docs/docs/en/stdlib/spawn.md +147 -0
  205. package/redscript-docs/docs/en/stdlib/state.md +142 -0
  206. package/redscript-docs/docs/en/stdlib/strings.md +154 -0
  207. package/redscript-docs/docs/en/stdlib/tags.md +3451 -0
  208. package/redscript-docs/docs/en/stdlib/teams.md +153 -0
  209. package/redscript-docs/docs/en/stdlib/timer.md +246 -0
  210. package/redscript-docs/docs/en/stdlib/vec.md +158 -0
  211. package/redscript-docs/docs/en/stdlib/world.md +298 -0
  212. package/redscript-docs/docs/zh/stdlib/advanced.md +615 -0
  213. package/redscript-docs/docs/zh/stdlib/bigint.md +316 -0
  214. package/redscript-docs/docs/zh/stdlib/bits.md +292 -0
  215. package/redscript-docs/docs/zh/stdlib/bossbar.md +170 -0
  216. package/redscript-docs/docs/zh/stdlib/calculus.md +287 -0
  217. package/redscript-docs/docs/zh/stdlib/color.md +353 -0
  218. package/redscript-docs/docs/zh/stdlib/combat.md +88 -0
  219. package/redscript-docs/docs/zh/stdlib/cooldown.md +84 -0
  220. package/redscript-docs/docs/zh/stdlib/dialog.md +152 -0
  221. package/redscript-docs/docs/zh/stdlib/easing.md +558 -0
  222. package/redscript-docs/docs/zh/stdlib/ecs.md +472 -0
  223. package/redscript-docs/docs/zh/stdlib/effects.md +324 -0
  224. package/redscript-docs/docs/zh/stdlib/events.md +3 -0
  225. package/redscript-docs/docs/zh/stdlib/expr.md +37 -0
  226. package/redscript-docs/docs/zh/stdlib/fft.md +128 -0
  227. package/redscript-docs/docs/zh/stdlib/geometry.md +430 -0
  228. package/redscript-docs/docs/zh/stdlib/graph.md +259 -0
  229. package/redscript-docs/docs/zh/stdlib/heap.md +185 -0
  230. package/redscript-docs/docs/zh/stdlib/interactions.md +160 -0
  231. package/redscript-docs/docs/zh/stdlib/inventory.md +94 -0
  232. package/redscript-docs/docs/zh/stdlib/linalg.md +543 -0
  233. package/redscript-docs/docs/zh/stdlib/list.md +561 -0
  234. package/redscript-docs/docs/zh/stdlib/map.md +132 -0
  235. package/redscript-docs/docs/zh/stdlib/math.md +193 -0
  236. package/redscript-docs/docs/zh/stdlib/math_hp.md +143 -0
  237. package/redscript-docs/docs/zh/stdlib/matrix.md +396 -0
  238. package/redscript-docs/docs/zh/stdlib/mobs.md +965 -0
  239. package/redscript-docs/docs/zh/stdlib/noise.md +244 -0
  240. package/redscript-docs/docs/zh/stdlib/ode.md +243 -0
  241. package/redscript-docs/docs/zh/stdlib/parabola.md +337 -0
  242. package/redscript-docs/docs/zh/stdlib/particles.md +307 -0
  243. package/redscript-docs/docs/zh/stdlib/pathfind.md +255 -0
  244. package/redscript-docs/docs/zh/stdlib/physics.md +493 -0
  245. package/redscript-docs/docs/zh/stdlib/player.md +78 -0
  246. package/redscript-docs/docs/zh/stdlib/quaternion.md +669 -0
  247. package/redscript-docs/docs/zh/stdlib/queue.md +124 -0
  248. package/redscript-docs/docs/zh/stdlib/random.md +222 -0
  249. package/redscript-docs/docs/zh/stdlib/result.md +147 -0
  250. package/redscript-docs/docs/zh/stdlib/scheduler.md +173 -0
  251. package/redscript-docs/docs/zh/stdlib/set_int.md +180 -0
  252. package/redscript-docs/docs/zh/stdlib/sets.md +107 -0
  253. package/redscript-docs/docs/zh/stdlib/signal.md +373 -0
  254. package/redscript-docs/docs/zh/stdlib/sort.md +104 -0
  255. package/redscript-docs/docs/zh/stdlib/spawn.md +142 -0
  256. package/redscript-docs/docs/zh/stdlib/state.md +134 -0
  257. package/redscript-docs/docs/zh/stdlib/strings.md +107 -0
  258. package/redscript-docs/docs/zh/stdlib/tags.md +3451 -0
  259. package/redscript-docs/docs/zh/stdlib/teams.md +150 -0
  260. package/redscript-docs/docs/zh/stdlib/timer.md +254 -0
  261. package/redscript-docs/docs/zh/stdlib/vec.md +158 -0
  262. package/redscript-docs/docs/zh/stdlib/world.md +289 -0
  263. package/src/__tests__/checker/checker-coverage-boost.test.ts +1057 -0
  264. package/src/__tests__/cli-check-fix.test.ts +118 -0
  265. package/src/__tests__/compiler/benchmark-decorator.test.ts +118 -0
  266. package/src/__tests__/emit/emit-coverage-boost.test.ts +139 -0
  267. package/src/__tests__/emit/index-coverage.test.ts +240 -0
  268. package/src/__tests__/fmt/edge-cases.test.ts +135 -0
  269. package/src/__tests__/formatter-extra.test.ts +139 -0
  270. package/src/__tests__/global-vars.test.ts +171 -0
  271. package/src/__tests__/hir/lower-coverage-boost.test.ts +90 -0
  272. package/src/__tests__/lint/new-rules.test.ts +437 -0
  273. package/src/__tests__/lint/rules-coverage.test.ts +2 -2
  274. package/src/__tests__/lsp/rename.test.ts +161 -0
  275. package/src/__tests__/lsp-rename.test.ts +171 -0
  276. package/src/__tests__/mc-integration/say-fstring.test.ts +211 -0
  277. package/src/__tests__/mc-integration/stdlib-coverage-2.test.ts +1 -1
  278. package/src/__tests__/mc-integration/stdlib-coverage-3.test.ts +1 -1
  279. package/src/__tests__/mc-integration/stdlib-coverage-4.test.ts +1 -1
  280. package/src/__tests__/mc-integration/stdlib-coverage-5.test.ts +1 -1
  281. package/src/__tests__/mc-integration/stdlib-coverage-6.test.ts +1 -1
  282. package/src/__tests__/mc-integration/stdlib-coverage-7.test.ts +1 -1
  283. package/src/__tests__/mc-integration/stdlib-coverage-8.test.ts +420 -0
  284. package/src/__tests__/mc-syntax.test.ts +3 -0
  285. package/src/__tests__/monomorphize-coverage.test.ts +220 -0
  286. package/src/__tests__/optimizer/single-call-inline.test.ts +220 -0
  287. package/src/__tests__/optimizer/tco-coverage-boost.test.ts +77 -0
  288. package/src/__tests__/optimizer/tco-coverage.test.ts +135 -249
  289. package/src/__tests__/optimizer/tco-edge-cases.test.ts +151 -0
  290. package/src/__tests__/optimizer-cse.test.ts +250 -0
  291. package/src/__tests__/parser/parser-coverage-boost.test.ts +964 -0
  292. package/src/__tests__/parser.test.ts +4 -13
  293. package/src/__tests__/repl-server-extra.test.ts +6 -6
  294. package/src/__tests__/repl-server.test.ts +5 -6
  295. package/src/__tests__/stdlib/queue.test.ts +6 -6
  296. package/src/ast/types.ts +1 -1
  297. package/src/check-fix.ts +425 -0
  298. package/src/cli.ts +41 -4
  299. package/src/emit/compile.ts +19 -0
  300. package/src/emit/index.ts +38 -0
  301. package/src/formatter/index.ts +196 -23
  302. package/src/index.ts +3 -1
  303. package/src/lexer/index.ts +2 -1
  304. package/src/lint/index.ts +713 -5
  305. package/src/lsp/rename.ts +530 -0
  306. package/src/lsp/server.ts +4 -18
  307. package/src/mc-test/client.ts +40 -0
  308. package/src/mir/lower.ts +111 -2
  309. package/src/optimizer/auto-inline.ts +3 -3
  310. package/src/optimizer/interprocedural.ts +40 -2
  311. package/src/optimizer/single-call-inline.ts +59 -0
  312. package/src/parser/decl-parser.ts +349 -0
  313. package/src/parser/expr-parser.ts +838 -0
  314. package/src/parser/index.ts +17 -2558
  315. package/src/parser/stmt-parser.ts +585 -0
  316. package/src/parser/type-parser.ts +276 -0
  317. package/src/parser/utils.ts +173 -0
  318. package/src/stdlib/queue.mcrs +19 -6
  319. package/src/typechecker/index.ts +11 -0
  320. package/tsconfig.json +2 -1
  321. package/coverage-report.md +0 -177
  322. package/dist/__tests__/cli.test.js +0 -278
  323. package/dist/__tests__/codegen.test.js +0 -152
  324. package/dist/__tests__/compile-all.test.d.ts +0 -10
  325. package/dist/__tests__/compile-all.test.js +0 -108
  326. package/dist/__tests__/dce.test.js +0 -138
  327. package/dist/__tests__/diagnostics.test.d.ts +0 -4
  328. package/dist/__tests__/diagnostics.test.js +0 -149
  329. package/dist/__tests__/e2e.test.d.ts +0 -6
  330. package/dist/__tests__/e2e.test.js +0 -1847
  331. package/dist/__tests__/entity-types.test.js +0 -203
  332. package/dist/__tests__/formatter.test.js +0 -40
  333. package/dist/__tests__/lexer.test.js +0 -343
  334. package/dist/__tests__/lowering.test.js +0 -1015
  335. package/dist/__tests__/macro.test.d.ts +0 -8
  336. package/dist/__tests__/macro.test.js +0 -305
  337. package/dist/__tests__/mc-integration.test.d.ts +0 -12
  338. package/dist/__tests__/mc-integration.test.js +0 -819
  339. package/dist/__tests__/mc-syntax.test.js +0 -124
  340. package/dist/__tests__/nbt.test.js +0 -82
  341. package/dist/__tests__/optimizer-advanced.test.js +0 -124
  342. package/dist/__tests__/optimizer.test.js +0 -149
  343. package/dist/__tests__/parser.test.js +0 -807
  344. package/dist/__tests__/repl.test.d.ts +0 -1
  345. package/dist/__tests__/repl.test.js +0 -27
  346. package/dist/__tests__/runtime.test.d.ts +0 -1
  347. package/dist/__tests__/runtime.test.js +0 -289
  348. package/dist/__tests__/stdlib-advanced.test.d.ts +0 -4
  349. package/dist/__tests__/stdlib-advanced.test.js +0 -378
  350. package/dist/__tests__/stdlib-bigint.test.d.ts +0 -7
  351. package/dist/__tests__/stdlib-bigint.test.js +0 -428
  352. package/dist/__tests__/stdlib-math.test.d.ts +0 -7
  353. package/dist/__tests__/stdlib-math.test.js +0 -352
  354. package/dist/__tests__/stdlib-vec.test.d.ts +0 -4
  355. package/dist/__tests__/stdlib-vec.test.js +0 -264
  356. package/dist/__tests__/structure-optimizer.test.d.ts +0 -1
  357. package/dist/__tests__/structure-optimizer.test.js +0 -33
  358. package/dist/__tests__/typechecker.test.d.ts +0 -1
  359. package/dist/__tests__/typechecker.test.js +0 -552
  360. package/dist/__tests__/var-allocator.test.d.ts +0 -1
  361. package/dist/__tests__/var-allocator.test.js +0 -69
  362. package/dist/ast/types.d.ts +0 -514
  363. package/dist/ast/types.js +0 -9
  364. package/dist/builtins/metadata.d.ts +0 -36
  365. package/dist/builtins/metadata.js +0 -1014
  366. package/dist/cli.d.ts +0 -11
  367. package/dist/codegen/cmdblock/index.d.ts +0 -26
  368. package/dist/codegen/cmdblock/index.js +0 -45
  369. package/dist/codegen/mcfunction/index.d.ts +0 -40
  370. package/dist/codegen/mcfunction/index.js +0 -606
  371. package/dist/codegen/structure/index.d.ts +0 -24
  372. package/dist/codegen/structure/index.js +0 -279
  373. package/dist/codegen/var-allocator.d.ts +0 -45
  374. package/dist/codegen/var-allocator.js +0 -104
  375. package/dist/compile.d.ts +0 -68
  376. package/dist/data/arena/function/__load.mcfunction +0 -6
  377. package/dist/data/arena/function/__tick.mcfunction +0 -2
  378. package/dist/data/arena/function/announce_leaders/else_1.mcfunction +0 -3
  379. package/dist/data/arena/function/announce_leaders/foreach_0/merge_2.mcfunction +0 -1
  380. package/dist/data/arena/function/announce_leaders/foreach_0/then_0.mcfunction +0 -3
  381. package/dist/data/arena/function/announce_leaders/foreach_0.mcfunction +0 -7
  382. package/dist/data/arena/function/announce_leaders/foreach_1/merge_2.mcfunction +0 -1
  383. package/dist/data/arena/function/announce_leaders/foreach_1/then_0.mcfunction +0 -4
  384. package/dist/data/arena/function/announce_leaders/foreach_1.mcfunction +0 -6
  385. package/dist/data/arena/function/announce_leaders/merge_2.mcfunction +0 -1
  386. package/dist/data/arena/function/announce_leaders/then_0.mcfunction +0 -4
  387. package/dist/data/arena/function/announce_leaders.mcfunction +0 -6
  388. package/dist/data/arena/function/arena_tick/merge_2.mcfunction +0 -1
  389. package/dist/data/arena/function/arena_tick/then_0.mcfunction +0 -4
  390. package/dist/data/arena/function/arena_tick.mcfunction +0 -11
  391. package/dist/data/capture_the_flag/function/add_to_team.mcfunction +0 -5
  392. package/dist/data/capture_the_flag/function/angry_at.mcfunction +0 -1
  393. package/dist/data/capture_the_flag/function/assign_teams.mcfunction +0 -1
  394. package/dist/data/capture_the_flag/function/assign_teams__foreach_t1.mcfunction +0 -8
  395. package/dist/data/capture_the_flag/function/assign_teams__foreach_t1__else_2.mcfunction +0 -8
  396. package/dist/data/capture_the_flag/function/assign_teams__foreach_t1__merge_1.mcfunction +0 -3
  397. package/dist/data/capture_the_flag/function/assign_teams__foreach_t1__then_0.mcfunction +0 -8
  398. package/dist/data/capture_the_flag/function/barrier_wall.mcfunction +0 -1
  399. package/dist/data/capture_the_flag/function/buff_all.mcfunction +0 -22
  400. package/dist/data/capture_the_flag/function/check_flag_capture.mcfunction +0 -2
  401. package/dist/data/capture_the_flag/function/check_flag_capture__foreach_t0.mcfunction +0 -8
  402. package/dist/data/capture_the_flag/function/check_flag_capture__foreach_t0__merge_1.mcfunction +0 -1
  403. package/dist/data/capture_the_flag/function/check_flag_capture__foreach_t0__then_0.mcfunction +0 -7
  404. package/dist/data/capture_the_flag/function/check_flag_capture__foreach_t1.mcfunction +0 -8
  405. package/dist/data/capture_the_flag/function/check_flag_capture__foreach_t1__merge_1.mcfunction +0 -1
  406. package/dist/data/capture_the_flag/function/check_flag_capture__foreach_t1__then_0.mcfunction +0 -7
  407. package/dist/data/capture_the_flag/function/check_flag_pickup.mcfunction +0 -2
  408. package/dist/data/capture_the_flag/function/check_flag_pickup__foreach_t0.mcfunction +0 -8
  409. package/dist/data/capture_the_flag/function/check_flag_pickup__foreach_t0__merge_1.mcfunction +0 -1
  410. package/dist/data/capture_the_flag/function/check_flag_pickup__foreach_t0__then_0.mcfunction +0 -7
  411. package/dist/data/capture_the_flag/function/check_flag_pickup__foreach_t1.mcfunction +0 -8
  412. package/dist/data/capture_the_flag/function/check_flag_pickup__foreach_t1__merge_1.mcfunction +0 -1
  413. package/dist/data/capture_the_flag/function/check_flag_pickup__foreach_t1__then_0.mcfunction +0 -7
  414. package/dist/data/capture_the_flag/function/check_win.mcfunction +0 -4
  415. package/dist/data/capture_the_flag/function/cleanup_teams.mcfunction +0 -8
  416. package/dist/data/capture_the_flag/function/clear_area.mcfunction +0 -1
  417. package/dist/data/capture_the_flag/function/clear_effect.mcfunction +0 -1
  418. package/dist/data/capture_the_flag/function/clear_effects.mcfunction +0 -1
  419. package/dist/data/capture_the_flag/function/clear_inventory.mcfunction +0 -1
  420. package/dist/data/capture_the_flag/function/create_blue_team.mcfunction +0 -10
  421. package/dist/data/capture_the_flag/function/create_green_team.mcfunction +0 -10
  422. package/dist/data/capture_the_flag/function/create_red_team.mcfunction +0 -10
  423. package/dist/data/capture_the_flag/function/create_team.mcfunction +0 -8
  424. package/dist/data/capture_the_flag/function/create_yellow_team.mcfunction +0 -10
  425. package/dist/data/capture_the_flag/function/disable_fire_spread.mcfunction +0 -1
  426. package/dist/data/capture_the_flag/function/disable_keep_inventory.mcfunction +0 -1
  427. package/dist/data/capture_the_flag/function/disable_mob_griefing.mcfunction +0 -1
  428. package/dist/data/capture_the_flag/function/distance_to.mcfunction +0 -6
  429. package/dist/data/capture_the_flag/function/distance_to__const_0_0_0_0.mcfunction +0 -5
  430. package/dist/data/capture_the_flag/function/enable_keep_inventory.mcfunction +0 -1
  431. package/dist/data/capture_the_flag/function/end_game.mcfunction +0 -6
  432. package/dist/data/capture_the_flag/function/end_game__else_2.mcfunction +0 -3
  433. package/dist/data/capture_the_flag/function/end_game__foreach_t7.mcfunction +0 -2
  434. package/dist/data/capture_the_flag/function/end_game__merge_1.mcfunction +0 -1
  435. package/dist/data/capture_the_flag/function/end_game__then_0.mcfunction +0 -3
  436. package/dist/data/capture_the_flag/function/end_sparkles_at.mcfunction +0 -1
  437. package/dist/data/capture_the_flag/function/explosion_effect.mcfunction +0 -1
  438. package/dist/data/capture_the_flag/function/flames.mcfunction +0 -1
  439. package/dist/data/capture_the_flag/function/game_tick.mcfunction +0 -1
  440. package/dist/data/capture_the_flag/function/give_kit_archer.mcfunction +0 -6
  441. package/dist/data/capture_the_flag/function/give_kit_mage.mcfunction +0 -5
  442. package/dist/data/capture_the_flag/function/give_kit_warrior.mcfunction +0 -6
  443. package/dist/data/capture_the_flag/function/glass_box.mcfunction +0 -2
  444. package/dist/data/capture_the_flag/function/glow.mcfunction +0 -1
  445. package/dist/data/capture_the_flag/function/happy_at.mcfunction +0 -1
  446. package/dist/data/capture_the_flag/function/hearts_at.mcfunction +0 -1
  447. package/dist/data/capture_the_flag/function/init.mcfunction +0 -11
  448. package/dist/data/capture_the_flag/function/invisible.mcfunction +0 -1
  449. package/dist/data/capture_the_flag/function/jump.mcfunction +0 -1
  450. package/dist/data/capture_the_flag/function/load.mcfunction +0 -1
  451. package/dist/data/capture_the_flag/function/night_vision.mcfunction +0 -1
  452. package/dist/data/capture_the_flag/function/place_flags.mcfunction +0 -2
  453. package/dist/data/capture_the_flag/function/portal_effect.mcfunction +0 -1
  454. package/dist/data/capture_the_flag/function/regen.mcfunction +0 -1
  455. package/dist/data/capture_the_flag/function/remove_from_teams.mcfunction +0 -3
  456. package/dist/data/capture_the_flag/function/remove_item.mcfunction +0 -1
  457. package/dist/data/capture_the_flag/function/resistance.mcfunction +0 -1
  458. package/dist/data/capture_the_flag/function/set_day.mcfunction +0 -1
  459. package/dist/data/capture_the_flag/function/set_easy.mcfunction +0 -1
  460. package/dist/data/capture_the_flag/function/set_hard.mcfunction +0 -1
  461. package/dist/data/capture_the_flag/function/set_midnight.mcfunction +0 -1
  462. package/dist/data/capture_the_flag/function/set_night.mcfunction +0 -1
  463. package/dist/data/capture_the_flag/function/set_noon.mcfunction +0 -1
  464. package/dist/data/capture_the_flag/function/set_normal.mcfunction +0 -1
  465. package/dist/data/capture_the_flag/function/set_peaceful.mcfunction +0 -1
  466. package/dist/data/capture_the_flag/function/setup_four_teams.mcfunction +0 -4
  467. package/dist/data/capture_the_flag/function/setup_two_teams.mcfunction +0 -2
  468. package/dist/data/capture_the_flag/function/slow_fall.mcfunction +0 -1
  469. package/dist/data/capture_the_flag/function/smoke.mcfunction +0 -1
  470. package/dist/data/capture_the_flag/function/sparkles_at.mcfunction +0 -1
  471. package/dist/data/capture_the_flag/function/speed.mcfunction +0 -1
  472. package/dist/data/capture_the_flag/function/start_game.mcfunction +0 -15
  473. package/dist/data/capture_the_flag/function/start_game__foreach_t10.mcfunction +0 -4
  474. package/dist/data/capture_the_flag/function/strength.mcfunction +0 -1
  475. package/dist/data/capture_the_flag/function/totem_at.mcfunction +0 -1
  476. package/dist/data/capture_the_flag/function/weather_clear.mcfunction +0 -1
  477. package/dist/data/capture_the_flag/function/weather_rain.mcfunction +0 -1
  478. package/dist/data/capture_the_flag/function/weather_thunder.mcfunction +0 -1
  479. package/dist/data/counter/function/__load.mcfunction +0 -5
  480. package/dist/data/counter/function/__tick.mcfunction +0 -2
  481. package/dist/data/counter/function/counter_tick/merge_2.mcfunction +0 -1
  482. package/dist/data/counter/function/counter_tick/then_0.mcfunction +0 -3
  483. package/dist/data/counter/function/counter_tick.mcfunction +0 -11
  484. package/dist/data/gcd2/function/__load.mcfunction +0 -3
  485. package/dist/data/gcd2/function/abs/merge_2.mcfunction +0 -3
  486. package/dist/data/gcd2/function/abs/then_0.mcfunction +0 -5
  487. package/dist/data/gcd2/function/abs.mcfunction +0 -7
  488. package/dist/data/gcd2/function/gcd/loop_body_1.mcfunction +0 -7
  489. package/dist/data/gcd2/function/gcd/loop_check_0.mcfunction +0 -5
  490. package/dist/data/gcd2/function/gcd/loop_exit_2.mcfunction +0 -3
  491. package/dist/data/gcd2/function/gcd.mcfunction +0 -14
  492. package/dist/data/gcd3/function/__load.mcfunction +0 -3
  493. package/dist/data/gcd3/function/abs/merge_2.mcfunction +0 -3
  494. package/dist/data/gcd3/function/abs/then_0.mcfunction +0 -5
  495. package/dist/data/gcd3/function/abs.mcfunction +0 -7
  496. package/dist/data/gcd3/function/gcd/loop_body_1.mcfunction +0 -7
  497. package/dist/data/gcd3/function/gcd/loop_check_0.mcfunction +0 -5
  498. package/dist/data/gcd3/function/gcd/loop_exit_2.mcfunction +0 -3
  499. package/dist/data/gcd3/function/gcd.mcfunction +0 -14
  500. package/dist/data/gcd3/function/test.mcfunction +0 -7
  501. package/dist/data/gcd3nm/function/__load.mcfunction +0 -3
  502. package/dist/data/gcd3nm/function/abs/merge_2.mcfunction +0 -3
  503. package/dist/data/gcd3nm/function/abs/then_0.mcfunction +0 -5
  504. package/dist/data/gcd3nm/function/abs.mcfunction +0 -7
  505. package/dist/data/gcd3nm/function/gcd/loop_body_1.mcfunction +0 -7
  506. package/dist/data/gcd3nm/function/gcd/loop_check_0.mcfunction +0 -5
  507. package/dist/data/gcd3nm/function/gcd/loop_exit_2.mcfunction +0 -3
  508. package/dist/data/gcd3nm/function/gcd.mcfunction +0 -14
  509. package/dist/data/gcd3nm/function/test.mcfunction +0 -7
  510. package/dist/data/gcd_test/function/__load.mcfunction +0 -3
  511. package/dist/data/gcd_test/function/abs/merge_2.mcfunction +0 -3
  512. package/dist/data/gcd_test/function/abs/then_0.mcfunction +0 -5
  513. package/dist/data/gcd_test/function/abs.mcfunction +0 -7
  514. package/dist/data/gcd_test/function/gcd/loop_body_1.mcfunction +0 -7
  515. package/dist/data/gcd_test/function/gcd/loop_check_0.mcfunction +0 -5
  516. package/dist/data/gcd_test/function/gcd/loop_exit_2.mcfunction +0 -3
  517. package/dist/data/gcd_test/function/gcd.mcfunction +0 -14
  518. package/dist/data/hunger_games/function/angry_at.mcfunction +0 -1
  519. package/dist/data/hunger_games/function/barrier_wall.mcfunction +0 -1
  520. package/dist/data/hunger_games/function/buff_all.mcfunction +0 -22
  521. package/dist/data/hunger_games/function/check_alive.mcfunction +0 -3
  522. package/dist/data/hunger_games/function/check_alive__foreach_t3.mcfunction +0 -10
  523. package/dist/data/hunger_games/function/check_alive__foreach_t3__merge_1.mcfunction +0 -1
  524. package/dist/data/hunger_games/function/check_alive__foreach_t3__then_0.mcfunction +0 -5
  525. package/dist/data/hunger_games/function/check_border_damage.mcfunction +0 -1
  526. package/dist/data/hunger_games/function/check_border_damage__foreach_t0.mcfunction +0 -1
  527. package/dist/data/hunger_games/function/clear_area.mcfunction +0 -1
  528. package/dist/data/hunger_games/function/clear_effect.mcfunction +0 -1
  529. package/dist/data/hunger_games/function/clear_effects.mcfunction +0 -1
  530. package/dist/data/hunger_games/function/countdown_tick.mcfunction +0 -1
  531. package/dist/data/hunger_games/function/create_health_bar.mcfunction +0 -24
  532. package/dist/data/hunger_games/function/create_progress_bar.mcfunction +0 -24
  533. package/dist/data/hunger_games/function/create_progress_bar__const_0_0_0.mcfunction +0 -21
  534. package/dist/data/hunger_games/function/create_timer_bar.mcfunction +0 -30
  535. package/dist/data/hunger_games/function/declare_winner.mcfunction +0 -13
  536. package/dist/data/hunger_games/function/disable_fire_spread.mcfunction +0 -1
  537. package/dist/data/hunger_games/function/disable_keep_inventory.mcfunction +0 -1
  538. package/dist/data/hunger_games/function/disable_mob_griefing.mcfunction +0 -1
  539. package/dist/data/hunger_games/function/enable_keep_inventory.mcfunction +0 -1
  540. package/dist/data/hunger_games/function/end_game_no_winner.mcfunction +0 -3
  541. package/dist/data/hunger_games/function/end_sparkles_at.mcfunction +0 -1
  542. package/dist/data/hunger_games/function/explosion_effect.mcfunction +0 -1
  543. package/dist/data/hunger_games/function/flames.mcfunction +0 -1
  544. package/dist/data/hunger_games/function/game_tick.mcfunction +0 -1
  545. package/dist/data/hunger_games/function/glass_box.mcfunction +0 -2
  546. package/dist/data/hunger_games/function/glow.mcfunction +0 -1
  547. package/dist/data/hunger_games/function/happy_at.mcfunction +0 -1
  548. package/dist/data/hunger_games/function/hearts_at.mcfunction +0 -1
  549. package/dist/data/hunger_games/function/hide_bar.mcfunction +0 -4
  550. package/dist/data/hunger_games/function/init.mcfunction +0 -7
  551. package/dist/data/hunger_games/function/invisible.mcfunction +0 -1
  552. package/dist/data/hunger_games/function/jump.mcfunction +0 -1
  553. package/dist/data/hunger_games/function/load.mcfunction +0 -1
  554. package/dist/data/hunger_games/function/main_game_tick.mcfunction +0 -4
  555. package/dist/data/hunger_games/function/night_vision.mcfunction +0 -1
  556. package/dist/data/hunger_games/function/on_player_death.mcfunction +0 -14
  557. package/dist/data/hunger_games/function/portal_effect.mcfunction +0 -1
  558. package/dist/data/hunger_games/function/regen.mcfunction +0 -1
  559. package/dist/data/hunger_games/function/remove_bar.mcfunction +0 -3
  560. package/dist/data/hunger_games/function/remove_bar__const_0.mcfunction +0 -2
  561. package/dist/data/hunger_games/function/reset_game.mcfunction +0 -3
  562. package/dist/data/hunger_games/function/reset_game__foreach_t0.mcfunction +0 -9
  563. package/dist/data/hunger_games/function/resistance.mcfunction +0 -1
  564. package/dist/data/hunger_games/function/set_day.mcfunction +0 -1
  565. package/dist/data/hunger_games/function/set_easy.mcfunction +0 -1
  566. package/dist/data/hunger_games/function/set_hard.mcfunction +0 -1
  567. package/dist/data/hunger_games/function/set_midnight.mcfunction +0 -1
  568. package/dist/data/hunger_games/function/set_night.mcfunction +0 -1
  569. package/dist/data/hunger_games/function/set_noon.mcfunction +0 -1
  570. package/dist/data/hunger_games/function/set_normal.mcfunction +0 -1
  571. package/dist/data/hunger_games/function/set_peaceful.mcfunction +0 -1
  572. package/dist/data/hunger_games/function/show_bar.mcfunction +0 -4
  573. package/dist/data/hunger_games/function/shrink_border.mcfunction +0 -1
  574. package/dist/data/hunger_games/function/slow_fall.mcfunction +0 -1
  575. package/dist/data/hunger_games/function/smoke.mcfunction +0 -1
  576. package/dist/data/hunger_games/function/sparkles_at.mcfunction +0 -1
  577. package/dist/data/hunger_games/function/speed.mcfunction +0 -1
  578. package/dist/data/hunger_games/function/start_countdown.mcfunction +0 -3
  579. package/dist/data/hunger_games/function/start_countdown__foreach_t0.mcfunction +0 -16
  580. package/dist/data/hunger_games/function/start_game.mcfunction +0 -4
  581. package/dist/data/hunger_games/function/start_game__foreach_t3.mcfunction +0 -4
  582. package/dist/data/hunger_games/function/strength.mcfunction +0 -1
  583. package/dist/data/hunger_games/function/totem_at.mcfunction +0 -1
  584. package/dist/data/hunger_games/function/update_bar.mcfunction +0 -5
  585. package/dist/data/hunger_games/function/update_bar__const_0_0.mcfunction +0 -3
  586. package/dist/data/hunger_games/function/update_bar_color.mcfunction +0 -7
  587. package/dist/data/hunger_games/function/update_bar_color__else_2.mcfunction +0 -5
  588. package/dist/data/hunger_games/function/update_bar_color__else_5.mcfunction +0 -4
  589. package/dist/data/hunger_games/function/update_bar_color__merge_1.mcfunction +0 -1
  590. package/dist/data/hunger_games/function/update_bar_color__merge_4.mcfunction +0 -1
  591. package/dist/data/hunger_games/function/update_bar_color__then_0.mcfunction +0 -4
  592. package/dist/data/hunger_games/function/update_bar_color__then_3.mcfunction +0 -4
  593. package/dist/data/hunger_games/function/weather_clear.mcfunction +0 -1
  594. package/dist/data/hunger_games/function/weather_rain.mcfunction +0 -1
  595. package/dist/data/hunger_games/function/weather_thunder.mcfunction +0 -1
  596. package/dist/data/isqrttest/function/__load.mcfunction +0 -6
  597. package/dist/data/isqrttest/function/isqrt/loop_body_4.mcfunction +0 -12
  598. package/dist/data/isqrttest/function/isqrt/loop_check_3.mcfunction +0 -5
  599. package/dist/data/isqrttest/function/isqrt/loop_exit_5.mcfunction +0 -3
  600. package/dist/data/isqrttest/function/isqrt/merge_2.mcfunction +0 -4
  601. package/dist/data/isqrttest/function/isqrt/merge_8.mcfunction +0 -6
  602. package/dist/data/isqrttest/function/isqrt/then_0.mcfunction +0 -3
  603. package/dist/data/isqrttest/function/isqrt/then_6.mcfunction +0 -3
  604. package/dist/data/isqrttest/function/isqrt.mcfunction +0 -7
  605. package/dist/data/isqrttest/function/test.mcfunction +0 -6
  606. package/dist/data/linalg/function/_vec2d_len_sq_fx.mcfunction +0 -17
  607. package/dist/data/linalg/function/_vec3d_len_sq_fx.mcfunction +0 -27
  608. package/dist/data/linalg/function/load.mcfunction +0 -1
  609. package/dist/data/linalg/function/mat2d_det.mcfunction +0 -16
  610. package/dist/data/linalg/function/mat2d_mul_r0c0.mcfunction +0 -16
  611. package/dist/data/linalg/function/mat2d_mul_r0c1.mcfunction +0 -16
  612. package/dist/data/linalg/function/mat2d_mul_r1c0.mcfunction +0 -16
  613. package/dist/data/linalg/function/mat2d_mul_r1c1.mcfunction +0 -16
  614. package/dist/data/linalg/function/mat2d_vecmul_x.mcfunction +0 -16
  615. package/dist/data/linalg/function/mat2d_vecmul_y.mcfunction +0 -16
  616. package/dist/data/linalg/function/solve2d_x.mcfunction +0 -27
  617. package/dist/data/linalg/function/solve2d_y.mcfunction +0 -27
  618. package/dist/data/linalg/function/vec2d_dist.mcfunction +0 -15
  619. package/dist/data/linalg/function/vec2d_dot.mcfunction +0 -16
  620. package/dist/data/linalg/function/vec2d_length.mcfunction +0 -21
  621. package/dist/data/linalg/function/vec2d_normalize_x.mcfunction +0 -8
  622. package/dist/data/linalg/function/vec2d_normalize_x__merge_1.mcfunction +0 -10
  623. package/dist/data/linalg/function/vec2d_normalize_x__then_0.mcfunction +0 -3
  624. package/dist/data/linalg/function/vec2d_normalize_y.mcfunction +0 -8
  625. package/dist/data/linalg/function/vec2d_normalize_y__merge_1.mcfunction +0 -10
  626. package/dist/data/linalg/function/vec2d_normalize_y__then_0.mcfunction +0 -3
  627. package/dist/data/linalg/function/vec3d_cross_x.mcfunction +0 -16
  628. package/dist/data/linalg/function/vec3d_cross_y.mcfunction +0 -16
  629. package/dist/data/linalg/function/vec3d_cross_z.mcfunction +0 -16
  630. package/dist/data/linalg/function/vec3d_dist.mcfunction +0 -21
  631. package/dist/data/linalg/function/vec3d_dot.mcfunction +0 -26
  632. package/dist/data/linalg/function/vec3d_length.mcfunction +0 -31
  633. package/dist/data/linalg/function/vec3d_normalize_x.mcfunction +0 -9
  634. package/dist/data/linalg/function/vec3d_normalize_x__merge_1.mcfunction +0 -11
  635. package/dist/data/linalg/function/vec3d_normalize_x__then_0.mcfunction +0 -3
  636. package/dist/data/linalg/function/vec3d_normalize_y.mcfunction +0 -9
  637. package/dist/data/linalg/function/vec3d_normalize_y__merge_1.mcfunction +0 -11
  638. package/dist/data/linalg/function/vec3d_normalize_y__then_0.mcfunction +0 -3
  639. package/dist/data/linalg/function/vec3d_normalize_z.mcfunction +0 -9
  640. package/dist/data/linalg/function/vec3d_normalize_z__merge_1.mcfunction +0 -11
  641. package/dist/data/linalg/function/vec3d_normalize_z__then_0.mcfunction +0 -3
  642. package/dist/data/macrotest/function/get_element.mcfunction +0 -2
  643. package/dist/data/macrotest/function/load.mcfunction +0 -1
  644. package/dist/data/macrotest/function/test_dynamic_index.mcfunction +0 -2
  645. package/dist/data/math_hp/function/cos_hp.mcfunction +0 -8
  646. package/dist/data/math_hp/function/div3_hp.mcfunction +0 -23
  647. package/dist/data/math_hp/function/div_hp.mcfunction +0 -13
  648. package/dist/data/math_hp/function/init_div.mcfunction +0 -1
  649. package/dist/data/math_hp/function/init_trig.mcfunction +0 -1
  650. package/dist/data/math_hp/function/ln_5term.mcfunction +0 -6
  651. package/dist/data/math_hp/function/ln_5term__loop_body_1.mcfunction +0 -8
  652. package/dist/data/math_hp/function/ln_5term__loop_body_4.mcfunction +0 -8
  653. package/dist/data/math_hp/function/ln_5term__loop_exit_2.mcfunction +0 -1
  654. package/dist/data/math_hp/function/ln_5term__loop_exit_5.mcfunction +0 -61
  655. package/dist/data/math_hp/function/ln_5term__loop_header_0.mcfunction +0 -3
  656. package/dist/data/math_hp/function/ln_5term__loop_header_3.mcfunction +0 -6
  657. package/dist/data/math_hp/function/load.mcfunction +0 -1
  658. package/dist/data/math_hp/function/norm3_hp.mcfunction +0 -43
  659. package/dist/data/math_hp/function/sin_hp.mcfunction +0 -8
  660. package/dist/data/math_hp/function/sqrt_hp.mcfunction +0 -17
  661. package/dist/data/math_hp/function/sqrt_hp__merge_1.mcfunction +0 -21
  662. package/dist/data/math_hp/function/sqrt_hp__then_0.mcfunction +0 -2
  663. package/dist/data/mathdemo/function/__load.mcfunction +0 -2
  664. package/dist/data/mathdemo/function/_atan_init.mcfunction +0 -4
  665. package/dist/data/mathdemo/function/_math_init.mcfunction +0 -4
  666. package/dist/data/mathdemo/function/add2d_x.mcfunction +0 -5
  667. package/dist/data/mathdemo/function/add2d_y.mcfunction +0 -5
  668. package/dist/data/mathdemo/function/add3d_x.mcfunction +0 -5
  669. package/dist/data/mathdemo/function/add3d_y.mcfunction +0 -5
  670. package/dist/data/mathdemo/function/add3d_z.mcfunction +0 -5
  671. package/dist/data/mathdemo/function/air_drag_fx.mcfunction +0 -2
  672. package/dist/data/mathdemo/function/apply_drag.mcfunction +0 -8
  673. package/dist/data/mathdemo/function/apply_gravity.mcfunction +0 -6
  674. package/dist/data/mathdemo/function/approx_eq.mcfunction +0 -10
  675. package/dist/data/mathdemo/function/approx_eq__merge_1.mcfunction +0 -3
  676. package/dist/data/mathdemo/function/approx_eq__merge_3.mcfunction +0 -2
  677. package/dist/data/mathdemo/function/approx_eq__then_0.mcfunction +0 -4
  678. package/dist/data/mathdemo/function/approx_eq__then_2.mcfunction +0 -2
  679. package/dist/data/mathdemo/function/atan2_fixed.mcfunction +0 -6
  680. package/dist/data/mathdemo/function/atan2_fixed__else_30.mcfunction +0 -2
  681. package/dist/data/mathdemo/function/atan2_fixed__loop_body_26.mcfunction +0 -21
  682. package/dist/data/mathdemo/function/atan2_fixed__loop_exit_27.mcfunction +0 -5
  683. package/dist/data/mathdemo/function/atan2_fixed__loop_header_25.mcfunction +0 -3
  684. package/dist/data/mathdemo/function/atan2_fixed__merge_1.mcfunction +0 -4
  685. package/dist/data/mathdemo/function/atan2_fixed__merge_10.mcfunction +0 -5
  686. package/dist/data/mathdemo/function/atan2_fixed__merge_12.mcfunction +0 -2
  687. package/dist/data/mathdemo/function/atan2_fixed__merge_16.mcfunction +0 -5
  688. package/dist/data/mathdemo/function/atan2_fixed__merge_18.mcfunction +0 -4
  689. package/dist/data/mathdemo/function/atan2_fixed__merge_20.mcfunction +0 -4
  690. package/dist/data/mathdemo/function/atan2_fixed__merge_22.mcfunction +0 -4
  691. package/dist/data/mathdemo/function/atan2_fixed__merge_24.mcfunction +0 -3
  692. package/dist/data/mathdemo/function/atan2_fixed__merge_29.mcfunction +0 -1
  693. package/dist/data/mathdemo/function/atan2_fixed__merge_3.mcfunction +0 -4
  694. package/dist/data/mathdemo/function/atan2_fixed__merge_32.mcfunction +0 -4
  695. package/dist/data/mathdemo/function/atan2_fixed__merge_34.mcfunction +0 -4
  696. package/dist/data/mathdemo/function/atan2_fixed__merge_36.mcfunction +0 -3
  697. package/dist/data/mathdemo/function/atan2_fixed__merge_40.mcfunction +0 -3
  698. package/dist/data/mathdemo/function/atan2_fixed__merge_6.mcfunction +0 -2
  699. package/dist/data/mathdemo/function/atan2_fixed__then_0.mcfunction +0 -4
  700. package/dist/data/mathdemo/function/atan2_fixed__then_11.mcfunction +0 -2
  701. package/dist/data/mathdemo/function/atan2_fixed__then_15.mcfunction +0 -4
  702. package/dist/data/mathdemo/function/atan2_fixed__then_17.mcfunction +0 -4
  703. package/dist/data/mathdemo/function/atan2_fixed__then_19.mcfunction +0 -2
  704. package/dist/data/mathdemo/function/atan2_fixed__then_2.mcfunction +0 -2
  705. package/dist/data/mathdemo/function/atan2_fixed__then_21.mcfunction +0 -2
  706. package/dist/data/mathdemo/function/atan2_fixed__then_23.mcfunction +0 -5
  707. package/dist/data/mathdemo/function/atan2_fixed__then_28.mcfunction +0 -4
  708. package/dist/data/mathdemo/function/atan2_fixed__then_31.mcfunction +0 -4
  709. package/dist/data/mathdemo/function/atan2_fixed__then_33.mcfunction +0 -4
  710. package/dist/data/mathdemo/function/atan2_fixed__then_35.mcfunction +0 -1
  711. package/dist/data/mathdemo/function/atan2_fixed__then_39.mcfunction +0 -3
  712. package/dist/data/mathdemo/function/atan2_fixed__then_5.mcfunction +0 -2
  713. package/dist/data/mathdemo/function/atan2_fixed__then_9.mcfunction +0 -4
  714. package/dist/data/mathdemo/function/bounce_v.mcfunction +0 -10
  715. package/dist/data/mathdemo/function/cbrt_fx.mcfunction +0 -5
  716. package/dist/data/mathdemo/function/cbrt_fx__loop_body_6.mcfunction +0 -7
  717. package/dist/data/mathdemo/function/cbrt_fx__loop_exit_7.mcfunction +0 -1
  718. package/dist/data/mathdemo/function/cbrt_fx__loop_header_5.mcfunction +0 -4
  719. package/dist/data/mathdemo/function/cbrt_fx__merge_1.mcfunction +0 -8
  720. package/dist/data/mathdemo/function/cbrt_fx__merge_11.mcfunction +0 -5
  721. package/dist/data/mathdemo/function/cbrt_fx__merge_13.mcfunction +0 -4
  722. package/dist/data/mathdemo/function/cbrt_fx__merge_4.mcfunction +0 -2
  723. package/dist/data/mathdemo/function/cbrt_fx__merge_9.mcfunction +0 -13
  724. package/dist/data/mathdemo/function/cbrt_fx__then_0.mcfunction +0 -2
  725. package/dist/data/mathdemo/function/cbrt_fx__then_10.mcfunction +0 -2
  726. package/dist/data/mathdemo/function/cbrt_fx__then_12.mcfunction +0 -2
  727. package/dist/data/mathdemo/function/cbrt_fx__then_3.mcfunction +0 -2
  728. package/dist/data/mathdemo/function/cbrt_fx__then_8.mcfunction +0 -2
  729. package/dist/data/mathdemo/function/ceil_div.mcfunction +0 -9
  730. package/dist/data/mathdemo/function/chebyshev.mcfunction +0 -14
  731. package/dist/data/mathdemo/function/chebyshev3d.mcfunction +0 -19
  732. package/dist/data/mathdemo/function/chebyshev3d__merge_1.mcfunction +0 -4
  733. package/dist/data/mathdemo/function/chebyshev3d__merge_3.mcfunction +0 -4
  734. package/dist/data/mathdemo/function/chebyshev3d__merge_5.mcfunction +0 -4
  735. package/dist/data/mathdemo/function/chebyshev3d__merge_7.mcfunction +0 -3
  736. package/dist/data/mathdemo/function/chebyshev3d__merge_9.mcfunction +0 -1
  737. package/dist/data/mathdemo/function/chebyshev3d__then_0.mcfunction +0 -4
  738. package/dist/data/mathdemo/function/chebyshev3d__then_2.mcfunction +0 -4
  739. package/dist/data/mathdemo/function/chebyshev3d__then_4.mcfunction +0 -4
  740. package/dist/data/mathdemo/function/chebyshev3d__then_6.mcfunction +0 -2
  741. package/dist/data/mathdemo/function/chebyshev3d__then_8.mcfunction +0 -2
  742. package/dist/data/mathdemo/function/chebyshev__merge_1.mcfunction +0 -4
  743. package/dist/data/mathdemo/function/chebyshev__merge_3.mcfunction +0 -3
  744. package/dist/data/mathdemo/function/chebyshev__merge_5.mcfunction +0 -1
  745. package/dist/data/mathdemo/function/chebyshev__then_0.mcfunction +0 -4
  746. package/dist/data/mathdemo/function/chebyshev__then_2.mcfunction +0 -4
  747. package/dist/data/mathdemo/function/chebyshev__then_4.mcfunction +0 -1
  748. package/dist/data/mathdemo/function/circular_x.mcfunction +0 -14
  749. package/dist/data/mathdemo/function/circular_z.mcfunction +0 -14
  750. package/dist/data/mathdemo/function/clamp_velocity.mcfunction +0 -5
  751. package/dist/data/mathdemo/function/clamp_velocity__merge_1.mcfunction +0 -5
  752. package/dist/data/mathdemo/function/clamp_velocity__merge_4.mcfunction +0 -1
  753. package/dist/data/mathdemo/function/clamp_velocity__then_0.mcfunction +0 -1
  754. package/dist/data/mathdemo/function/clamp_velocity__then_3.mcfunction +0 -3
  755. package/dist/data/mathdemo/function/combinations.mcfunction +0 -6
  756. package/dist/data/mathdemo/function/combinations__loop_body_9.mcfunction +0 -15
  757. package/dist/data/mathdemo/function/combinations__loop_exit_10.mcfunction +0 -1
  758. package/dist/data/mathdemo/function/combinations__loop_header_8.mcfunction +0 -3
  759. package/dist/data/mathdemo/function/combinations__merge_1.mcfunction +0 -3
  760. package/dist/data/mathdemo/function/combinations__merge_4.mcfunction +0 -6
  761. package/dist/data/mathdemo/function/combinations__merge_7.mcfunction +0 -3
  762. package/dist/data/mathdemo/function/combinations__then_0.mcfunction +0 -2
  763. package/dist/data/mathdemo/function/combinations__then_3.mcfunction +0 -2
  764. package/dist/data/mathdemo/function/combinations__then_6.mcfunction +0 -4
  765. package/dist/data/mathdemo/function/cos_fixed.mcfunction +0 -7
  766. package/dist/data/mathdemo/function/cross2d.mcfunction +0 -11
  767. package/dist/data/mathdemo/function/cross3d_x.mcfunction +0 -11
  768. package/dist/data/mathdemo/function/cross3d_y.mcfunction +0 -11
  769. package/dist/data/mathdemo/function/cross3d_z.mcfunction +0 -11
  770. package/dist/data/mathdemo/function/demo_easing.mcfunction +0 -12
  771. package/dist/data/mathdemo/function/demo_math.mcfunction +0 -16
  772. package/dist/data/mathdemo/function/demo_noise.mcfunction +0 -14
  773. package/dist/data/mathdemo/function/demo_physics.mcfunction +0 -11
  774. package/dist/data/mathdemo/function/demo_physics__loop_body_1.mcfunction +0 -9
  775. package/dist/data/mathdemo/function/demo_physics__loop_body_4.mcfunction +0 -18
  776. package/dist/data/mathdemo/function/demo_physics__loop_exit_2.mcfunction +0 -6
  777. package/dist/data/mathdemo/function/demo_physics__loop_exit_5.mcfunction +0 -1
  778. package/dist/data/mathdemo/function/demo_physics__loop_header_0.mcfunction +0 -4
  779. package/dist/data/mathdemo/function/demo_physics__loop_header_3.mcfunction +0 -4
  780. package/dist/data/mathdemo/function/distance2d_fixed.mcfunction +0 -13
  781. package/dist/data/mathdemo/function/distance3d_fixed.mcfunction +0 -18
  782. package/dist/data/mathdemo/function/divfix.mcfunction +0 -6
  783. package/dist/data/mathdemo/function/divfix__merge_1.mcfunction +0 -6
  784. package/dist/data/mathdemo/function/divfix__then_0.mcfunction +0 -2
  785. package/dist/data/mathdemo/function/dot2d.mcfunction +0 -11
  786. package/dist/data/mathdemo/function/dot3d.mcfunction +0 -17
  787. package/dist/data/mathdemo/function/ease_in_back.mcfunction +0 -26
  788. package/dist/data/mathdemo/function/ease_in_bounce.mcfunction +0 -9
  789. package/dist/data/mathdemo/function/ease_in_cubic.mcfunction +0 -12
  790. package/dist/data/mathdemo/function/ease_in_expo.mcfunction +0 -5
  791. package/dist/data/mathdemo/function/ease_in_expo__merge_1.mcfunction +0 -11
  792. package/dist/data/mathdemo/function/ease_in_expo__then_0.mcfunction +0 -2
  793. package/dist/data/mathdemo/function/ease_in_out_back.mcfunction +0 -5
  794. package/dist/data/mathdemo/function/ease_in_out_back__merge_1.mcfunction +0 -14
  795. package/dist/data/mathdemo/function/ease_in_out_back__then_0.mcfunction +0 -10
  796. package/dist/data/mathdemo/function/ease_in_out_bounce.mcfunction +0 -5
  797. package/dist/data/mathdemo/function/ease_in_out_bounce__merge_1.mcfunction +0 -14
  798. package/dist/data/mathdemo/function/ease_in_out_bounce__then_0.mcfunction +0 -10
  799. package/dist/data/mathdemo/function/ease_in_out_cubic.mcfunction +0 -5
  800. package/dist/data/mathdemo/function/ease_in_out_cubic__merge_1.mcfunction +0 -17
  801. package/dist/data/mathdemo/function/ease_in_out_cubic__then_0.mcfunction +0 -13
  802. package/dist/data/mathdemo/function/ease_in_out_quad.mcfunction +0 -5
  803. package/dist/data/mathdemo/function/ease_in_out_quad__merge_1.mcfunction +0 -12
  804. package/dist/data/mathdemo/function/ease_in_out_quad__then_0.mcfunction +0 -8
  805. package/dist/data/mathdemo/function/ease_in_out_sine.mcfunction +0 -5
  806. package/dist/data/mathdemo/function/ease_in_out_sine__merge_1.mcfunction +0 -14
  807. package/dist/data/mathdemo/function/ease_in_out_sine__then_0.mcfunction +0 -10
  808. package/dist/data/mathdemo/function/ease_in_quad.mcfunction +0 -7
  809. package/dist/data/mathdemo/function/ease_in_quad__const_5000.mcfunction +0 -5
  810. package/dist/data/mathdemo/function/ease_in_quart.mcfunction +0 -12
  811. package/dist/data/mathdemo/function/ease_in_sine.mcfunction +0 -30
  812. package/dist/data/mathdemo/function/ease_linear.mcfunction +0 -2
  813. package/dist/data/mathdemo/function/ease_linear__const_5000.mcfunction +0 -2
  814. package/dist/data/mathdemo/function/ease_out_back.mcfunction +0 -9
  815. package/dist/data/mathdemo/function/ease_out_back__const_5000.mcfunction +0 -7
  816. package/dist/data/mathdemo/function/ease_out_bounce.mcfunction +0 -6
  817. package/dist/data/mathdemo/function/ease_out_bounce__merge_1.mcfunction +0 -4
  818. package/dist/data/mathdemo/function/ease_out_bounce__merge_4.mcfunction +0 -4
  819. package/dist/data/mathdemo/function/ease_out_bounce__merge_7.mcfunction +0 -15
  820. package/dist/data/mathdemo/function/ease_out_bounce__then_0.mcfunction +0 -11
  821. package/dist/data/mathdemo/function/ease_out_bounce__then_3.mcfunction +0 -15
  822. package/dist/data/mathdemo/function/ease_out_bounce__then_6.mcfunction +0 -15
  823. package/dist/data/mathdemo/function/ease_out_cubic.mcfunction +0 -16
  824. package/dist/data/mathdemo/function/ease_out_cubic__const_5000.mcfunction +0 -14
  825. package/dist/data/mathdemo/function/ease_out_expo.mcfunction +0 -5
  826. package/dist/data/mathdemo/function/ease_out_expo__merge_1.mcfunction +0 -8
  827. package/dist/data/mathdemo/function/ease_out_expo__then_0.mcfunction +0 -2
  828. package/dist/data/mathdemo/function/ease_out_quad.mcfunction +0 -11
  829. package/dist/data/mathdemo/function/ease_out_quart.mcfunction +0 -16
  830. package/dist/data/mathdemo/function/ease_out_sine.mcfunction +0 -9
  831. package/dist/data/mathdemo/function/ease_smooth.mcfunction +0 -23
  832. package/dist/data/mathdemo/function/ease_smoother.mcfunction +0 -41
  833. package/dist/data/mathdemo/function/exp_fx.mcfunction +0 -16
  834. package/dist/data/mathdemo/function/exp_fx__loop_body_10.mcfunction +0 -8
  835. package/dist/data/mathdemo/function/exp_fx__loop_body_5.mcfunction +0 -8
  836. package/dist/data/mathdemo/function/exp_fx__loop_exit_11.mcfunction +0 -1
  837. package/dist/data/mathdemo/function/exp_fx__loop_exit_6.mcfunction +0 -1
  838. package/dist/data/mathdemo/function/exp_fx__loop_header_4.mcfunction +0 -3
  839. package/dist/data/mathdemo/function/exp_fx__loop_header_9.mcfunction +0 -3
  840. package/dist/data/mathdemo/function/exp_fx__merge_1.mcfunction +0 -47
  841. package/dist/data/mathdemo/function/exp_fx__merge_3.mcfunction +0 -4
  842. package/dist/data/mathdemo/function/exp_fx__merge_8.mcfunction +0 -1
  843. package/dist/data/mathdemo/function/exp_fx__then_0.mcfunction +0 -7
  844. package/dist/data/mathdemo/function/exp_fx__then_2.mcfunction +0 -2
  845. package/dist/data/mathdemo/function/exp_fx__then_7.mcfunction +0 -5
  846. package/dist/data/mathdemo/function/factorial.mcfunction +0 -5
  847. package/dist/data/mathdemo/function/factorial__loop_body_4.mcfunction +0 -7
  848. package/dist/data/mathdemo/function/factorial__loop_exit_5.mcfunction +0 -1
  849. package/dist/data/mathdemo/function/factorial__loop_header_3.mcfunction +0 -3
  850. package/dist/data/mathdemo/function/factorial__merge_1.mcfunction +0 -3
  851. package/dist/data/mathdemo/function/factorial__then_0.mcfunction +0 -2
  852. package/dist/data/mathdemo/function/fbm_1d.mcfunction +0 -9
  853. package/dist/data/mathdemo/function/fbm_1d__loop_body_1.mcfunction +0 -33
  854. package/dist/data/mathdemo/function/fbm_1d__loop_exit_2.mcfunction +0 -4
  855. package/dist/data/mathdemo/function/fbm_1d__loop_header_0.mcfunction +0 -3
  856. package/dist/data/mathdemo/function/fbm_1d__merge_4.mcfunction +0 -6
  857. package/dist/data/mathdemo/function/fbm_1d__then_3.mcfunction +0 -2
  858. package/dist/data/mathdemo/function/fbm_2d.mcfunction +0 -10
  859. package/dist/data/mathdemo/function/fbm_2d__loop_body_1.mcfunction +0 -39
  860. package/dist/data/mathdemo/function/fbm_2d__loop_exit_2.mcfunction +0 -4
  861. package/dist/data/mathdemo/function/fbm_2d__loop_header_0.mcfunction +0 -3
  862. package/dist/data/mathdemo/function/fbm_2d__merge_4.mcfunction +0 -6
  863. package/dist/data/mathdemo/function/fbm_2d__then_3.mcfunction +0 -2
  864. package/dist/data/mathdemo/function/friction_decel.mcfunction +0 -5
  865. package/dist/data/mathdemo/function/friction_decel__merge_1.mcfunction +0 -5
  866. package/dist/data/mathdemo/function/friction_decel__merge_4.mcfunction +0 -2
  867. package/dist/data/mathdemo/function/friction_decel__then_0.mcfunction +0 -3
  868. package/dist/data/mathdemo/function/friction_decel__then_3.mcfunction +0 -3
  869. package/dist/data/mathdemo/function/gamma_int.mcfunction +0 -5
  870. package/dist/data/mathdemo/function/gamma_int__merge_1.mcfunction +0 -6
  871. package/dist/data/mathdemo/function/gamma_int__then_0.mcfunction +0 -2
  872. package/dist/data/mathdemo/function/gcd.mcfunction +0 -7
  873. package/dist/data/mathdemo/function/gcd__loop_body_5.mcfunction +0 -5
  874. package/dist/data/mathdemo/function/gcd__loop_exit_6.mcfunction +0 -1
  875. package/dist/data/mathdemo/function/gcd__loop_header_4.mcfunction +0 -4
  876. package/dist/data/mathdemo/function/gcd__merge_1.mcfunction +0 -5
  877. package/dist/data/mathdemo/function/gcd__merge_3.mcfunction +0 -1
  878. package/dist/data/mathdemo/function/gcd__then_0.mcfunction +0 -4
  879. package/dist/data/mathdemo/function/gcd__then_2.mcfunction +0 -4
  880. package/dist/data/mathdemo/function/gravity_fx.mcfunction +0 -2
  881. package/dist/data/mathdemo/function/hash_1d.mcfunction +0 -15
  882. package/dist/data/mathdemo/function/hash_1d_pos.mcfunction +0 -9
  883. package/dist/data/mathdemo/function/hash_1d_pos__merge_1.mcfunction +0 -4
  884. package/dist/data/mathdemo/function/hash_1d_pos__then_0.mcfunction +0 -4
  885. package/dist/data/mathdemo/function/hash_2d.mcfunction +0 -11
  886. package/dist/data/mathdemo/function/hash_2d_pos.mcfunction +0 -11
  887. package/dist/data/mathdemo/function/hash_2d_pos__merge_1.mcfunction +0 -4
  888. package/dist/data/mathdemo/function/hash_2d_pos__then_0.mcfunction +0 -4
  889. package/dist/data/mathdemo/function/impact_velocity.mcfunction +0 -5
  890. package/dist/data/mathdemo/function/impact_velocity__merge_1.mcfunction +0 -16
  891. package/dist/data/mathdemo/function/impact_velocity__then_0.mcfunction +0 -2
  892. package/dist/data/mathdemo/function/is_grounded.mcfunction +0 -5
  893. package/dist/data/mathdemo/function/is_grounded__merge_1.mcfunction +0 -2
  894. package/dist/data/mathdemo/function/is_grounded__then_0.mcfunction +0 -2
  895. package/dist/data/mathdemo/function/isqrt.mcfunction +0 -5
  896. package/dist/data/mathdemo/function/isqrt__loop_body_10.mcfunction +0 -8
  897. package/dist/data/mathdemo/function/isqrt__loop_body_13.mcfunction +0 -11
  898. package/dist/data/mathdemo/function/isqrt__loop_body_7.mcfunction +0 -8
  899. package/dist/data/mathdemo/function/isqrt__loop_exit_11.mcfunction +0 -2
  900. package/dist/data/mathdemo/function/isqrt__loop_exit_14.mcfunction +0 -1
  901. package/dist/data/mathdemo/function/isqrt__loop_exit_8.mcfunction +0 -9
  902. package/dist/data/mathdemo/function/isqrt__loop_header_12.mcfunction +0 -4
  903. package/dist/data/mathdemo/function/isqrt__loop_header_6.mcfunction +0 -4
  904. package/dist/data/mathdemo/function/isqrt__loop_header_9.mcfunction +0 -3
  905. package/dist/data/mathdemo/function/isqrt__merge_1.mcfunction +0 -4
  906. package/dist/data/mathdemo/function/isqrt__merge_16.mcfunction +0 -5
  907. package/dist/data/mathdemo/function/isqrt__merge_4.mcfunction +0 -3
  908. package/dist/data/mathdemo/function/isqrt__then_0.mcfunction +0 -2
  909. package/dist/data/mathdemo/function/isqrt__then_15.mcfunction +0 -1
  910. package/dist/data/mathdemo/function/isqrt__then_3.mcfunction +0 -2
  911. package/dist/data/mathdemo/function/lcm.mcfunction +0 -11
  912. package/dist/data/mathdemo/function/lcm__merge_1.mcfunction +0 -5
  913. package/dist/data/mathdemo/function/lcm__then_0.mcfunction +0 -2
  914. package/dist/data/mathdemo/function/length2d_fixed.mcfunction +0 -15
  915. package/dist/data/mathdemo/function/length3d_fixed.mcfunction +0 -20
  916. package/dist/data/mathdemo/function/lerp.mcfunction +0 -13
  917. package/dist/data/mathdemo/function/lerp2d_x.mcfunction +0 -13
  918. package/dist/data/mathdemo/function/lerp2d_y.mcfunction +0 -13
  919. package/dist/data/mathdemo/function/ln.mcfunction +0 -9
  920. package/dist/data/mathdemo/function/ln__loop_body_1.mcfunction +0 -8
  921. package/dist/data/mathdemo/function/ln__loop_body_4.mcfunction +0 -8
  922. package/dist/data/mathdemo/function/ln__loop_exit_2.mcfunction +0 -1
  923. package/dist/data/mathdemo/function/ln__loop_exit_5.mcfunction +0 -37
  924. package/dist/data/mathdemo/function/ln__loop_header_0.mcfunction +0 -3
  925. package/dist/data/mathdemo/function/ln__loop_header_3.mcfunction +0 -6
  926. package/dist/data/mathdemo/function/load.mcfunction +0 -1
  927. package/dist/data/mathdemo/function/log10_fx.mcfunction +0 -11
  928. package/dist/data/mathdemo/function/log2_fx.mcfunction +0 -11
  929. package/dist/data/mathdemo/function/log2_int.mcfunction +0 -5
  930. package/dist/data/mathdemo/function/log2_int__loop_body_4.mcfunction +0 -8
  931. package/dist/data/mathdemo/function/log2_int__loop_exit_5.mcfunction +0 -1
  932. package/dist/data/mathdemo/function/log2_int__loop_header_3.mcfunction +0 -4
  933. package/dist/data/mathdemo/function/log2_int__merge_1.mcfunction +0 -3
  934. package/dist/data/mathdemo/function/log2_int__then_0.mcfunction +0 -2
  935. package/dist/data/mathdemo/function/loga_fx.mcfunction +0 -10
  936. package/dist/data/mathdemo/function/loga_fx__merge_1.mcfunction +0 -9
  937. package/dist/data/mathdemo/function/loga_fx__then_0.mcfunction +0 -2
  938. package/dist/data/mathdemo/function/manhattan.mcfunction +0 -14
  939. package/dist/data/mathdemo/function/manhattan3d.mcfunction +0 -19
  940. package/dist/data/mathdemo/function/manhattan3d__merge_1.mcfunction +0 -4
  941. package/dist/data/mathdemo/function/manhattan3d__merge_3.mcfunction +0 -4
  942. package/dist/data/mathdemo/function/manhattan3d__merge_5.mcfunction +0 -5
  943. package/dist/data/mathdemo/function/manhattan3d__then_0.mcfunction +0 -4
  944. package/dist/data/mathdemo/function/manhattan3d__then_2.mcfunction +0 -4
  945. package/dist/data/mathdemo/function/manhattan3d__then_4.mcfunction +0 -4
  946. package/dist/data/mathdemo/function/manhattan__merge_1.mcfunction +0 -4
  947. package/dist/data/mathdemo/function/manhattan__merge_3.mcfunction +0 -3
  948. package/dist/data/mathdemo/function/manhattan__then_0.mcfunction +0 -4
  949. package/dist/data/mathdemo/function/manhattan__then_2.mcfunction +0 -4
  950. package/dist/data/mathdemo/function/map.mcfunction +0 -12
  951. package/dist/data/mathdemo/function/map__merge_1.mcfunction +0 -11
  952. package/dist/data/mathdemo/function/map__then_0.mcfunction +0 -1
  953. package/dist/data/mathdemo/function/mulfix.mcfunction +0 -8
  954. package/dist/data/mathdemo/function/neg2d_x.mcfunction +0 -4
  955. package/dist/data/mathdemo/function/neg2d_y.mcfunction +0 -4
  956. package/dist/data/mathdemo/function/neg3d_x.mcfunction +0 -4
  957. package/dist/data/mathdemo/function/neg3d_y.mcfunction +0 -4
  958. package/dist/data/mathdemo/function/neg3d_z.mcfunction +0 -4
  959. package/dist/data/mathdemo/function/normalize2d_x.mcfunction +0 -11
  960. package/dist/data/mathdemo/function/normalize2d_x__merge_1.mcfunction +0 -6
  961. package/dist/data/mathdemo/function/normalize2d_x__then_0.mcfunction +0 -2
  962. package/dist/data/mathdemo/function/normalize2d_y.mcfunction +0 -11
  963. package/dist/data/mathdemo/function/normalize2d_y__merge_1.mcfunction +0 -6
  964. package/dist/data/mathdemo/function/normalize2d_y__then_0.mcfunction +0 -2
  965. package/dist/data/mathdemo/function/pow_int.mcfunction +0 -6
  966. package/dist/data/mathdemo/function/pow_int__loop_body_4.mcfunction +0 -7
  967. package/dist/data/mathdemo/function/pow_int__loop_exit_5.mcfunction +0 -1
  968. package/dist/data/mathdemo/function/pow_int__loop_header_3.mcfunction +0 -4
  969. package/dist/data/mathdemo/function/pow_int__merge_1.mcfunction +0 -4
  970. package/dist/data/mathdemo/function/pow_int__merge_7.mcfunction +0 -8
  971. package/dist/data/mathdemo/function/pow_int__then_0.mcfunction +0 -2
  972. package/dist/data/mathdemo/function/pow_int__then_6.mcfunction +0 -4
  973. package/dist/data/mathdemo/function/projectile_land_t.mcfunction +0 -5
  974. package/dist/data/mathdemo/function/projectile_land_t__merge_1.mcfunction +0 -7
  975. package/dist/data/mathdemo/function/projectile_land_t__then_0.mcfunction +0 -2
  976. package/dist/data/mathdemo/function/projectile_max_height.mcfunction +0 -10
  977. package/dist/data/mathdemo/function/projectile_max_height__const_200.mcfunction +0 -8
  978. package/dist/data/mathdemo/function/projectile_vy.mcfunction +0 -9
  979. package/dist/data/mathdemo/function/projectile_x.mcfunction +0 -8
  980. package/dist/data/mathdemo/function/projectile_y.mcfunction +0 -19
  981. package/dist/data/mathdemo/function/quadratic_disc.mcfunction +0 -12
  982. package/dist/data/mathdemo/function/quadratic_x1.mcfunction +0 -7
  983. package/dist/data/mathdemo/function/quadratic_x1__merge_1.mcfunction +0 -13
  984. package/dist/data/mathdemo/function/quadratic_x1__merge_4.mcfunction +0 -15
  985. package/dist/data/mathdemo/function/quadratic_x1__then_0.mcfunction +0 -2
  986. package/dist/data/mathdemo/function/quadratic_x1__then_3.mcfunction +0 -2
  987. package/dist/data/mathdemo/function/quadratic_x2.mcfunction +0 -7
  988. package/dist/data/mathdemo/function/quadratic_x2__merge_1.mcfunction +0 -13
  989. package/dist/data/mathdemo/function/quadratic_x2__merge_4.mcfunction +0 -15
  990. package/dist/data/mathdemo/function/quadratic_x2__then_0.mcfunction +0 -2
  991. package/dist/data/mathdemo/function/quadratic_x2__then_3.mcfunction +0 -2
  992. package/dist/data/mathdemo/function/rotate2d_x.mcfunction +0 -20
  993. package/dist/data/mathdemo/function/rotate2d_y.mcfunction +0 -20
  994. package/dist/data/mathdemo/function/scale2d_x.mcfunction +0 -8
  995. package/dist/data/mathdemo/function/scale2d_y.mcfunction +0 -8
  996. package/dist/data/mathdemo/function/scale3d_x.mcfunction +0 -8
  997. package/dist/data/mathdemo/function/scale3d_y.mcfunction +0 -8
  998. package/dist/data/mathdemo/function/scale3d_z.mcfunction +0 -8
  999. package/dist/data/mathdemo/function/sign.mcfunction +0 -5
  1000. package/dist/data/mathdemo/function/sign__merge_1.mcfunction +0 -4
  1001. package/dist/data/mathdemo/function/sign__merge_4.mcfunction +0 -2
  1002. package/dist/data/mathdemo/function/sign__then_0.mcfunction +0 -2
  1003. package/dist/data/mathdemo/function/sign__then_3.mcfunction +0 -2
  1004. package/dist/data/mathdemo/function/sin_fixed.mcfunction +0 -9
  1005. package/dist/data/mathdemo/function/sin_fixed__merge_1.mcfunction +0 -4
  1006. package/dist/data/mathdemo/function/sin_fixed__merge_3.mcfunction +0 -4
  1007. package/dist/data/mathdemo/function/sin_fixed__merge_6.mcfunction +0 -4
  1008. package/dist/data/mathdemo/function/sin_fixed__merge_9.mcfunction +0 -10
  1009. package/dist/data/mathdemo/function/sin_fixed__then_0.mcfunction +0 -4
  1010. package/dist/data/mathdemo/function/sin_fixed__then_2.mcfunction +0 -6
  1011. package/dist/data/mathdemo/function/sin_fixed__then_5.mcfunction +0 -8
  1012. package/dist/data/mathdemo/function/sin_fixed__then_8.mcfunction +0 -10
  1013. package/dist/data/mathdemo/function/smootherstep.mcfunction +0 -10
  1014. package/dist/data/mathdemo/function/smootherstep__merge_1.mcfunction +0 -12
  1015. package/dist/data/mathdemo/function/smootherstep__merge_4.mcfunction +0 -4
  1016. package/dist/data/mathdemo/function/smootherstep__merge_6.mcfunction +0 -27
  1017. package/dist/data/mathdemo/function/smootherstep__then_0.mcfunction +0 -2
  1018. package/dist/data/mathdemo/function/smootherstep__then_3.mcfunction +0 -2
  1019. package/dist/data/mathdemo/function/smootherstep__then_5.mcfunction +0 -2
  1020. package/dist/data/mathdemo/function/smoothstep.mcfunction +0 -10
  1021. package/dist/data/mathdemo/function/smoothstep__merge_1.mcfunction +0 -12
  1022. package/dist/data/mathdemo/function/smoothstep__merge_4.mcfunction +0 -4
  1023. package/dist/data/mathdemo/function/smoothstep__merge_6.mcfunction +0 -15
  1024. package/dist/data/mathdemo/function/smoothstep__then_0.mcfunction +0 -2
  1025. package/dist/data/mathdemo/function/smoothstep__then_3.mcfunction +0 -2
  1026. package/dist/data/mathdemo/function/smoothstep__then_5.mcfunction +0 -2
  1027. package/dist/data/mathdemo/function/solve2x2_x.mcfunction +0 -17
  1028. package/dist/data/mathdemo/function/solve2x2_x__merge_1.mcfunction +0 -12
  1029. package/dist/data/mathdemo/function/solve2x2_x__then_0.mcfunction +0 -2
  1030. package/dist/data/mathdemo/function/solve2x2_y.mcfunction +0 -17
  1031. package/dist/data/mathdemo/function/solve2x2_y__merge_1.mcfunction +0 -12
  1032. package/dist/data/mathdemo/function/solve2x2_y__then_0.mcfunction +0 -2
  1033. package/dist/data/mathdemo/function/spring_force.mcfunction +0 -11
  1034. package/dist/data/mathdemo/function/spring_update_v.mcfunction +0 -18
  1035. package/dist/data/mathdemo/function/sqrt_fixed.mcfunction +0 -8
  1036. package/dist/data/mathdemo/function/sqrt_fx.mcfunction +0 -11
  1037. package/dist/data/mathdemo/function/sqrt_fx__const_20000.mcfunction +0 -8
  1038. package/dist/data/mathdemo/function/start.mcfunction +0 -6
  1039. package/dist/data/mathdemo/function/sub2d_x.mcfunction +0 -5
  1040. package/dist/data/mathdemo/function/sub2d_y.mcfunction +0 -5
  1041. package/dist/data/mathdemo/function/sub3d_x.mcfunction +0 -5
  1042. package/dist/data/mathdemo/function/sub3d_y.mcfunction +0 -5
  1043. package/dist/data/mathdemo/function/sub3d_z.mcfunction +0 -5
  1044. package/dist/data/mathdemo/function/terrain_height.mcfunction +0 -24
  1045. package/dist/data/mathdemo/function/terrain_height__const_0_0_64_20.mcfunction +0 -17
  1046. package/dist/data/mathdemo/function/terrain_height__const_10_5_64_20.mcfunction +0 -17
  1047. package/dist/data/mathdemo/function/update_pos.mcfunction +0 -5
  1048. package/dist/data/mathdemo/function/value_noise_1d.mcfunction +0 -13
  1049. package/dist/data/mathdemo/function/value_noise_1d__merge_1.mcfunction +0 -39
  1050. package/dist/data/mathdemo/function/value_noise_1d__then_0.mcfunction +0 -7
  1051. package/dist/data/mathdemo/function/value_noise_2d.mcfunction +0 -14
  1052. package/dist/data/mathdemo/function/value_noise_2d__merge_1.mcfunction +0 -12
  1053. package/dist/data/mathdemo/function/value_noise_2d__merge_3.mcfunction +0 -98
  1054. package/dist/data/mathdemo/function/value_noise_2d__then_0.mcfunction +0 -7
  1055. package/dist/data/mathdemo/function/value_noise_2d__then_2.mcfunction +0 -7
  1056. package/dist/data/mathdemo/function/water_drag_fx.mcfunction +0 -2
  1057. package/dist/data/mathtest/function/__load.mcfunction +0 -3
  1058. package/dist/data/mathtest/function/abs/merge_2.mcfunction +0 -3
  1059. package/dist/data/mathtest/function/abs/then_0.mcfunction +0 -5
  1060. package/dist/data/mathtest/function/abs.mcfunction +0 -6
  1061. package/dist/data/mathtest/function/test.mcfunction +0 -5
  1062. package/dist/data/minecraft/tags/function/tick.json +0 -5
  1063. package/dist/data/mypack/function/__load.mcfunction +0 -13
  1064. package/dist/data/mypack/function/_atan_init.mcfunction +0 -2
  1065. package/dist/data/mypack/function/abs/merge_2.mcfunction +0 -3
  1066. package/dist/data/mypack/function/abs/then_0.mcfunction +0 -5
  1067. package/dist/data/mypack/function/abs.mcfunction +0 -6
  1068. package/dist/data/mypack/function/atan2_fixed/__sgi_1.mcfunction +0 -2
  1069. package/dist/data/mypack/function/atan2_fixed/else_34.mcfunction +0 -3
  1070. package/dist/data/mypack/function/atan2_fixed/loop_body_31.mcfunction +0 -19
  1071. package/dist/data/mypack/function/atan2_fixed/loop_check_30.mcfunction +0 -5
  1072. package/dist/data/mypack/function/atan2_fixed/loop_exit_32.mcfunction +0 -6
  1073. package/dist/data/mypack/function/atan2_fixed/merge_11.mcfunction +0 -6
  1074. package/dist/data/mypack/function/atan2_fixed/merge_14.mcfunction +0 -3
  1075. package/dist/data/mypack/function/atan2_fixed/merge_17.mcfunction +0 -6
  1076. package/dist/data/mypack/function/atan2_fixed/merge_2.mcfunction +0 -5
  1077. package/dist/data/mypack/function/atan2_fixed/merge_20.mcfunction +0 -5
  1078. package/dist/data/mypack/function/atan2_fixed/merge_23.mcfunction +0 -5
  1079. package/dist/data/mypack/function/atan2_fixed/merge_26.mcfunction +0 -6
  1080. package/dist/data/mypack/function/atan2_fixed/merge_29.mcfunction +0 -4
  1081. package/dist/data/mypack/function/atan2_fixed/merge_38.mcfunction +0 -5
  1082. package/dist/data/mypack/function/atan2_fixed/merge_41.mcfunction +0 -5
  1083. package/dist/data/mypack/function/atan2_fixed/merge_44.mcfunction +0 -5
  1084. package/dist/data/mypack/function/atan2_fixed/merge_47.mcfunction +0 -5
  1085. package/dist/data/mypack/function/atan2_fixed/merge_5.mcfunction +0 -5
  1086. package/dist/data/mypack/function/atan2_fixed/merge_8.mcfunction +0 -3
  1087. package/dist/data/mypack/function/atan2_fixed/then_0.mcfunction +0 -5
  1088. package/dist/data/mypack/function/atan2_fixed/then_12.mcfunction +0 -3
  1089. package/dist/data/mypack/function/atan2_fixed/then_15.mcfunction +0 -5
  1090. package/dist/data/mypack/function/atan2_fixed/then_18.mcfunction +0 -5
  1091. package/dist/data/mypack/function/atan2_fixed/then_21.mcfunction +0 -3
  1092. package/dist/data/mypack/function/atan2_fixed/then_24.mcfunction +0 -3
  1093. package/dist/data/mypack/function/atan2_fixed/then_27.mcfunction +0 -6
  1094. package/dist/data/mypack/function/atan2_fixed/then_3.mcfunction +0 -3
  1095. package/dist/data/mypack/function/atan2_fixed/then_33.mcfunction +0 -5
  1096. package/dist/data/mypack/function/atan2_fixed/then_36.mcfunction +0 -5
  1097. package/dist/data/mypack/function/atan2_fixed/then_39.mcfunction +0 -5
  1098. package/dist/data/mypack/function/atan2_fixed/then_42.mcfunction +0 -3
  1099. package/dist/data/mypack/function/atan2_fixed/then_45.mcfunction +0 -5
  1100. package/dist/data/mypack/function/atan2_fixed/then_6.mcfunction +0 -3
  1101. package/dist/data/mypack/function/atan2_fixed/then_9.mcfunction +0 -5
  1102. package/dist/data/mypack/function/atan2_fixed.mcfunction +0 -7
  1103. package/dist/data/mypack/function/my_game.mcfunction +0 -10
  1104. package/dist/data/parkour_race/function/angry_at.mcfunction +0 -1
  1105. package/dist/data/parkour_race/function/barrier_wall.mcfunction +0 -1
  1106. package/dist/data/parkour_race/function/buff_all.mcfunction +0 -22
  1107. package/dist/data/parkour_race/function/check_checkpoints.mcfunction +0 -11
  1108. package/dist/data/parkour_race/function/check_checkpoints__exec_t11.mcfunction +0 -4
  1109. package/dist/data/parkour_race/function/check_checkpoints__exec_t13.mcfunction +0 -3
  1110. package/dist/data/parkour_race/function/check_checkpoints__exec_t5.mcfunction +0 -4
  1111. package/dist/data/parkour_race/function/check_checkpoints__exec_t7.mcfunction +0 -4
  1112. package/dist/data/parkour_race/function/check_checkpoints__exec_t9.mcfunction +0 -4
  1113. package/dist/data/parkour_race/function/check_checkpoints__merge_1.mcfunction +0 -5
  1114. package/dist/data/parkour_race/function/check_checkpoints__merge_3.mcfunction +0 -5
  1115. package/dist/data/parkour_race/function/check_checkpoints__merge_5.mcfunction +0 -5
  1116. package/dist/data/parkour_race/function/check_checkpoints__merge_7.mcfunction +0 -5
  1117. package/dist/data/parkour_race/function/check_checkpoints__merge_9.mcfunction +0 -1
  1118. package/dist/data/parkour_race/function/check_checkpoints__then_0.mcfunction +0 -2
  1119. package/dist/data/parkour_race/function/check_checkpoints__then_2.mcfunction +0 -2
  1120. package/dist/data/parkour_race/function/check_checkpoints__then_4.mcfunction +0 -2
  1121. package/dist/data/parkour_race/function/check_checkpoints__then_6.mcfunction +0 -2
  1122. package/dist/data/parkour_race/function/check_checkpoints__then_8.mcfunction +0 -2
  1123. package/dist/data/parkour_race/function/check_fall.mcfunction +0 -1
  1124. package/dist/data/parkour_race/function/check_fall__exec_t1.mcfunction +0 -10
  1125. package/dist/data/parkour_race/function/clear_area.mcfunction +0 -1
  1126. package/dist/data/parkour_race/function/clear_effect.mcfunction +0 -1
  1127. package/dist/data/parkour_race/function/clear_effects.mcfunction +0 -1
  1128. package/dist/data/parkour_race/function/create_health_bar.mcfunction +0 -24
  1129. package/dist/data/parkour_race/function/create_progress_bar.mcfunction +0 -24
  1130. package/dist/data/parkour_race/function/create_timer_bar.mcfunction +0 -30
  1131. package/dist/data/parkour_race/function/disable_fire_spread.mcfunction +0 -1
  1132. package/dist/data/parkour_race/function/disable_keep_inventory.mcfunction +0 -1
  1133. package/dist/data/parkour_race/function/disable_mob_griefing.mcfunction +0 -1
  1134. package/dist/data/parkour_race/function/enable_keep_inventory.mcfunction +0 -1
  1135. package/dist/data/parkour_race/function/end_sparkles_at.mcfunction +0 -1
  1136. package/dist/data/parkour_race/function/explosion_effect.mcfunction +0 -1
  1137. package/dist/data/parkour_race/function/finish_race.mcfunction +0 -20
  1138. package/dist/data/parkour_race/function/finish_race__else_2.mcfunction +0 -4
  1139. package/dist/data/parkour_race/function/finish_race__else_5.mcfunction +0 -3
  1140. package/dist/data/parkour_race/function/finish_race__merge_1.mcfunction +0 -3
  1141. package/dist/data/parkour_race/function/finish_race__merge_4.mcfunction +0 -1
  1142. package/dist/data/parkour_race/function/finish_race__then_0.mcfunction +0 -8
  1143. package/dist/data/parkour_race/function/finish_race__then_3.mcfunction +0 -10
  1144. package/dist/data/parkour_race/function/flames.mcfunction +0 -1
  1145. package/dist/data/parkour_race/function/glass_box.mcfunction +0 -2
  1146. package/dist/data/parkour_race/function/glow.mcfunction +0 -1
  1147. package/dist/data/parkour_race/function/happy_at.mcfunction +0 -1
  1148. package/dist/data/parkour_race/function/hearts_at.mcfunction +0 -1
  1149. package/dist/data/parkour_race/function/hide_bar.mcfunction +0 -4
  1150. package/dist/data/parkour_race/function/init.mcfunction +0 -18
  1151. package/dist/data/parkour_race/function/invisible.mcfunction +0 -1
  1152. package/dist/data/parkour_race/function/jump.mcfunction +0 -1
  1153. package/dist/data/parkour_race/function/load.mcfunction +0 -1
  1154. package/dist/data/parkour_race/function/night_vision.mcfunction +0 -1
  1155. package/dist/data/parkour_race/function/portal_effect.mcfunction +0 -1
  1156. package/dist/data/parkour_race/function/quit_race.mcfunction +0 -10
  1157. package/dist/data/parkour_race/function/quit_race__merge_1.mcfunction +0 -1
  1158. package/dist/data/parkour_race/function/quit_race__then_0.mcfunction +0 -11
  1159. package/dist/data/parkour_race/function/race_tick.mcfunction +0 -1
  1160. package/dist/data/parkour_race/function/race_tick__foreach_t0.mcfunction +0 -10
  1161. package/dist/data/parkour_race/function/race_tick__foreach_t0__merge_1.mcfunction +0 -1
  1162. package/dist/data/parkour_race/function/race_tick__foreach_t0__then_0.mcfunction +0 -13
  1163. package/dist/data/parkour_race/function/reach_checkpoint.mcfunction +0 -11
  1164. package/dist/data/parkour_race/function/regen.mcfunction +0 -1
  1165. package/dist/data/parkour_race/function/remove_bar.mcfunction +0 -3
  1166. package/dist/data/parkour_race/function/resistance.mcfunction +0 -1
  1167. package/dist/data/parkour_race/function/respawn_at_checkpoint.mcfunction +0 -7
  1168. package/dist/data/parkour_race/function/respawn_at_checkpoint__merge_1.mcfunction +0 -5
  1169. package/dist/data/parkour_race/function/respawn_at_checkpoint__merge_3.mcfunction +0 -5
  1170. package/dist/data/parkour_race/function/respawn_at_checkpoint__merge_5.mcfunction +0 -5
  1171. package/dist/data/parkour_race/function/respawn_at_checkpoint__merge_7.mcfunction +0 -5
  1172. package/dist/data/parkour_race/function/respawn_at_checkpoint__merge_9.mcfunction +0 -1
  1173. package/dist/data/parkour_race/function/respawn_at_checkpoint__then_0.mcfunction +0 -6
  1174. package/dist/data/parkour_race/function/respawn_at_checkpoint__then_2.mcfunction +0 -6
  1175. package/dist/data/parkour_race/function/respawn_at_checkpoint__then_4.mcfunction +0 -6
  1176. package/dist/data/parkour_race/function/respawn_at_checkpoint__then_6.mcfunction +0 -6
  1177. package/dist/data/parkour_race/function/respawn_at_checkpoint__then_8.mcfunction +0 -6
  1178. package/dist/data/parkour_race/function/set_day.mcfunction +0 -1
  1179. package/dist/data/parkour_race/function/set_easy.mcfunction +0 -1
  1180. package/dist/data/parkour_race/function/set_hard.mcfunction +0 -1
  1181. package/dist/data/parkour_race/function/set_midnight.mcfunction +0 -1
  1182. package/dist/data/parkour_race/function/set_night.mcfunction +0 -1
  1183. package/dist/data/parkour_race/function/set_noon.mcfunction +0 -1
  1184. package/dist/data/parkour_race/function/set_normal.mcfunction +0 -1
  1185. package/dist/data/parkour_race/function/set_peaceful.mcfunction +0 -1
  1186. package/dist/data/parkour_race/function/show_bar.mcfunction +0 -4
  1187. package/dist/data/parkour_race/function/show_leaderboard.mcfunction +0 -4
  1188. package/dist/data/parkour_race/function/slow_fall.mcfunction +0 -1
  1189. package/dist/data/parkour_race/function/smoke.mcfunction +0 -1
  1190. package/dist/data/parkour_race/function/sparkles_at.mcfunction +0 -1
  1191. package/dist/data/parkour_race/function/speed.mcfunction +0 -1
  1192. package/dist/data/parkour_race/function/start_race.mcfunction +0 -10
  1193. package/dist/data/parkour_race/function/start_race__merge_1.mcfunction +0 -23
  1194. package/dist/data/parkour_race/function/start_race__then_0.mcfunction +0 -1
  1195. package/dist/data/parkour_race/function/strength.mcfunction +0 -1
  1196. package/dist/data/parkour_race/function/totem_at.mcfunction +0 -1
  1197. package/dist/data/parkour_race/function/update_bar.mcfunction +0 -5
  1198. package/dist/data/parkour_race/function/update_bar_color.mcfunction +0 -7
  1199. package/dist/data/parkour_race/function/update_bar_color__else_2.mcfunction +0 -5
  1200. package/dist/data/parkour_race/function/update_bar_color__else_5.mcfunction +0 -4
  1201. package/dist/data/parkour_race/function/update_bar_color__merge_1.mcfunction +0 -1
  1202. package/dist/data/parkour_race/function/update_bar_color__merge_4.mcfunction +0 -1
  1203. package/dist/data/parkour_race/function/update_bar_color__then_0.mcfunction +0 -4
  1204. package/dist/data/parkour_race/function/update_bar_color__then_3.mcfunction +0 -4
  1205. package/dist/data/parkour_race/function/weather_clear.mcfunction +0 -1
  1206. package/dist/data/parkour_race/function/weather_rain.mcfunction +0 -1
  1207. package/dist/data/parkour_race/function/weather_thunder.mcfunction +0 -1
  1208. package/dist/data/quiz/function/__load.mcfunction +0 -16
  1209. package/dist/data/quiz/function/__tick.mcfunction +0 -6
  1210. package/dist/data/quiz/function/__trigger_quiz_a_dispatch.mcfunction +0 -4
  1211. package/dist/data/quiz/function/__trigger_quiz_b_dispatch.mcfunction +0 -4
  1212. package/dist/data/quiz/function/__trigger_quiz_c_dispatch.mcfunction +0 -4
  1213. package/dist/data/quiz/function/__trigger_quiz_start_dispatch.mcfunction +0 -4
  1214. package/dist/data/quiz/function/answer_a.mcfunction +0 -4
  1215. package/dist/data/quiz/function/answer_b.mcfunction +0 -4
  1216. package/dist/data/quiz/function/answer_c.mcfunction +0 -4
  1217. package/dist/data/quiz/function/ask_question/else_1.mcfunction +0 -5
  1218. package/dist/data/quiz/function/ask_question/else_4.mcfunction +0 -5
  1219. package/dist/data/quiz/function/ask_question/else_7.mcfunction +0 -4
  1220. package/dist/data/quiz/function/ask_question/merge_2.mcfunction +0 -1
  1221. package/dist/data/quiz/function/ask_question/merge_5.mcfunction +0 -2
  1222. package/dist/data/quiz/function/ask_question/merge_8.mcfunction +0 -2
  1223. package/dist/data/quiz/function/ask_question/then_0.mcfunction +0 -4
  1224. package/dist/data/quiz/function/ask_question/then_3.mcfunction +0 -4
  1225. package/dist/data/quiz/function/ask_question/then_6.mcfunction +0 -4
  1226. package/dist/data/quiz/function/ask_question.mcfunction +0 -7
  1227. package/dist/data/quiz/function/finish_quiz.mcfunction +0 -6
  1228. package/dist/data/quiz/function/handle_answer/else_1.mcfunction +0 -5
  1229. package/dist/data/quiz/function/handle_answer/else_10.mcfunction +0 -3
  1230. package/dist/data/quiz/function/handle_answer/else_16.mcfunction +0 -3
  1231. package/dist/data/quiz/function/handle_answer/else_4.mcfunction +0 -3
  1232. package/dist/data/quiz/function/handle_answer/else_7.mcfunction +0 -5
  1233. package/dist/data/quiz/function/handle_answer/merge_11.mcfunction +0 -2
  1234. package/dist/data/quiz/function/handle_answer/merge_14.mcfunction +0 -2
  1235. package/dist/data/quiz/function/handle_answer/merge_17.mcfunction +0 -2
  1236. package/dist/data/quiz/function/handle_answer/merge_2.mcfunction +0 -8
  1237. package/dist/data/quiz/function/handle_answer/merge_5.mcfunction +0 -2
  1238. package/dist/data/quiz/function/handle_answer/merge_8.mcfunction +0 -2
  1239. package/dist/data/quiz/function/handle_answer/then_0.mcfunction +0 -5
  1240. package/dist/data/quiz/function/handle_answer/then_12.mcfunction +0 -5
  1241. package/dist/data/quiz/function/handle_answer/then_15.mcfunction +0 -6
  1242. package/dist/data/quiz/function/handle_answer/then_3.mcfunction +0 -6
  1243. package/dist/data/quiz/function/handle_answer/then_6.mcfunction +0 -5
  1244. package/dist/data/quiz/function/handle_answer/then_9.mcfunction +0 -6
  1245. package/dist/data/quiz/function/handle_answer.mcfunction +0 -11
  1246. package/dist/data/quiz/function/start_quiz.mcfunction +0 -5
  1247. package/dist/data/rawtest/function/load.mcfunction +0 -1
  1248. package/dist/data/rawtest/function/test.mcfunction +0 -2
  1249. package/dist/data/readme_demo/function/_draw.mcfunction +0 -1
  1250. package/dist/data/readme_demo/function/_init.mcfunction +0 -1
  1251. package/dist/data/readme_demo/function/_math_init.mcfunction +0 -4
  1252. package/dist/data/readme_demo/function/_wave_tick.mcfunction +0 -1
  1253. package/dist/data/readme_demo/function/_wave_tick__foreach_t8.mcfunction +0 -109
  1254. package/dist/data/readme_demo/function/acos_approx.mcfunction +0 -7
  1255. package/dist/data/readme_demo/function/approx_eq.mcfunction +0 -10
  1256. package/dist/data/readme_demo/function/approx_eq__merge_1.mcfunction +0 -3
  1257. package/dist/data/readme_demo/function/approx_eq__merge_3.mcfunction +0 -2
  1258. package/dist/data/readme_demo/function/approx_eq__then_0.mcfunction +0 -4
  1259. package/dist/data/readme_demo/function/approx_eq__then_2.mcfunction +0 -2
  1260. package/dist/data/readme_demo/function/asin_approx.mcfunction +0 -5
  1261. package/dist/data/readme_demo/function/asin_approx__merge_1.mcfunction +0 -3
  1262. package/dist/data/readme_demo/function/asin_approx__merge_10.mcfunction +0 -5
  1263. package/dist/data/readme_demo/function/asin_approx__merge_4.mcfunction +0 -12
  1264. package/dist/data/readme_demo/function/asin_approx__merge_7.mcfunction +0 -14
  1265. package/dist/data/readme_demo/function/asin_approx__then_0.mcfunction +0 -2
  1266. package/dist/data/readme_demo/function/asin_approx__then_3.mcfunction +0 -2
  1267. package/dist/data/readme_demo/function/asin_approx__then_6.mcfunction +0 -2
  1268. package/dist/data/readme_demo/function/asin_approx__then_9.mcfunction +0 -2
  1269. package/dist/data/readme_demo/function/cbrt_fx.mcfunction +0 -5
  1270. package/dist/data/readme_demo/function/cbrt_fx__loop_body_6.mcfunction +0 -7
  1271. package/dist/data/readme_demo/function/cbrt_fx__loop_exit_7.mcfunction +0 -1
  1272. package/dist/data/readme_demo/function/cbrt_fx__loop_header_5.mcfunction +0 -4
  1273. package/dist/data/readme_demo/function/cbrt_fx__merge_1.mcfunction +0 -8
  1274. package/dist/data/readme_demo/function/cbrt_fx__merge_11.mcfunction +0 -5
  1275. package/dist/data/readme_demo/function/cbrt_fx__merge_13.mcfunction +0 -4
  1276. package/dist/data/readme_demo/function/cbrt_fx__merge_4.mcfunction +0 -2
  1277. package/dist/data/readme_demo/function/cbrt_fx__merge_9.mcfunction +0 -13
  1278. package/dist/data/readme_demo/function/cbrt_fx__then_0.mcfunction +0 -2
  1279. package/dist/data/readme_demo/function/cbrt_fx__then_10.mcfunction +0 -2
  1280. package/dist/data/readme_demo/function/cbrt_fx__then_12.mcfunction +0 -2
  1281. package/dist/data/readme_demo/function/cbrt_fx__then_3.mcfunction +0 -2
  1282. package/dist/data/readme_demo/function/cbrt_fx__then_8.mcfunction +0 -2
  1283. package/dist/data/readme_demo/function/cbrt_newton.mcfunction +0 -5
  1284. package/dist/data/readme_demo/function/cbrt_newton__else_7.mcfunction +0 -2
  1285. package/dist/data/readme_demo/function/cbrt_newton__merge_1.mcfunction +0 -11
  1286. package/dist/data/readme_demo/function/cbrt_newton__merge_4.mcfunction +0 -1
  1287. package/dist/data/readme_demo/function/cbrt_newton__merge_6.mcfunction +0 -1
  1288. package/dist/data/readme_demo/function/cbrt_newton__then_0.mcfunction +0 -2
  1289. package/dist/data/readme_demo/function/cbrt_newton__then_3.mcfunction +0 -17
  1290. package/dist/data/readme_demo/function/cbrt_newton__then_5.mcfunction +0 -11
  1291. package/dist/data/readme_demo/function/ceil_div.mcfunction +0 -9
  1292. package/dist/data/readme_demo/function/combinations.mcfunction +0 -6
  1293. package/dist/data/readme_demo/function/combinations__loop_body_9.mcfunction +0 -15
  1294. package/dist/data/readme_demo/function/combinations__loop_exit_10.mcfunction +0 -1
  1295. package/dist/data/readme_demo/function/combinations__loop_header_8.mcfunction +0 -3
  1296. package/dist/data/readme_demo/function/combinations__merge_1.mcfunction +0 -3
  1297. package/dist/data/readme_demo/function/combinations__merge_4.mcfunction +0 -6
  1298. package/dist/data/readme_demo/function/combinations__merge_7.mcfunction +0 -3
  1299. package/dist/data/readme_demo/function/combinations__then_0.mcfunction +0 -2
  1300. package/dist/data/readme_demo/function/combinations__then_3.mcfunction +0 -2
  1301. package/dist/data/readme_demo/function/combinations__then_6.mcfunction +0 -4
  1302. package/dist/data/readme_demo/function/cos_fixed.mcfunction +0 -7
  1303. package/dist/data/readme_demo/function/cubic_disc_fx.mcfunction +0 -26
  1304. package/dist/data/readme_demo/function/cubic_newton.mcfunction +0 -8
  1305. package/dist/data/readme_demo/function/cubic_newton__loop_body_1.mcfunction +0 -55
  1306. package/dist/data/readme_demo/function/cubic_newton__loop_exit_2.mcfunction +0 -1
  1307. package/dist/data/readme_demo/function/cubic_newton__loop_header_0.mcfunction +0 -4
  1308. package/dist/data/readme_demo/function/cubic_newton__merge_10.mcfunction +0 -1
  1309. package/dist/data/readme_demo/function/cubic_newton__merge_4.mcfunction +0 -4
  1310. package/dist/data/readme_demo/function/cubic_newton__merge_6.mcfunction +0 -4
  1311. package/dist/data/readme_demo/function/cubic_newton__merge_8.mcfunction +0 -4
  1312. package/dist/data/readme_demo/function/cubic_newton__then_3.mcfunction +0 -2
  1313. package/dist/data/readme_demo/function/cubic_newton__then_5.mcfunction +0 -13
  1314. package/dist/data/readme_demo/function/cubic_newton__then_7.mcfunction +0 -4
  1315. package/dist/data/readme_demo/function/cubic_newton__then_9.mcfunction +0 -2
  1316. package/dist/data/readme_demo/function/divfix.mcfunction +0 -6
  1317. package/dist/data/readme_demo/function/divfix__merge_1.mcfunction +0 -6
  1318. package/dist/data/readme_demo/function/divfix__then_0.mcfunction +0 -2
  1319. package/dist/data/readme_demo/function/exp_fx.mcfunction +0 -16
  1320. package/dist/data/readme_demo/function/exp_fx__loop_body_10.mcfunction +0 -8
  1321. package/dist/data/readme_demo/function/exp_fx__loop_body_5.mcfunction +0 -8
  1322. package/dist/data/readme_demo/function/exp_fx__loop_exit_11.mcfunction +0 -1
  1323. package/dist/data/readme_demo/function/exp_fx__loop_exit_6.mcfunction +0 -1
  1324. package/dist/data/readme_demo/function/exp_fx__loop_header_4.mcfunction +0 -3
  1325. package/dist/data/readme_demo/function/exp_fx__loop_header_9.mcfunction +0 -3
  1326. package/dist/data/readme_demo/function/exp_fx__merge_1.mcfunction +0 -47
  1327. package/dist/data/readme_demo/function/exp_fx__merge_3.mcfunction +0 -4
  1328. package/dist/data/readme_demo/function/exp_fx__merge_8.mcfunction +0 -1
  1329. package/dist/data/readme_demo/function/exp_fx__then_0.mcfunction +0 -7
  1330. package/dist/data/readme_demo/function/exp_fx__then_2.mcfunction +0 -2
  1331. package/dist/data/readme_demo/function/exp_fx__then_7.mcfunction +0 -5
  1332. package/dist/data/readme_demo/function/factorial.mcfunction +0 -5
  1333. package/dist/data/readme_demo/function/factorial__loop_body_4.mcfunction +0 -7
  1334. package/dist/data/readme_demo/function/factorial__loop_exit_5.mcfunction +0 -1
  1335. package/dist/data/readme_demo/function/factorial__loop_header_3.mcfunction +0 -3
  1336. package/dist/data/readme_demo/function/factorial__merge_1.mcfunction +0 -3
  1337. package/dist/data/readme_demo/function/factorial__then_0.mcfunction +0 -2
  1338. package/dist/data/readme_demo/function/gamma_int.mcfunction +0 -5
  1339. package/dist/data/readme_demo/function/gamma_int__merge_1.mcfunction +0 -6
  1340. package/dist/data/readme_demo/function/gamma_int__then_0.mcfunction +0 -2
  1341. package/dist/data/readme_demo/function/gcd.mcfunction +0 -7
  1342. package/dist/data/readme_demo/function/gcd__loop_body_5.mcfunction +0 -5
  1343. package/dist/data/readme_demo/function/gcd__loop_exit_6.mcfunction +0 -1
  1344. package/dist/data/readme_demo/function/gcd__loop_header_4.mcfunction +0 -4
  1345. package/dist/data/readme_demo/function/gcd__merge_1.mcfunction +0 -5
  1346. package/dist/data/readme_demo/function/gcd__merge_3.mcfunction +0 -1
  1347. package/dist/data/readme_demo/function/gcd__then_0.mcfunction +0 -4
  1348. package/dist/data/readme_demo/function/gcd__then_2.mcfunction +0 -4
  1349. package/dist/data/readme_demo/function/isqrt.mcfunction +0 -5
  1350. package/dist/data/readme_demo/function/isqrt__loop_body_10.mcfunction +0 -8
  1351. package/dist/data/readme_demo/function/isqrt__loop_body_13.mcfunction +0 -11
  1352. package/dist/data/readme_demo/function/isqrt__loop_body_7.mcfunction +0 -8
  1353. package/dist/data/readme_demo/function/isqrt__loop_exit_11.mcfunction +0 -2
  1354. package/dist/data/readme_demo/function/isqrt__loop_exit_14.mcfunction +0 -1
  1355. package/dist/data/readme_demo/function/isqrt__loop_exit_8.mcfunction +0 -9
  1356. package/dist/data/readme_demo/function/isqrt__loop_header_12.mcfunction +0 -4
  1357. package/dist/data/readme_demo/function/isqrt__loop_header_6.mcfunction +0 -4
  1358. package/dist/data/readme_demo/function/isqrt__loop_header_9.mcfunction +0 -3
  1359. package/dist/data/readme_demo/function/isqrt__merge_1.mcfunction +0 -4
  1360. package/dist/data/readme_demo/function/isqrt__merge_16.mcfunction +0 -5
  1361. package/dist/data/readme_demo/function/isqrt__merge_4.mcfunction +0 -3
  1362. package/dist/data/readme_demo/function/isqrt__then_0.mcfunction +0 -2
  1363. package/dist/data/readme_demo/function/isqrt__then_15.mcfunction +0 -1
  1364. package/dist/data/readme_demo/function/isqrt__then_3.mcfunction +0 -2
  1365. package/dist/data/readme_demo/function/lcm.mcfunction +0 -11
  1366. package/dist/data/readme_demo/function/lcm__merge_1.mcfunction +0 -5
  1367. package/dist/data/readme_demo/function/lcm__then_0.mcfunction +0 -2
  1368. package/dist/data/readme_demo/function/lerp.mcfunction +0 -13
  1369. package/dist/data/readme_demo/function/ln.mcfunction +0 -9
  1370. package/dist/data/readme_demo/function/ln__loop_body_1.mcfunction +0 -8
  1371. package/dist/data/readme_demo/function/ln__loop_body_4.mcfunction +0 -8
  1372. package/dist/data/readme_demo/function/ln__loop_exit_2.mcfunction +0 -1
  1373. package/dist/data/readme_demo/function/ln__loop_exit_5.mcfunction +0 -37
  1374. package/dist/data/readme_demo/function/ln__loop_header_0.mcfunction +0 -3
  1375. package/dist/data/readme_demo/function/ln__loop_header_3.mcfunction +0 -6
  1376. package/dist/data/readme_demo/function/load.mcfunction +0 -1
  1377. package/dist/data/readme_demo/function/log10_fx.mcfunction +0 -11
  1378. package/dist/data/readme_demo/function/log2_fx.mcfunction +0 -11
  1379. package/dist/data/readme_demo/function/log2_int.mcfunction +0 -5
  1380. package/dist/data/readme_demo/function/log2_int__loop_body_4.mcfunction +0 -8
  1381. package/dist/data/readme_demo/function/log2_int__loop_exit_5.mcfunction +0 -1
  1382. package/dist/data/readme_demo/function/log2_int__loop_header_3.mcfunction +0 -4
  1383. package/dist/data/readme_demo/function/log2_int__merge_1.mcfunction +0 -3
  1384. package/dist/data/readme_demo/function/log2_int__then_0.mcfunction +0 -2
  1385. package/dist/data/readme_demo/function/loga_fx.mcfunction +0 -10
  1386. package/dist/data/readme_demo/function/loga_fx__merge_1.mcfunction +0 -9
  1387. package/dist/data/readme_demo/function/loga_fx__then_0.mcfunction +0 -2
  1388. package/dist/data/readme_demo/function/map.mcfunction +0 -12
  1389. package/dist/data/readme_demo/function/map__merge_1.mcfunction +0 -11
  1390. package/dist/data/readme_demo/function/map__then_0.mcfunction +0 -1
  1391. package/dist/data/readme_demo/function/mulfix.mcfunction +0 -8
  1392. package/dist/data/readme_demo/function/newton_step.mcfunction +0 -7
  1393. package/dist/data/readme_demo/function/newton_step__merge_1.mcfunction +0 -8
  1394. package/dist/data/readme_demo/function/newton_step__then_0.mcfunction +0 -1
  1395. package/dist/data/readme_demo/function/pow_int.mcfunction +0 -6
  1396. package/dist/data/readme_demo/function/pow_int__loop_body_4.mcfunction +0 -7
  1397. package/dist/data/readme_demo/function/pow_int__loop_exit_5.mcfunction +0 -1
  1398. package/dist/data/readme_demo/function/pow_int__loop_header_3.mcfunction +0 -4
  1399. package/dist/data/readme_demo/function/pow_int__merge_1.mcfunction +0 -4
  1400. package/dist/data/readme_demo/function/pow_int__merge_7.mcfunction +0 -8
  1401. package/dist/data/readme_demo/function/pow_int__then_0.mcfunction +0 -2
  1402. package/dist/data/readme_demo/function/pow_int__then_6.mcfunction +0 -4
  1403. package/dist/data/readme_demo/function/quadratic_disc.mcfunction +0 -12
  1404. package/dist/data/readme_demo/function/quadratic_x1.mcfunction +0 -7
  1405. package/dist/data/readme_demo/function/quadratic_x1__merge_1.mcfunction +0 -13
  1406. package/dist/data/readme_demo/function/quadratic_x1__merge_4.mcfunction +0 -15
  1407. package/dist/data/readme_demo/function/quadratic_x1__then_0.mcfunction +0 -2
  1408. package/dist/data/readme_demo/function/quadratic_x1__then_3.mcfunction +0 -2
  1409. package/dist/data/readme_demo/function/quadratic_x2.mcfunction +0 -7
  1410. package/dist/data/readme_demo/function/quadratic_x2__merge_1.mcfunction +0 -13
  1411. package/dist/data/readme_demo/function/quadratic_x2__merge_4.mcfunction +0 -15
  1412. package/dist/data/readme_demo/function/quadratic_x2__then_0.mcfunction +0 -2
  1413. package/dist/data/readme_demo/function/quadratic_x2__then_3.mcfunction +0 -2
  1414. package/dist/data/readme_demo/function/sign.mcfunction +0 -5
  1415. package/dist/data/readme_demo/function/sign__merge_1.mcfunction +0 -4
  1416. package/dist/data/readme_demo/function/sign__merge_4.mcfunction +0 -2
  1417. package/dist/data/readme_demo/function/sign__then_0.mcfunction +0 -2
  1418. package/dist/data/readme_demo/function/sign__then_3.mcfunction +0 -2
  1419. package/dist/data/readme_demo/function/simpson_step.mcfunction +0 -16
  1420. package/dist/data/readme_demo/function/sin_fixed.mcfunction +0 -9
  1421. package/dist/data/readme_demo/function/sin_fixed__merge_1.mcfunction +0 -4
  1422. package/dist/data/readme_demo/function/sin_fixed__merge_3.mcfunction +0 -4
  1423. package/dist/data/readme_demo/function/sin_fixed__merge_6.mcfunction +0 -4
  1424. package/dist/data/readme_demo/function/sin_fixed__merge_9.mcfunction +0 -10
  1425. package/dist/data/readme_demo/function/sin_fixed__then_0.mcfunction +0 -4
  1426. package/dist/data/readme_demo/function/sin_fixed__then_2.mcfunction +0 -6
  1427. package/dist/data/readme_demo/function/sin_fixed__then_5.mcfunction +0 -8
  1428. package/dist/data/readme_demo/function/sin_fixed__then_8.mcfunction +0 -10
  1429. package/dist/data/readme_demo/function/smootherstep.mcfunction +0 -10
  1430. package/dist/data/readme_demo/function/smootherstep__merge_1.mcfunction +0 -12
  1431. package/dist/data/readme_demo/function/smootherstep__merge_4.mcfunction +0 -4
  1432. package/dist/data/readme_demo/function/smootherstep__merge_6.mcfunction +0 -27
  1433. package/dist/data/readme_demo/function/smootherstep__then_0.mcfunction +0 -2
  1434. package/dist/data/readme_demo/function/smootherstep__then_3.mcfunction +0 -2
  1435. package/dist/data/readme_demo/function/smootherstep__then_5.mcfunction +0 -2
  1436. package/dist/data/readme_demo/function/smoothstep.mcfunction +0 -10
  1437. package/dist/data/readme_demo/function/smoothstep__merge_1.mcfunction +0 -12
  1438. package/dist/data/readme_demo/function/smoothstep__merge_4.mcfunction +0 -4
  1439. package/dist/data/readme_demo/function/smoothstep__merge_6.mcfunction +0 -15
  1440. package/dist/data/readme_demo/function/smoothstep__then_0.mcfunction +0 -2
  1441. package/dist/data/readme_demo/function/smoothstep__then_3.mcfunction +0 -2
  1442. package/dist/data/readme_demo/function/smoothstep__then_5.mcfunction +0 -2
  1443. package/dist/data/readme_demo/function/solve2x2_x.mcfunction +0 -17
  1444. package/dist/data/readme_demo/function/solve2x2_x__merge_1.mcfunction +0 -12
  1445. package/dist/data/readme_demo/function/solve2x2_x__then_0.mcfunction +0 -2
  1446. package/dist/data/readme_demo/function/solve2x2_y.mcfunction +0 -17
  1447. package/dist/data/readme_demo/function/solve2x2_y__merge_1.mcfunction +0 -12
  1448. package/dist/data/readme_demo/function/solve2x2_y__then_0.mcfunction +0 -2
  1449. package/dist/data/readme_demo/function/sqrt_fixed.mcfunction +0 -8
  1450. package/dist/data/readme_demo/function/sqrt_fx.mcfunction +0 -8
  1451. package/dist/data/readme_demo/function/start.mcfunction +0 -2
  1452. package/dist/data/readme_demo/function/stop.mcfunction +0 -1
  1453. package/dist/data/readme_demo/function/trapezoid_step.mcfunction +0 -11
  1454. package/dist/data/reqtest/function/__load.mcfunction +0 -4
  1455. package/dist/data/reqtest/function/_table_init.mcfunction +0 -2
  1456. package/dist/data/reqtest/function/no_trig.mcfunction +0 -3
  1457. package/dist/data/reqtest/function/use_table.mcfunction +0 -4
  1458. package/dist/data/reqtest2/function/__load.mcfunction +0 -3
  1459. package/dist/data/reqtest2/function/no_trig.mcfunction +0 -3
  1460. package/dist/data/runtime/function/__load.mcfunction +0 -5
  1461. package/dist/data/runtime/function/__tick.mcfunction +0 -2
  1462. package/dist/data/runtime/function/counter_tick/then_0.mcfunction +0 -3
  1463. package/dist/data/runtime/function/counter_tick.mcfunction +0 -13
  1464. package/dist/data/shop/function/__load.mcfunction +0 -7
  1465. package/dist/data/shop/function/__tick.mcfunction +0 -3
  1466. package/dist/data/shop/function/__trigger_shop_buy_dispatch.mcfunction +0 -4
  1467. package/dist/data/shop/function/complete_purchase/else_1.mcfunction +0 -5
  1468. package/dist/data/shop/function/complete_purchase/else_4.mcfunction +0 -5
  1469. package/dist/data/shop/function/complete_purchase/else_7.mcfunction +0 -3
  1470. package/dist/data/shop/function/complete_purchase/merge_2.mcfunction +0 -2
  1471. package/dist/data/shop/function/complete_purchase/merge_5.mcfunction +0 -2
  1472. package/dist/data/shop/function/complete_purchase/merge_8.mcfunction +0 -2
  1473. package/dist/data/shop/function/complete_purchase/then_0.mcfunction +0 -4
  1474. package/dist/data/shop/function/complete_purchase/then_3.mcfunction +0 -4
  1475. package/dist/data/shop/function/complete_purchase/then_6.mcfunction +0 -4
  1476. package/dist/data/shop/function/complete_purchase.mcfunction +0 -7
  1477. package/dist/data/shop/function/handle_shop_trigger.mcfunction +0 -3
  1478. package/dist/data/stdextra/function/__load.mcfunction +0 -2
  1479. package/dist/data/stdextra/function/load.mcfunction +0 -1
  1480. package/dist/data/stdextra/function/test_bigint.mcfunction +0 -52
  1481. package/dist/data/stdextra/function/test_bits.mcfunction +0 -33
  1482. package/dist/data/stdextra/function/test_list_sort.mcfunction +0 -55
  1483. package/dist/data/stdextra/function/test_random.mcfunction +0 -17
  1484. package/dist/data/stdextra/function/test_random__merge_1.mcfunction +0 -4
  1485. package/dist/data/stdextra/function/test_random__merge_11.mcfunction +0 -1
  1486. package/dist/data/stdextra/function/test_random__merge_3.mcfunction +0 -14
  1487. package/dist/data/stdextra/function/test_random__merge_5.mcfunction +0 -8
  1488. package/dist/data/stdextra/function/test_random__merge_7.mcfunction +0 -1
  1489. package/dist/data/stdextra/function/test_random__merge_9.mcfunction +0 -1
  1490. package/dist/data/stdextra/function/test_random__then_0.mcfunction +0 -4
  1491. package/dist/data/stdextra/function/test_random__then_10.mcfunction +0 -2
  1492. package/dist/data/stdextra/function/test_random__then_2.mcfunction +0 -2
  1493. package/dist/data/stdextra/function/test_random__then_4.mcfunction +0 -4
  1494. package/dist/data/stdextra/function/test_random__then_6.mcfunction +0 -2
  1495. package/dist/data/stdextra/function/test_random__then_8.mcfunction +0 -4
  1496. package/dist/data/swap_test/function/__load.mcfunction +0 -3
  1497. package/dist/data/swap_test/function/gcd_old/loop_body_1.mcfunction +0 -7
  1498. package/dist/data/swap_test/function/gcd_old/loop_check_0.mcfunction +0 -5
  1499. package/dist/data/swap_test/function/gcd_old/loop_exit_2.mcfunction +0 -3
  1500. package/dist/data/swap_test/function/gcd_old.mcfunction +0 -8
  1501. package/dist/data/test/function/__dyn_idx_test_arrays_a.mcfunction +0 -1
  1502. package/dist/data/test/function/__dyn_idx_test_arrays_b.mcfunction +0 -1
  1503. package/dist/data/test/function/__dyn_idx_test_arrays_c.mcfunction +0 -1
  1504. package/dist/data/test/function/__dyn_idx_test_arrays_counter.mcfunction +0 -1
  1505. package/dist/data/test/function/__dyn_idx_test_arrays_d.mcfunction +0 -1
  1506. package/dist/data/test/function/__dyn_idx_test_arrays_e.mcfunction +0 -1
  1507. package/dist/data/test/function/__dyn_idx_test_arrays_g.mcfunction +0 -1
  1508. package/dist/data/test/function/__dyn_idx_test_arrays_h.mcfunction +0 -1
  1509. package/dist/data/test/function/__dyn_idx_test_arrays_nums.mcfunction +0 -1
  1510. package/dist/data/test/function/__dyn_idx_test_arrays_one.mcfunction +0 -1
  1511. package/dist/data/test/function/__dyn_idx_test_arrays_parent.mcfunction +0 -1
  1512. package/dist/data/test/function/__dyn_idx_test_arrays_queue.mcfunction +0 -1
  1513. package/dist/data/test/function/__dyn_idx_test_arrays_rev.mcfunction +0 -1
  1514. package/dist/data/test/function/__dyn_idx_test_arrays_visited.mcfunction +0 -1
  1515. package/dist/data/test/function/__dyn_wrt_test_arrays_f.mcfunction +0 -1
  1516. package/dist/data/test/function/__dyn_wrt_test_arrays_parent.mcfunction +0 -1
  1517. package/dist/data/test/function/__dyn_wrt_test_arrays_r.mcfunction +0 -1
  1518. package/dist/data/test/function/__dyn_wrt_test_arrays_s.mcfunction +0 -1
  1519. package/dist/data/test/function/__dyn_wrt_test_arrays_visited.mcfunction +0 -1
  1520. package/dist/data/test/function/_apply.mcfunction +0 -5
  1521. package/dist/data/test/function/_atan_init.mcfunction +0 -4
  1522. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_1.mcfunction +0 -2
  1523. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_1__loop_body_1.mcfunction +0 -17
  1524. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_1__loop_body_1_continue.mcfunction +0 -1
  1525. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_1__loop_body_1_yield.mcfunction +0 -1
  1526. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_1__loop_header_0.mcfunction +0 -4
  1527. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_1__loop_header_0_exit.mcfunction +0 -1
  1528. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2.mcfunction +0 -2
  1529. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__else_8.mcfunction +0 -19
  1530. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__loop_body_4.mcfunction +0 -9
  1531. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__loop_header_3.mcfunction +0 -3
  1532. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__loop_header_3_exit.mcfunction +0 -1
  1533. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_10.mcfunction +0 -11
  1534. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_12.mcfunction +0 -1
  1535. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_14.mcfunction +0 -11
  1536. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_16.mcfunction +0 -1
  1537. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_18.mcfunction +0 -11
  1538. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_20.mcfunction +0 -1
  1539. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_22.mcfunction +0 -1
  1540. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_24.mcfunction +0 -1
  1541. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_7.mcfunction +0 -6
  1542. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_7_continue.mcfunction +0 -1
  1543. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__merge_7_yield.mcfunction +0 -1
  1544. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_11.mcfunction +0 -15
  1545. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_13.mcfunction +0 -13
  1546. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_15.mcfunction +0 -15
  1547. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_17.mcfunction +0 -13
  1548. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_19.mcfunction +0 -15
  1549. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_21.mcfunction +0 -13
  1550. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_23.mcfunction +0 -15
  1551. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_6.mcfunction +0 -2
  1552. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_2__then_9.mcfunction +0 -13
  1553. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3.mcfunction +0 -2
  1554. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__else_32.mcfunction +0 -4
  1555. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__loop_body_28.mcfunction +0 -6
  1556. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__loop_header_27.mcfunction +0 -4
  1557. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__loop_header_27_exit.mcfunction +0 -1
  1558. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__merge_31.mcfunction +0 -6
  1559. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__merge_31_continue.mcfunction +0 -1
  1560. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__merge_31_yield.mcfunction +0 -1
  1561. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_3__then_30.mcfunction +0 -2
  1562. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_4.mcfunction +0 -2
  1563. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_4__loop_body_34.mcfunction +0 -16
  1564. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_4__loop_body_34_continue.mcfunction +0 -1
  1565. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_4__loop_body_34_yield.mcfunction +0 -1
  1566. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_4__loop_header_33.mcfunction +0 -4
  1567. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_4__loop_header_33_exit.mcfunction +0 -1
  1568. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_5.mcfunction +0 -16
  1569. package/dist/data/test/function/_coro_pathfind_bfs_coro_cont_5__merge_26.mcfunction +0 -1
  1570. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick.mcfunction +0 -4
  1571. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__call_1.mcfunction +0 -1
  1572. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__call_2.mcfunction +0 -1
  1573. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__call_3.mcfunction +0 -1
  1574. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__call_4.mcfunction +0 -1
  1575. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__call_5.mcfunction +0 -1
  1576. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__check_2.mcfunction +0 -4
  1577. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__check_3.mcfunction +0 -4
  1578. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__check_4.mcfunction +0 -4
  1579. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__check_5.mcfunction +0 -4
  1580. package/dist/data/test/function/_coro_pathfind_bfs_coro_tick__done.mcfunction +0 -1
  1581. package/dist/data/test/function/_divider.mcfunction +0 -1
  1582. package/dist/data/test/function/_dump_advanced_phase.mcfunction +0 -4
  1583. package/dist/data/test/function/_dump_advanced_phase__loop_body_1.mcfunction +0 -7
  1584. package/dist/data/test/function/_dump_advanced_phase__loop_body_6.mcfunction +0 -10
  1585. package/dist/data/test/function/_dump_advanced_phase__loop_exit_2.mcfunction +0 -20
  1586. package/dist/data/test/function/_dump_advanced_phase__loop_exit_7.mcfunction +0 -12
  1587. package/dist/data/test/function/_dump_advanced_phase__loop_header_0.mcfunction +0 -4
  1588. package/dist/data/test/function/_dump_advanced_phase__loop_header_5.mcfunction +0 -4
  1589. package/dist/data/test/function/_dump_advanced_phase__merge_4.mcfunction +0 -4
  1590. package/dist/data/test/function/_dump_advanced_phase__then_3.mcfunction +0 -2
  1591. package/dist/data/test/function/_dump_bigint_phase.mcfunction +0 -28
  1592. package/dist/data/test/function/_dump_math_phase.mcfunction +0 -4
  1593. package/dist/data/test/function/_dump_math_phase__loop_body_1.mcfunction +0 -9
  1594. package/dist/data/test/function/_dump_math_phase__loop_exit_2.mcfunction +0 -18
  1595. package/dist/data/test/function/_dump_math_phase__loop_header_0.mcfunction +0 -4
  1596. package/dist/data/test/function/_fp.mcfunction +0 -2
  1597. package/dist/data/test/function/_hsl_chroma_x.mcfunction +0 -10
  1598. package/dist/data/test/function/_hsl_chroma_x__merge_1.mcfunction +0 -6
  1599. package/dist/data/test/function/_hsl_chroma_x__then_0.mcfunction +0 -4
  1600. package/dist/data/test/function/_math_init.mcfunction +0 -4
  1601. package/dist/data/test/function/_next_phase.mcfunction +0 -1
  1602. package/dist/data/test/function/_section.mcfunction +0 -3
  1603. package/dist/data/test/function/_section__const_0.mcfunction +0 -3
  1604. package/dist/data/test/function/_tick_advanced_live.mcfunction +0 -5
  1605. package/dist/data/test/function/_tick_advanced_live__foreach_t12.mcfunction +0 -1
  1606. package/dist/data/test/function/_tick_bigint_live.mcfunction +0 -8
  1607. package/dist/data/test/function/_tick_bigint_live__foreach_t11.mcfunction +0 -1
  1608. package/dist/data/test/function/_tick_math.mcfunction +0 -9
  1609. package/dist/data/test/function/_tick_math__foreach_t12.mcfunction +0 -1
  1610. package/dist/data/test/function/_tick_visual.mcfunction +0 -11
  1611. package/dist/data/test/function/_tick_visual__foreach_t12.mcfunction +0 -1
  1612. package/dist/data/test/function/_tick_visual__foreach_t16.mcfunction +0 -8
  1613. package/dist/data/test/function/_tick_visual__foreach_t17.mcfunction +0 -8
  1614. package/dist/data/test/function/_tick_visual__foreach_t21.mcfunction +0 -1
  1615. package/dist/data/test/function/aabb_contains.mcfunction +0 -12
  1616. package/dist/data/test/function/aabb_contains__merge_1.mcfunction +0 -3
  1617. package/dist/data/test/function/aabb_contains__merge_10.mcfunction +0 -3
  1618. package/dist/data/test/function/aabb_contains__merge_13.mcfunction +0 -3
  1619. package/dist/data/test/function/aabb_contains__merge_16.mcfunction +0 -2
  1620. package/dist/data/test/function/aabb_contains__merge_4.mcfunction +0 -3
  1621. package/dist/data/test/function/aabb_contains__merge_7.mcfunction +0 -3
  1622. package/dist/data/test/function/aabb_contains__then_0.mcfunction +0 -2
  1623. package/dist/data/test/function/aabb_contains__then_12.mcfunction +0 -2
  1624. package/dist/data/test/function/aabb_contains__then_15.mcfunction +0 -2
  1625. package/dist/data/test/function/aabb_contains__then_3.mcfunction +0 -2
  1626. package/dist/data/test/function/aabb_contains__then_6.mcfunction +0 -2
  1627. package/dist/data/test/function/aabb_contains__then_9.mcfunction +0 -2
  1628. package/dist/data/test/function/acos_approx.mcfunction +0 -7
  1629. package/dist/data/test/function/add2d_x.mcfunction +0 -5
  1630. package/dist/data/test/function/add2d_y.mcfunction +0 -5
  1631. package/dist/data/test/function/add3d_x.mcfunction +0 -5
  1632. package/dist/data/test/function/add3d_y.mcfunction +0 -5
  1633. package/dist/data/test/function/add3d_z.mcfunction +0 -5
  1634. package/dist/data/test/function/add_to_team.mcfunction +0 -5
  1635. package/dist/data/test/function/air_drag_fx.mcfunction +0 -2
  1636. package/dist/data/test/function/angle_between.mcfunction +0 -28
  1637. package/dist/data/test/function/angle_between__and_false_2.mcfunction +0 -2
  1638. package/dist/data/test/function/angle_between__and_false_8.mcfunction +0 -2
  1639. package/dist/data/test/function/angle_between__and_merge_1.mcfunction +0 -2
  1640. package/dist/data/test/function/angle_between__and_merge_7.mcfunction +0 -2
  1641. package/dist/data/test/function/angle_between__and_right_0.mcfunction +0 -4
  1642. package/dist/data/test/function/angle_between__and_right_6.mcfunction +0 -4
  1643. package/dist/data/test/function/angle_between__merge_10.mcfunction +0 -26
  1644. package/dist/data/test/function/angle_between__merge_4.mcfunction +0 -4
  1645. package/dist/data/test/function/angle_between__then_3.mcfunction +0 -2
  1646. package/dist/data/test/function/angle_between__then_9.mcfunction +0 -2
  1647. package/dist/data/test/function/angle_diff.mcfunction +0 -12
  1648. package/dist/data/test/function/angle_diff__merge_1.mcfunction +0 -1
  1649. package/dist/data/test/function/angle_diff__then_0.mcfunction +0 -4
  1650. package/dist/data/test/function/angle_normalize.mcfunction +0 -3
  1651. package/dist/data/test/function/angle_normalize__loop_body_1.mcfunction +0 -4
  1652. package/dist/data/test/function/angle_normalize__loop_body_4.mcfunction +0 -4
  1653. package/dist/data/test/function/angle_normalize__loop_exit_2.mcfunction +0 -1
  1654. package/dist/data/test/function/angle_normalize__loop_exit_5.mcfunction +0 -1
  1655. package/dist/data/test/function/angle_normalize__loop_header_0.mcfunction +0 -4
  1656. package/dist/data/test/function/angle_normalize__loop_header_3.mcfunction +0 -4
  1657. package/dist/data/test/function/angry_at.mcfunction +0 -1
  1658. package/dist/data/test/function/apply_damage.mcfunction +0 -12
  1659. package/dist/data/test/function/apply_damage__else_2.mcfunction +0 -2
  1660. package/dist/data/test/function/apply_damage__merge_1.mcfunction +0 -1
  1661. package/dist/data/test/function/apply_damage__then_0.mcfunction +0 -2
  1662. package/dist/data/test/function/apply_drag.mcfunction +0 -8
  1663. package/dist/data/test/function/apply_gravity.mcfunction +0 -6
  1664. package/dist/data/test/function/approx_eq.mcfunction +0 -10
  1665. package/dist/data/test/function/approx_eq__merge_1.mcfunction +0 -3
  1666. package/dist/data/test/function/approx_eq__merge_3.mcfunction +0 -2
  1667. package/dist/data/test/function/approx_eq__then_0.mcfunction +0 -4
  1668. package/dist/data/test/function/approx_eq__then_2.mcfunction +0 -2
  1669. package/dist/data/test/function/arr_test.mcfunction +0 -4
  1670. package/dist/data/test/function/asin_approx.mcfunction +0 -5
  1671. package/dist/data/test/function/asin_approx__merge_1.mcfunction +0 -3
  1672. package/dist/data/test/function/asin_approx__merge_10.mcfunction +0 -5
  1673. package/dist/data/test/function/asin_approx__merge_4.mcfunction +0 -12
  1674. package/dist/data/test/function/asin_approx__merge_7.mcfunction +0 -14
  1675. package/dist/data/test/function/asin_approx__then_0.mcfunction +0 -2
  1676. package/dist/data/test/function/asin_approx__then_3.mcfunction +0 -2
  1677. package/dist/data/test/function/asin_approx__then_6.mcfunction +0 -2
  1678. package/dist/data/test/function/asin_approx__then_9.mcfunction +0 -2
  1679. package/dist/data/test/function/atan2_fixed.mcfunction +0 -6
  1680. package/dist/data/test/function/atan2_fixed__else_30.mcfunction +0 -2
  1681. package/dist/data/test/function/atan2_fixed__loop_body_26.mcfunction +0 -21
  1682. package/dist/data/test/function/atan2_fixed__loop_exit_27.mcfunction +0 -5
  1683. package/dist/data/test/function/atan2_fixed__loop_header_25.mcfunction +0 -3
  1684. package/dist/data/test/function/atan2_fixed__merge_1.mcfunction +0 -4
  1685. package/dist/data/test/function/atan2_fixed__merge_10.mcfunction +0 -5
  1686. package/dist/data/test/function/atan2_fixed__merge_12.mcfunction +0 -2
  1687. package/dist/data/test/function/atan2_fixed__merge_16.mcfunction +0 -5
  1688. package/dist/data/test/function/atan2_fixed__merge_18.mcfunction +0 -4
  1689. package/dist/data/test/function/atan2_fixed__merge_20.mcfunction +0 -4
  1690. package/dist/data/test/function/atan2_fixed__merge_22.mcfunction +0 -4
  1691. package/dist/data/test/function/atan2_fixed__merge_24.mcfunction +0 -3
  1692. package/dist/data/test/function/atan2_fixed__merge_29.mcfunction +0 -1
  1693. package/dist/data/test/function/atan2_fixed__merge_3.mcfunction +0 -4
  1694. package/dist/data/test/function/atan2_fixed__merge_32.mcfunction +0 -4
  1695. package/dist/data/test/function/atan2_fixed__merge_34.mcfunction +0 -4
  1696. package/dist/data/test/function/atan2_fixed__merge_36.mcfunction +0 -3
  1697. package/dist/data/test/function/atan2_fixed__merge_40.mcfunction +0 -3
  1698. package/dist/data/test/function/atan2_fixed__merge_6.mcfunction +0 -2
  1699. package/dist/data/test/function/atan2_fixed__then_0.mcfunction +0 -4
  1700. package/dist/data/test/function/atan2_fixed__then_11.mcfunction +0 -2
  1701. package/dist/data/test/function/atan2_fixed__then_15.mcfunction +0 -4
  1702. package/dist/data/test/function/atan2_fixed__then_17.mcfunction +0 -4
  1703. package/dist/data/test/function/atan2_fixed__then_19.mcfunction +0 -2
  1704. package/dist/data/test/function/atan2_fixed__then_2.mcfunction +0 -2
  1705. package/dist/data/test/function/atan2_fixed__then_21.mcfunction +0 -2
  1706. package/dist/data/test/function/atan2_fixed__then_23.mcfunction +0 -5
  1707. package/dist/data/test/function/atan2_fixed__then_28.mcfunction +0 -4
  1708. package/dist/data/test/function/atan2_fixed__then_31.mcfunction +0 -4
  1709. package/dist/data/test/function/atan2_fixed__then_33.mcfunction +0 -4
  1710. package/dist/data/test/function/atan2_fixed__then_35.mcfunction +0 -1
  1711. package/dist/data/test/function/atan2_fixed__then_39.mcfunction +0 -3
  1712. package/dist/data/test/function/atan2_fixed__then_5.mcfunction +0 -2
  1713. package/dist/data/test/function/atan2_fixed__then_9.mcfunction +0 -4
  1714. package/dist/data/test/function/avg3.mcfunction +0 -11
  1715. package/dist/data/test/function/avg5.mcfunction +0 -17
  1716. package/dist/data/test/function/barrier_wall.mcfunction +0 -1
  1717. package/dist/data/test/function/bernoulli.mcfunction +0 -12
  1718. package/dist/data/test/function/bernoulli__merge_1.mcfunction +0 -6
  1719. package/dist/data/test/function/bernoulli__merge_3.mcfunction +0 -2
  1720. package/dist/data/test/function/bernoulli__then_0.mcfunction +0 -4
  1721. package/dist/data/test/function/bernoulli__then_2.mcfunction +0 -2
  1722. package/dist/data/test/function/bezier_cubic.mcfunction +0 -36
  1723. package/dist/data/test/function/bezier_quad.mcfunction +0 -20
  1724. package/dist/data/test/function/bigint3_add_hi.mcfunction +0 -11
  1725. package/dist/data/test/function/bigint3_add_lo.mcfunction +0 -8
  1726. package/dist/data/test/function/bigint3_add_mid.mcfunction +0 -11
  1727. package/dist/data/test/function/bigint3_borrow_lo.mcfunction +0 -5
  1728. package/dist/data/test/function/bigint3_borrow_lo__merge_1.mcfunction +0 -2
  1729. package/dist/data/test/function/bigint3_borrow_lo__then_0.mcfunction +0 -2
  1730. package/dist/data/test/function/bigint3_borrow_mid.mcfunction +0 -8
  1731. package/dist/data/test/function/bigint3_borrow_mid__merge_1.mcfunction +0 -2
  1732. package/dist/data/test/function/bigint3_borrow_mid__then_0.mcfunction +0 -2
  1733. package/dist/data/test/function/bigint3_carry_lo.mcfunction +0 -8
  1734. package/dist/data/test/function/bigint3_carry_mid.mcfunction +0 -11
  1735. package/dist/data/test/function/bigint3_cmp.mcfunction +0 -9
  1736. package/dist/data/test/function/bigint3_cmp__merge_1.mcfunction +0 -3
  1737. package/dist/data/test/function/bigint3_cmp__merge_10.mcfunction +0 -3
  1738. package/dist/data/test/function/bigint3_cmp__merge_13.mcfunction +0 -3
  1739. package/dist/data/test/function/bigint3_cmp__merge_16.mcfunction +0 -2
  1740. package/dist/data/test/function/bigint3_cmp__merge_4.mcfunction +0 -3
  1741. package/dist/data/test/function/bigint3_cmp__merge_7.mcfunction +0 -3
  1742. package/dist/data/test/function/bigint3_cmp__then_0.mcfunction +0 -2
  1743. package/dist/data/test/function/bigint3_cmp__then_12.mcfunction +0 -2
  1744. package/dist/data/test/function/bigint3_cmp__then_15.mcfunction +0 -2
  1745. package/dist/data/test/function/bigint3_cmp__then_3.mcfunction +0 -2
  1746. package/dist/data/test/function/bigint3_cmp__then_6.mcfunction +0 -2
  1747. package/dist/data/test/function/bigint3_cmp__then_9.mcfunction +0 -2
  1748. package/dist/data/test/function/bigint3_div_chunk.mcfunction +0 -11
  1749. package/dist/data/test/function/bigint3_mul1_hi.mcfunction +0 -8
  1750. package/dist/data/test/function/bigint3_mul1_lo.mcfunction +0 -8
  1751. package/dist/data/test/function/bigint3_mul1_mid.mcfunction +0 -2
  1752. package/dist/data/test/function/bigint3_rem_chunk.mcfunction +0 -11
  1753. package/dist/data/test/function/bigint3_sub_hi.mcfunction +0 -8
  1754. package/dist/data/test/function/bigint3_sub_lo.mcfunction +0 -5
  1755. package/dist/data/test/function/bigint3_sub_lo__merge_1.mcfunction +0 -5
  1756. package/dist/data/test/function/bigint3_sub_lo__then_0.mcfunction +0 -3
  1757. package/dist/data/test/function/bigint3_sub_mid.mcfunction +0 -12
  1758. package/dist/data/test/function/bigint3_sub_mid__merge_1.mcfunction +0 -1
  1759. package/dist/data/test/function/bigint3_sub_mid__then_0.mcfunction +0 -4
  1760. package/dist/data/test/function/bigint3_to_int32.mcfunction +0 -14
  1761. package/dist/data/test/function/bigint_add.mcfunction +0 -8
  1762. package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r.mcfunction +0 -6
  1763. package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r__loop_body_1.mcfunction +0 -22
  1764. package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r__loop_exit_2.mcfunction +0 -1
  1765. package/dist/data/test/function/bigint_add__arr_a__test_arrays__a__b__test_arrays__b__result__test_arrays__r__loop_header_0.mcfunction +0 -4
  1766. package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r.mcfunction +0 -6
  1767. package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r__loop_body_1.mcfunction +0 -22
  1768. package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r__loop_exit_2.mcfunction +0 -1
  1769. package/dist/data/test/function/bigint_add__arr_a__test_arrays__counter__b__test_arrays__one__result__test_arrays__r__loop_header_0.mcfunction +0 -4
  1770. package/dist/data/test/function/bigint_add__loop_body_1.mcfunction +0 -12
  1771. package/dist/data/test/function/bigint_add__loop_exit_2.mcfunction +0 -1
  1772. package/dist/data/test/function/bigint_add__loop_header_0.mcfunction +0 -4
  1773. package/dist/data/test/function/bigint_base.mcfunction +0 -2
  1774. package/dist/data/test/function/bigint_chunk.mcfunction +0 -2
  1775. package/dist/data/test/function/bigint_cmp.mcfunction +0 -5
  1776. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h.mcfunction +0 -3
  1777. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_body_1.mcfunction +0 -7
  1778. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_exit_2.mcfunction +0 -2
  1779. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__loop_header_0.mcfunction +0 -3
  1780. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__merge_4.mcfunction +0 -7
  1781. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__merge_7.mcfunction +0 -4
  1782. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__then_3.mcfunction +0 -2
  1783. package/dist/data/test/function/bigint_cmp__arr_a__test_arrays__g__b__test_arrays__h__then_6.mcfunction +0 -2
  1784. package/dist/data/test/function/bigint_cmp__loop_body_1.mcfunction +0 -3
  1785. package/dist/data/test/function/bigint_cmp__loop_exit_2.mcfunction +0 -2
  1786. package/dist/data/test/function/bigint_cmp__loop_header_0.mcfunction +0 -3
  1787. package/dist/data/test/function/bigint_cmp__merge_4.mcfunction +0 -3
  1788. package/dist/data/test/function/bigint_cmp__merge_7.mcfunction +0 -4
  1789. package/dist/data/test/function/bigint_cmp__then_3.mcfunction +0 -2
  1790. package/dist/data/test/function/bigint_cmp__then_6.mcfunction +0 -2
  1791. package/dist/data/test/function/bigint_copy.mcfunction +0 -3
  1792. package/dist/data/test/function/bigint_copy__loop_body_1.mcfunction +0 -4
  1793. package/dist/data/test/function/bigint_copy__loop_exit_2.mcfunction +0 -1
  1794. package/dist/data/test/function/bigint_copy__loop_header_0.mcfunction +0 -3
  1795. package/dist/data/test/function/bigint_div_small.mcfunction +0 -6
  1796. package/dist/data/test/function/bigint_div_small__loop_body_1.mcfunction +0 -12
  1797. package/dist/data/test/function/bigint_div_small__loop_exit_2.mcfunction +0 -1
  1798. package/dist/data/test/function/bigint_div_small__loop_header_0.mcfunction +0 -3
  1799. package/dist/data/test/function/bigint_is_zero.mcfunction +0 -4
  1800. package/dist/data/test/function/bigint_is_zero__loop_body_1.mcfunction +0 -4
  1801. package/dist/data/test/function/bigint_is_zero__loop_exit_2.mcfunction +0 -2
  1802. package/dist/data/test/function/bigint_is_zero__loop_header_0.mcfunction +0 -3
  1803. package/dist/data/test/function/bigint_is_zero__merge_4.mcfunction +0 -4
  1804. package/dist/data/test/function/bigint_is_zero__then_3.mcfunction +0 -2
  1805. package/dist/data/test/function/bigint_leading_zeros.mcfunction +0 -5
  1806. package/dist/data/test/function/bigint_leading_zeros__loop_body_1.mcfunction +0 -4
  1807. package/dist/data/test/function/bigint_leading_zeros__loop_exit_2.mcfunction +0 -1
  1808. package/dist/data/test/function/bigint_leading_zeros__loop_header_0.mcfunction +0 -3
  1809. package/dist/data/test/function/bigint_leading_zeros__merge_4.mcfunction +0 -9
  1810. package/dist/data/test/function/bigint_leading_zeros__then_3.mcfunction +0 -1
  1811. package/dist/data/test/function/bigint_mod_small.mcfunction +0 -6
  1812. package/dist/data/test/function/bigint_mod_small__loop_body_1.mcfunction +0 -12
  1813. package/dist/data/test/function/bigint_mod_small__loop_exit_2.mcfunction +0 -1
  1814. package/dist/data/test/function/bigint_mod_small__loop_header_0.mcfunction +0 -3
  1815. package/dist/data/test/function/bigint_mul_small.mcfunction +0 -8
  1816. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f.mcfunction +0 -7
  1817. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_body_1.mcfunction +0 -20
  1818. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_exit_2.mcfunction +0 -1
  1819. package/dist/data/test/function/bigint_mul_small__arr_a__test_arrays__e__result__test_arrays__f__loop_header_0.mcfunction +0 -4
  1820. package/dist/data/test/function/bigint_mul_small__loop_body_1.mcfunction +0 -12
  1821. package/dist/data/test/function/bigint_mul_small__loop_exit_2.mcfunction +0 -1
  1822. package/dist/data/test/function/bigint_mul_small__loop_header_0.mcfunction +0 -4
  1823. package/dist/data/test/function/bigint_shift_left.mcfunction +0 -3
  1824. package/dist/data/test/function/bigint_shift_left__loop_body_1.mcfunction +0 -4
  1825. package/dist/data/test/function/bigint_shift_left__loop_exit_2.mcfunction +0 -1
  1826. package/dist/data/test/function/bigint_shift_left__loop_header_0.mcfunction +0 -5
  1827. package/dist/data/test/function/bigint_sub.mcfunction +0 -8
  1828. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s.mcfunction +0 -6
  1829. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__loop_body_1.mcfunction +0 -13
  1830. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__loop_exit_2.mcfunction +0 -1
  1831. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__loop_header_0.mcfunction +0 -4
  1832. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__merge_4.mcfunction +0 -4
  1833. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__merge_6.mcfunction +0 -7
  1834. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__then_3.mcfunction +0 -5
  1835. package/dist/data/test/function/bigint_sub__arr_a__test_arrays__c__b__test_arrays__d__result__test_arrays__s__then_5.mcfunction +0 -2
  1836. package/dist/data/test/function/bigint_sub__loop_body_1.mcfunction +0 -9
  1837. package/dist/data/test/function/bigint_sub__loop_exit_2.mcfunction +0 -1
  1838. package/dist/data/test/function/bigint_sub__loop_header_0.mcfunction +0 -4
  1839. package/dist/data/test/function/bigint_sub__merge_4.mcfunction +0 -4
  1840. package/dist/data/test/function/bigint_sub__merge_6.mcfunction +0 -4
  1841. package/dist/data/test/function/bigint_sub__then_3.mcfunction +0 -5
  1842. package/dist/data/test/function/bigint_sub__then_5.mcfunction +0 -2
  1843. package/dist/data/test/function/bigint_zero.mcfunction +0 -3
  1844. package/dist/data/test/function/bigint_zero__loop_body_1.mcfunction +0 -4
  1845. package/dist/data/test/function/bigint_zero__loop_exit_2.mcfunction +0 -1
  1846. package/dist/data/test/function/bigint_zero__loop_header_0.mcfunction +0 -3
  1847. package/dist/data/test/function/billboard_y.mcfunction +0 -7
  1848. package/dist/data/test/function/bit_and.mcfunction +0 -6
  1849. package/dist/data/test/function/bit_and__loop_body_1.mcfunction +0 -9
  1850. package/dist/data/test/function/bit_and__loop_exit_2.mcfunction +0 -1
  1851. package/dist/data/test/function/bit_and__loop_header_0.mcfunction +0 -4
  1852. package/dist/data/test/function/bit_and__merge_4.mcfunction +0 -8
  1853. package/dist/data/test/function/bit_and__merge_6.mcfunction +0 -1
  1854. package/dist/data/test/function/bit_and__then_3.mcfunction +0 -9
  1855. package/dist/data/test/function/bit_and__then_5.mcfunction +0 -4
  1856. package/dist/data/test/function/bit_clear.mcfunction +0 -5
  1857. package/dist/data/test/function/bit_clear__loop_body_1.mcfunction +0 -8
  1858. package/dist/data/test/function/bit_clear__loop_exit_2.mcfunction +0 -9
  1859. package/dist/data/test/function/bit_clear__loop_header_0.mcfunction +0 -3
  1860. package/dist/data/test/function/bit_clear__merge_4.mcfunction +0 -1
  1861. package/dist/data/test/function/bit_clear__then_3.mcfunction +0 -3
  1862. package/dist/data/test/function/bit_get.mcfunction +0 -5
  1863. package/dist/data/test/function/bit_get__loop_body_1.mcfunction +0 -8
  1864. package/dist/data/test/function/bit_get__loop_exit_2.mcfunction +0 -6
  1865. package/dist/data/test/function/bit_get__loop_header_0.mcfunction +0 -3
  1866. package/dist/data/test/function/bit_not.mcfunction +0 -5
  1867. package/dist/data/test/function/bit_not__loop_body_1.mcfunction +0 -9
  1868. package/dist/data/test/function/bit_not__loop_exit_2.mcfunction +0 -1
  1869. package/dist/data/test/function/bit_not__loop_header_0.mcfunction +0 -4
  1870. package/dist/data/test/function/bit_not__merge_4.mcfunction +0 -8
  1871. package/dist/data/test/function/bit_not__then_3.mcfunction +0 -4
  1872. package/dist/data/test/function/bit_or.mcfunction +0 -6
  1873. package/dist/data/test/function/bit_or__loop_body_1.mcfunction +0 -9
  1874. package/dist/data/test/function/bit_or__loop_exit_2.mcfunction +0 -1
  1875. package/dist/data/test/function/bit_or__loop_header_0.mcfunction +0 -4
  1876. package/dist/data/test/function/bit_or__merge_4.mcfunction +0 -9
  1877. package/dist/data/test/function/bit_or__merge_6.mcfunction +0 -8
  1878. package/dist/data/test/function/bit_or__merge_8.mcfunction +0 -1
  1879. package/dist/data/test/function/bit_or__then_3.mcfunction +0 -4
  1880. package/dist/data/test/function/bit_or__then_5.mcfunction +0 -9
  1881. package/dist/data/test/function/bit_or__then_7.mcfunction +0 -4
  1882. package/dist/data/test/function/bit_set.mcfunction +0 -5
  1883. package/dist/data/test/function/bit_set__loop_body_1.mcfunction +0 -8
  1884. package/dist/data/test/function/bit_set__loop_exit_2.mcfunction +0 -9
  1885. package/dist/data/test/function/bit_set__loop_header_0.mcfunction +0 -3
  1886. package/dist/data/test/function/bit_set__merge_4.mcfunction +0 -1
  1887. package/dist/data/test/function/bit_set__then_3.mcfunction +0 -3
  1888. package/dist/data/test/function/bit_shl.mcfunction +0 -5
  1889. package/dist/data/test/function/bit_shl__loop_body_1.mcfunction +0 -8
  1890. package/dist/data/test/function/bit_shl__loop_exit_2.mcfunction +0 -1
  1891. package/dist/data/test/function/bit_shl__loop_header_0.mcfunction +0 -3
  1892. package/dist/data/test/function/bit_shr.mcfunction +0 -5
  1893. package/dist/data/test/function/bit_shr__loop_body_1.mcfunction +0 -8
  1894. package/dist/data/test/function/bit_shr__loop_exit_2.mcfunction +0 -1
  1895. package/dist/data/test/function/bit_shr__loop_header_0.mcfunction +0 -3
  1896. package/dist/data/test/function/bit_toggle.mcfunction +0 -5
  1897. package/dist/data/test/function/bit_toggle__loop_body_1.mcfunction +0 -8
  1898. package/dist/data/test/function/bit_toggle__loop_exit_2.mcfunction +0 -9
  1899. package/dist/data/test/function/bit_toggle__loop_header_0.mcfunction +0 -3
  1900. package/dist/data/test/function/bit_toggle__merge_4.mcfunction +0 -3
  1901. package/dist/data/test/function/bit_toggle__then_3.mcfunction +0 -3
  1902. package/dist/data/test/function/bit_xor.mcfunction +0 -6
  1903. package/dist/data/test/function/bit_xor__loop_body_1.mcfunction +0 -13
  1904. package/dist/data/test/function/bit_xor__loop_exit_2.mcfunction +0 -1
  1905. package/dist/data/test/function/bit_xor__loop_header_0.mcfunction +0 -4
  1906. package/dist/data/test/function/bit_xor__merge_4.mcfunction +0 -8
  1907. package/dist/data/test/function/bit_xor__then_3.mcfunction +0 -4
  1908. package/dist/data/test/function/bounce_v.mcfunction +0 -10
  1909. package/dist/data/test/function/buff_all.mcfunction +0 -22
  1910. package/dist/data/test/function/cbrt_fx.mcfunction +0 -5
  1911. package/dist/data/test/function/cbrt_fx__loop_body_6.mcfunction +0 -7
  1912. package/dist/data/test/function/cbrt_fx__loop_exit_7.mcfunction +0 -1
  1913. package/dist/data/test/function/cbrt_fx__loop_header_5.mcfunction +0 -4
  1914. package/dist/data/test/function/cbrt_fx__merge_1.mcfunction +0 -8
  1915. package/dist/data/test/function/cbrt_fx__merge_11.mcfunction +0 -5
  1916. package/dist/data/test/function/cbrt_fx__merge_13.mcfunction +0 -4
  1917. package/dist/data/test/function/cbrt_fx__merge_4.mcfunction +0 -2
  1918. package/dist/data/test/function/cbrt_fx__merge_9.mcfunction +0 -13
  1919. package/dist/data/test/function/cbrt_fx__then_0.mcfunction +0 -2
  1920. package/dist/data/test/function/cbrt_fx__then_10.mcfunction +0 -2
  1921. package/dist/data/test/function/cbrt_fx__then_12.mcfunction +0 -2
  1922. package/dist/data/test/function/cbrt_fx__then_3.mcfunction +0 -2
  1923. package/dist/data/test/function/cbrt_fx__then_8.mcfunction +0 -2
  1924. package/dist/data/test/function/cbrt_newton.mcfunction +0 -5
  1925. package/dist/data/test/function/cbrt_newton__else_7.mcfunction +0 -2
  1926. package/dist/data/test/function/cbrt_newton__merge_1.mcfunction +0 -11
  1927. package/dist/data/test/function/cbrt_newton__merge_4.mcfunction +0 -1
  1928. package/dist/data/test/function/cbrt_newton__merge_6.mcfunction +0 -1
  1929. package/dist/data/test/function/cbrt_newton__then_0.mcfunction +0 -2
  1930. package/dist/data/test/function/cbrt_newton__then_3.mcfunction +0 -17
  1931. package/dist/data/test/function/cbrt_newton__then_5.mcfunction +0 -11
  1932. package/dist/data/test/function/ceil_div.mcfunction +0 -9
  1933. package/dist/data/test/function/chebyshev.mcfunction +0 -14
  1934. package/dist/data/test/function/chebyshev3d.mcfunction +0 -19
  1935. package/dist/data/test/function/chebyshev3d__merge_1.mcfunction +0 -4
  1936. package/dist/data/test/function/chebyshev3d__merge_3.mcfunction +0 -4
  1937. package/dist/data/test/function/chebyshev3d__merge_5.mcfunction +0 -4
  1938. package/dist/data/test/function/chebyshev3d__merge_7.mcfunction +0 -3
  1939. package/dist/data/test/function/chebyshev3d__merge_9.mcfunction +0 -1
  1940. package/dist/data/test/function/chebyshev3d__then_0.mcfunction +0 -4
  1941. package/dist/data/test/function/chebyshev3d__then_2.mcfunction +0 -4
  1942. package/dist/data/test/function/chebyshev3d__then_4.mcfunction +0 -4
  1943. package/dist/data/test/function/chebyshev3d__then_6.mcfunction +0 -2
  1944. package/dist/data/test/function/chebyshev3d__then_8.mcfunction +0 -2
  1945. package/dist/data/test/function/chebyshev__merge_1.mcfunction +0 -4
  1946. package/dist/data/test/function/chebyshev__merge_3.mcfunction +0 -3
  1947. package/dist/data/test/function/chebyshev__merge_5.mcfunction +0 -1
  1948. package/dist/data/test/function/chebyshev__then_0.mcfunction +0 -4
  1949. package/dist/data/test/function/chebyshev__then_2.mcfunction +0 -4
  1950. package/dist/data/test/function/chebyshev__then_4.mcfunction +0 -1
  1951. package/dist/data/test/function/check_holding_item.mcfunction +0 -1
  1952. package/dist/data/test/function/check_look_down.mcfunction +0 -1
  1953. package/dist/data/test/function/check_look_down__foreach_t0.mcfunction +0 -2
  1954. package/dist/data/test/function/check_look_straight.mcfunction +0 -1
  1955. package/dist/data/test/function/check_look_straight__foreach_t0.mcfunction +0 -2
  1956. package/dist/data/test/function/check_look_up.mcfunction +0 -1
  1957. package/dist/data/test/function/check_look_up__foreach_t0.mcfunction +0 -2
  1958. package/dist/data/test/function/chunk_hi.mcfunction +0 -5
  1959. package/dist/data/test/function/chunk_lo.mcfunction +0 -5
  1960. package/dist/data/test/function/circular_x.mcfunction +0 -14
  1961. package/dist/data/test/function/circular_z.mcfunction +0 -14
  1962. package/dist/data/test/function/clamp3.mcfunction +0 -7
  1963. package/dist/data/test/function/clamp3__merge_1.mcfunction +0 -4
  1964. package/dist/data/test/function/clamp3__merge_4.mcfunction +0 -1
  1965. package/dist/data/test/function/clamp3__then_0.mcfunction +0 -1
  1966. package/dist/data/test/function/clamp3__then_3.mcfunction +0 -1
  1967. package/dist/data/test/function/clamp_circle_x.mcfunction +0 -13
  1968. package/dist/data/test/function/clamp_circle_x__merge_1.mcfunction +0 -10
  1969. package/dist/data/test/function/clamp_circle_x__then_0.mcfunction +0 -1
  1970. package/dist/data/test/function/clamp_circle_y.mcfunction +0 -13
  1971. package/dist/data/test/function/clamp_circle_y__merge_1.mcfunction +0 -10
  1972. package/dist/data/test/function/clamp_circle_y__then_0.mcfunction +0 -1
  1973. package/dist/data/test/function/clamp_velocity.mcfunction +0 -5
  1974. package/dist/data/test/function/clamp_velocity__merge_1.mcfunction +0 -5
  1975. package/dist/data/test/function/clamp_velocity__merge_4.mcfunction +0 -1
  1976. package/dist/data/test/function/clamp_velocity__then_0.mcfunction +0 -1
  1977. package/dist/data/test/function/clamp_velocity__then_3.mcfunction +0 -3
  1978. package/dist/data/test/function/cleanup_teams.mcfunction +0 -8
  1979. package/dist/data/test/function/clear_area.mcfunction +0 -1
  1980. package/dist/data/test/function/clear_effect.mcfunction +0 -1
  1981. package/dist/data/test/function/clear_effects.mcfunction +0 -1
  1982. package/dist/data/test/function/clear_inventory.mcfunction +0 -1
  1983. package/dist/data/test/function/collatz_steps.mcfunction +0 -5
  1984. package/dist/data/test/function/collatz_steps__else_8.mcfunction +0 -6
  1985. package/dist/data/test/function/collatz_steps__loop_body_4.mcfunction +0 -7
  1986. package/dist/data/test/function/collatz_steps__loop_exit_5.mcfunction +0 -1
  1987. package/dist/data/test/function/collatz_steps__loop_header_3.mcfunction +0 -4
  1988. package/dist/data/test/function/collatz_steps__merge_1.mcfunction +0 -3
  1989. package/dist/data/test/function/collatz_steps__merge_7.mcfunction +0 -4
  1990. package/dist/data/test/function/collatz_steps__then_0.mcfunction +0 -2
  1991. package/dist/data/test/function/collatz_steps__then_6.mcfunction +0 -5
  1992. package/dist/data/test/function/combinations.mcfunction +0 -6
  1993. package/dist/data/test/function/combinations__loop_body_9.mcfunction +0 -15
  1994. package/dist/data/test/function/combinations__loop_exit_10.mcfunction +0 -1
  1995. package/dist/data/test/function/combinations__loop_header_8.mcfunction +0 -3
  1996. package/dist/data/test/function/combinations__merge_1.mcfunction +0 -3
  1997. package/dist/data/test/function/combinations__merge_4.mcfunction +0 -6
  1998. package/dist/data/test/function/combinations__merge_7.mcfunction +0 -3
  1999. package/dist/data/test/function/combinations__then_0.mcfunction +0 -2
  2000. package/dist/data/test/function/combinations__then_3.mcfunction +0 -2
  2001. package/dist/data/test/function/combinations__then_6.mcfunction +0 -4
  2002. package/dist/data/test/function/cooldown_ready.mcfunction +0 -7
  2003. package/dist/data/test/function/cooldown_ready__merge_1.mcfunction +0 -4
  2004. package/dist/data/test/function/cooldown_ready__merge_4.mcfunction +0 -2
  2005. package/dist/data/test/function/cooldown_ready__then_0.mcfunction +0 -2
  2006. package/dist/data/test/function/cooldown_ready__then_3.mcfunction +0 -2
  2007. package/dist/data/test/function/cooldown_start.mcfunction +0 -3
  2008. package/dist/data/test/function/cooldown_tick.mcfunction +0 -7
  2009. package/dist/data/test/function/cooldown_tick__else_5.mcfunction +0 -2
  2010. package/dist/data/test/function/cooldown_tick__merge_1.mcfunction +0 -4
  2011. package/dist/data/test/function/cooldown_tick__merge_4.mcfunction +0 -1
  2012. package/dist/data/test/function/cooldown_tick__merge_7.mcfunction +0 -1
  2013. package/dist/data/test/function/cooldown_tick__then_0.mcfunction +0 -1
  2014. package/dist/data/test/function/cooldown_tick__then_3.mcfunction +0 -7
  2015. package/dist/data/test/function/cooldown_tick__then_6.mcfunction +0 -2
  2016. package/dist/data/test/function/cos_fixed.mcfunction +0 -7
  2017. package/dist/data/test/function/cos_fixed__const_0.mcfunction +0 -5
  2018. package/dist/data/test/function/cos_hp.mcfunction +0 -8
  2019. package/dist/data/test/function/count_digits.mcfunction +0 -6
  2020. package/dist/data/test/function/count_digits__loop_body_6.mcfunction +0 -8
  2021. package/dist/data/test/function/count_digits__loop_exit_7.mcfunction +0 -1
  2022. package/dist/data/test/function/count_digits__loop_header_5.mcfunction +0 -4
  2023. package/dist/data/test/function/count_digits__merge_1.mcfunction +0 -4
  2024. package/dist/data/test/function/count_digits__merge_3.mcfunction +0 -2
  2025. package/dist/data/test/function/count_digits__then_0.mcfunction +0 -4
  2026. package/dist/data/test/function/count_digits__then_2.mcfunction +0 -2
  2027. package/dist/data/test/function/create_blue_team.mcfunction +0 -10
  2028. package/dist/data/test/function/create_green_team.mcfunction +0 -10
  2029. package/dist/data/test/function/create_health_bar.mcfunction +0 -24
  2030. package/dist/data/test/function/create_progress_bar.mcfunction +0 -24
  2031. package/dist/data/test/function/create_red_team.mcfunction +0 -10
  2032. package/dist/data/test/function/create_team.mcfunction +0 -8
  2033. package/dist/data/test/function/create_timer_bar.mcfunction +0 -30
  2034. package/dist/data/test/function/create_yellow_team.mcfunction +0 -10
  2035. package/dist/data/test/function/cross2d.mcfunction +0 -11
  2036. package/dist/data/test/function/cross3d_x.mcfunction +0 -11
  2037. package/dist/data/test/function/cross3d_y.mcfunction +0 -11
  2038. package/dist/data/test/function/cross3d_z.mcfunction +0 -11
  2039. package/dist/data/test/function/cubic_disc_fx.mcfunction +0 -26
  2040. package/dist/data/test/function/cubic_newton.mcfunction +0 -8
  2041. package/dist/data/test/function/cubic_newton__loop_body_1.mcfunction +0 -55
  2042. package/dist/data/test/function/cubic_newton__loop_exit_2.mcfunction +0 -1
  2043. package/dist/data/test/function/cubic_newton__loop_header_0.mcfunction +0 -4
  2044. package/dist/data/test/function/cubic_newton__merge_10.mcfunction +0 -1
  2045. package/dist/data/test/function/cubic_newton__merge_4.mcfunction +0 -4
  2046. package/dist/data/test/function/cubic_newton__merge_6.mcfunction +0 -4
  2047. package/dist/data/test/function/cubic_newton__merge_8.mcfunction +0 -4
  2048. package/dist/data/test/function/cubic_newton__then_3.mcfunction +0 -2
  2049. package/dist/data/test/function/cubic_newton__then_5.mcfunction +0 -13
  2050. package/dist/data/test/function/cubic_newton__then_7.mcfunction +0 -4
  2051. package/dist/data/test/function/cubic_newton__then_9.mcfunction +0 -2
  2052. package/dist/data/test/function/curve_length_2d.mcfunction +0 -6
  2053. package/dist/data/test/function/curve_length_2d__loop_body_1.mcfunction +0 -32
  2054. package/dist/data/test/function/curve_length_2d__loop_exit_2.mcfunction +0 -1
  2055. package/dist/data/test/function/curve_length_2d__loop_header_0.mcfunction +0 -5
  2056. package/dist/data/test/function/cylinder_contains.mcfunction +0 -20
  2057. package/dist/data/test/function/cylinder_contains__merge_1.mcfunction +0 -2
  2058. package/dist/data/test/function/cylinder_contains__then_0.mcfunction +0 -2
  2059. package/dist/data/test/function/damage.mcfunction +0 -9
  2060. package/dist/data/test/function/damage__else_2.mcfunction +0 -2
  2061. package/dist/data/test/function/damage__merge_1.mcfunction +0 -1
  2062. package/dist/data/test/function/damage__then_0.mcfunction +0 -2
  2063. package/dist/data/test/function/debug_bigint.mcfunction +0 -25
  2064. package/dist/data/test/function/deriv_central.mcfunction +0 -7
  2065. package/dist/data/test/function/deriv_central__merge_1.mcfunction +0 -10
  2066. package/dist/data/test/function/deriv_central__then_0.mcfunction +0 -2
  2067. package/dist/data/test/function/deriv_forward.mcfunction +0 -7
  2068. package/dist/data/test/function/deriv_forward__merge_1.mcfunction +0 -8
  2069. package/dist/data/test/function/deriv_forward__then_0.mcfunction +0 -2
  2070. package/dist/data/test/function/digit_sum.mcfunction +0 -6
  2071. package/dist/data/test/function/digit_sum__loop_body_6.mcfunction +0 -11
  2072. package/dist/data/test/function/digit_sum__loop_exit_7.mcfunction +0 -1
  2073. package/dist/data/test/function/digit_sum__loop_header_5.mcfunction +0 -4
  2074. package/dist/data/test/function/digit_sum__merge_1.mcfunction +0 -4
  2075. package/dist/data/test/function/digit_sum__merge_3.mcfunction +0 -2
  2076. package/dist/data/test/function/digit_sum__then_0.mcfunction +0 -4
  2077. package/dist/data/test/function/digit_sum__then_2.mcfunction +0 -2
  2078. package/dist/data/test/function/digital_root.mcfunction +0 -5
  2079. package/dist/data/test/function/digital_root__merge_1.mcfunction +0 -8
  2080. package/dist/data/test/function/digital_root__merge_4.mcfunction +0 -1
  2081. package/dist/data/test/function/digital_root__then_0.mcfunction +0 -2
  2082. package/dist/data/test/function/digital_root__then_3.mcfunction +0 -2
  2083. package/dist/data/test/function/disable_fire_spread.mcfunction +0 -1
  2084. package/dist/data/test/function/disable_keep_inventory.mcfunction +0 -1
  2085. package/dist/data/test/function/disable_mob_griefing.mcfunction +0 -1
  2086. package/dist/data/test/function/distance2d_fixed.mcfunction +0 -13
  2087. package/dist/data/test/function/distance3d_fixed.mcfunction +0 -18
  2088. package/dist/data/test/function/div3_hp.mcfunction +0 -23
  2089. package/dist/data/test/function/div_hp.mcfunction +0 -13
  2090. package/dist/data/test/function/divfix.mcfunction +0 -6
  2091. package/dist/data/test/function/divfix__merge_1.mcfunction +0 -6
  2092. package/dist/data/test/function/divfix__then_0.mcfunction +0 -2
  2093. package/dist/data/test/function/dot2d.mcfunction +0 -11
  2094. package/dist/data/test/function/dot3d.mcfunction +0 -17
  2095. package/dist/data/test/function/draw_circle.mcfunction +0 -8
  2096. package/dist/data/test/function/draw_circle__loop_body_1.mcfunction +0 -34
  2097. package/dist/data/test/function/draw_circle__loop_exit_2.mcfunction +0 -1
  2098. package/dist/data/test/function/draw_circle__loop_header_0.mcfunction +0 -3
  2099. package/dist/data/test/function/draw_helix.mcfunction +0 -10
  2100. package/dist/data/test/function/draw_helix__loop_body_1.mcfunction +0 -42
  2101. package/dist/data/test/function/draw_helix__loop_exit_2.mcfunction +0 -1
  2102. package/dist/data/test/function/draw_helix__loop_header_0.mcfunction +0 -3
  2103. package/dist/data/test/function/draw_line_2d.mcfunction +0 -9
  2104. package/dist/data/test/function/draw_line_2d__loop_body_1.mcfunction +0 -34
  2105. package/dist/data/test/function/draw_line_2d__loop_exit_2.mcfunction +0 -1
  2106. package/dist/data/test/function/draw_line_2d__loop_header_0.mcfunction +0 -3
  2107. package/dist/data/test/function/dump_advanced.mcfunction +0 -1
  2108. package/dist/data/test/function/dump_bigint.mcfunction +0 -1
  2109. package/dist/data/test/function/dump_math.mcfunction +0 -1
  2110. package/dist/data/test/function/ease_in_back.mcfunction +0 -26
  2111. package/dist/data/test/function/ease_in_bounce.mcfunction +0 -9
  2112. package/dist/data/test/function/ease_in_cubic.mcfunction +0 -12
  2113. package/dist/data/test/function/ease_in_expo.mcfunction +0 -5
  2114. package/dist/data/test/function/ease_in_expo__merge_1.mcfunction +0 -11
  2115. package/dist/data/test/function/ease_in_expo__then_0.mcfunction +0 -2
  2116. package/dist/data/test/function/ease_in_out_back.mcfunction +0 -5
  2117. package/dist/data/test/function/ease_in_out_back__merge_1.mcfunction +0 -14
  2118. package/dist/data/test/function/ease_in_out_back__then_0.mcfunction +0 -10
  2119. package/dist/data/test/function/ease_in_out_bounce.mcfunction +0 -5
  2120. package/dist/data/test/function/ease_in_out_bounce__merge_1.mcfunction +0 -14
  2121. package/dist/data/test/function/ease_in_out_bounce__then_0.mcfunction +0 -10
  2122. package/dist/data/test/function/ease_in_out_cubic.mcfunction +0 -5
  2123. package/dist/data/test/function/ease_in_out_cubic__merge_1.mcfunction +0 -17
  2124. package/dist/data/test/function/ease_in_out_cubic__then_0.mcfunction +0 -13
  2125. package/dist/data/test/function/ease_in_out_quad.mcfunction +0 -5
  2126. package/dist/data/test/function/ease_in_out_quad__merge_1.mcfunction +0 -12
  2127. package/dist/data/test/function/ease_in_out_quad__then_0.mcfunction +0 -8
  2128. package/dist/data/test/function/ease_in_out_sine.mcfunction +0 -5
  2129. package/dist/data/test/function/ease_in_out_sine__merge_1.mcfunction +0 -14
  2130. package/dist/data/test/function/ease_in_out_sine__then_0.mcfunction +0 -10
  2131. package/dist/data/test/function/ease_in_quad.mcfunction +0 -7
  2132. package/dist/data/test/function/ease_in_quart.mcfunction +0 -12
  2133. package/dist/data/test/function/ease_in_sine.mcfunction +0 -30
  2134. package/dist/data/test/function/ease_linear.mcfunction +0 -2
  2135. package/dist/data/test/function/ease_out_back.mcfunction +0 -9
  2136. package/dist/data/test/function/ease_out_bounce.mcfunction +0 -6
  2137. package/dist/data/test/function/ease_out_bounce__merge_1.mcfunction +0 -4
  2138. package/dist/data/test/function/ease_out_bounce__merge_4.mcfunction +0 -4
  2139. package/dist/data/test/function/ease_out_bounce__merge_7.mcfunction +0 -15
  2140. package/dist/data/test/function/ease_out_bounce__then_0.mcfunction +0 -11
  2141. package/dist/data/test/function/ease_out_bounce__then_3.mcfunction +0 -15
  2142. package/dist/data/test/function/ease_out_bounce__then_6.mcfunction +0 -15
  2143. package/dist/data/test/function/ease_out_cubic.mcfunction +0 -16
  2144. package/dist/data/test/function/ease_out_expo.mcfunction +0 -5
  2145. package/dist/data/test/function/ease_out_expo__merge_1.mcfunction +0 -8
  2146. package/dist/data/test/function/ease_out_expo__then_0.mcfunction +0 -2
  2147. package/dist/data/test/function/ease_out_quad.mcfunction +0 -11
  2148. package/dist/data/test/function/ease_out_quart.mcfunction +0 -16
  2149. package/dist/data/test/function/ease_out_sine.mcfunction +0 -9
  2150. package/dist/data/test/function/ease_smooth.mcfunction +0 -23
  2151. package/dist/data/test/function/ease_smoother.mcfunction +0 -41
  2152. package/dist/data/test/function/enable_keep_inventory.mcfunction +0 -1
  2153. package/dist/data/test/function/end_sparkles_at.mcfunction +0 -1
  2154. package/dist/data/test/function/enemy_health.mcfunction +0 -2
  2155. package/dist/data/test/function/example_right_click.mcfunction +0 -1
  2156. package/dist/data/test/function/example_right_click__foreach_t0.mcfunction +0 -5
  2157. package/dist/data/test/function/example_right_click__foreach_t0__merge_1.mcfunction +0 -1
  2158. package/dist/data/test/function/example_right_click__foreach_t0__then_0.mcfunction +0 -3
  2159. package/dist/data/test/function/exp_dist_approx.mcfunction +0 -12
  2160. package/dist/data/test/function/exp_dist_approx__merge_1.mcfunction +0 -15
  2161. package/dist/data/test/function/exp_dist_approx__merge_3.mcfunction +0 -10
  2162. package/dist/data/test/function/exp_dist_approx__merge_5.mcfunction +0 -1
  2163. package/dist/data/test/function/exp_dist_approx__then_0.mcfunction +0 -4
  2164. package/dist/data/test/function/exp_dist_approx__then_2.mcfunction +0 -2
  2165. package/dist/data/test/function/exp_dist_approx__then_4.mcfunction +0 -2
  2166. package/dist/data/test/function/exp_fx.mcfunction +0 -16
  2167. package/dist/data/test/function/exp_fx__loop_body_10.mcfunction +0 -8
  2168. package/dist/data/test/function/exp_fx__loop_body_5.mcfunction +0 -8
  2169. package/dist/data/test/function/exp_fx__loop_exit_11.mcfunction +0 -1
  2170. package/dist/data/test/function/exp_fx__loop_exit_6.mcfunction +0 -1
  2171. package/dist/data/test/function/exp_fx__loop_header_4.mcfunction +0 -3
  2172. package/dist/data/test/function/exp_fx__loop_header_9.mcfunction +0 -3
  2173. package/dist/data/test/function/exp_fx__merge_1.mcfunction +0 -47
  2174. package/dist/data/test/function/exp_fx__merge_3.mcfunction +0 -4
  2175. package/dist/data/test/function/exp_fx__merge_8.mcfunction +0 -1
  2176. package/dist/data/test/function/exp_fx__then_0.mcfunction +0 -7
  2177. package/dist/data/test/function/exp_fx__then_2.mcfunction +0 -2
  2178. package/dist/data/test/function/exp_fx__then_7.mcfunction +0 -5
  2179. package/dist/data/test/function/explosion_effect.mcfunction +0 -1
  2180. package/dist/data/test/function/factorial.mcfunction +0 -5
  2181. package/dist/data/test/function/factorial__loop_body_4.mcfunction +0 -7
  2182. package/dist/data/test/function/factorial__loop_exit_5.mcfunction +0 -1
  2183. package/dist/data/test/function/factorial__loop_header_3.mcfunction +0 -3
  2184. package/dist/data/test/function/factorial__merge_1.mcfunction +0 -3
  2185. package/dist/data/test/function/factorial__then_0.mcfunction +0 -2
  2186. package/dist/data/test/function/fbm_1d.mcfunction +0 -9
  2187. package/dist/data/test/function/fbm_1d__loop_body_1.mcfunction +0 -33
  2188. package/dist/data/test/function/fbm_1d__loop_exit_2.mcfunction +0 -4
  2189. package/dist/data/test/function/fbm_1d__loop_header_0.mcfunction +0 -3
  2190. package/dist/data/test/function/fbm_1d__merge_4.mcfunction +0 -6
  2191. package/dist/data/test/function/fbm_1d__then_3.mcfunction +0 -2
  2192. package/dist/data/test/function/fbm_2d.mcfunction +0 -10
  2193. package/dist/data/test/function/fbm_2d__loop_body_1.mcfunction +0 -39
  2194. package/dist/data/test/function/fbm_2d__loop_exit_2.mcfunction +0 -4
  2195. package/dist/data/test/function/fbm_2d__loop_header_0.mcfunction +0 -3
  2196. package/dist/data/test/function/fbm_2d__merge_4.mcfunction +0 -6
  2197. package/dist/data/test/function/fbm_2d__then_3.mcfunction +0 -2
  2198. package/dist/data/test/function/fib.mcfunction +0 -5
  2199. package/dist/data/test/function/fib__loop_body_7.mcfunction +0 -8
  2200. package/dist/data/test/function/fib__loop_exit_8.mcfunction +0 -1
  2201. package/dist/data/test/function/fib__loop_header_6.mcfunction +0 -3
  2202. package/dist/data/test/function/fib__merge_1.mcfunction +0 -4
  2203. package/dist/data/test/function/fib__merge_4.mcfunction +0 -4
  2204. package/dist/data/test/function/fib__then_0.mcfunction +0 -2
  2205. package/dist/data/test/function/fib__then_3.mcfunction +0 -2
  2206. package/dist/data/test/function/flames.mcfunction +0 -1
  2207. package/dist/data/test/function/format_time_h.mcfunction +0 -5
  2208. package/dist/data/test/function/format_time_m.mcfunction +0 -8
  2209. package/dist/data/test/function/format_time_s.mcfunction +0 -8
  2210. package/dist/data/test/function/friction_decel.mcfunction +0 -5
  2211. package/dist/data/test/function/friction_decel__merge_1.mcfunction +0 -5
  2212. package/dist/data/test/function/friction_decel__merge_4.mcfunction +0 -2
  2213. package/dist/data/test/function/friction_decel__then_0.mcfunction +0 -3
  2214. package/dist/data/test/function/friction_decel__then_3.mcfunction +0 -3
  2215. package/dist/data/test/function/gamma_int.mcfunction +0 -5
  2216. package/dist/data/test/function/gamma_int__merge_1.mcfunction +0 -6
  2217. package/dist/data/test/function/gamma_int__then_0.mcfunction +0 -2
  2218. package/dist/data/test/function/gather_all.mcfunction +0 -8
  2219. package/dist/data/test/function/gcd.mcfunction +0 -7
  2220. package/dist/data/test/function/gcd__loop_body_5.mcfunction +0 -5
  2221. package/dist/data/test/function/gcd__loop_exit_6.mcfunction +0 -1
  2222. package/dist/data/test/function/gcd__loop_header_4.mcfunction +0 -4
  2223. package/dist/data/test/function/gcd__merge_1.mcfunction +0 -5
  2224. package/dist/data/test/function/gcd__merge_3.mcfunction +0 -1
  2225. package/dist/data/test/function/gcd__then_0.mcfunction +0 -4
  2226. package/dist/data/test/function/gcd__then_2.mcfunction +0 -4
  2227. package/dist/data/test/function/give_kit_archer.mcfunction +0 -6
  2228. package/dist/data/test/function/give_kit_mage.mcfunction +0 -5
  2229. package/dist/data/test/function/give_kit_warrior.mcfunction +0 -6
  2230. package/dist/data/test/function/glass_box.mcfunction +0 -2
  2231. package/dist/data/test/function/glow.mcfunction +0 -1
  2232. package/dist/data/test/function/goto_arena.mcfunction +0 -7
  2233. package/dist/data/test/function/goto_lobby.mcfunction +0 -7
  2234. package/dist/data/test/function/gravity_fx.mcfunction +0 -2
  2235. package/dist/data/test/function/happy_at.mcfunction +0 -1
  2236. package/dist/data/test/function/hash_1d.mcfunction +0 -15
  2237. package/dist/data/test/function/hash_1d_pos.mcfunction +0 -9
  2238. package/dist/data/test/function/hash_1d_pos__merge_1.mcfunction +0 -4
  2239. package/dist/data/test/function/hash_1d_pos__then_0.mcfunction +0 -4
  2240. package/dist/data/test/function/hash_2d.mcfunction +0 -11
  2241. package/dist/data/test/function/hash_2d_pos.mcfunction +0 -11
  2242. package/dist/data/test/function/hash_2d_pos__merge_1.mcfunction +0 -4
  2243. package/dist/data/test/function/hash_2d_pos__then_0.mcfunction +0 -4
  2244. package/dist/data/test/function/hash_int.mcfunction +0 -6
  2245. package/dist/data/test/function/hash_int__merge_1.mcfunction +0 -14
  2246. package/dist/data/test/function/hash_int__merge_3.mcfunction +0 -14
  2247. package/dist/data/test/function/hash_int__merge_5.mcfunction +0 -1
  2248. package/dist/data/test/function/hash_int__then_0.mcfunction +0 -4
  2249. package/dist/data/test/function/hash_int__then_2.mcfunction +0 -4
  2250. package/dist/data/test/function/hash_int__then_4.mcfunction +0 -4
  2251. package/dist/data/test/function/heal.mcfunction +0 -5
  2252. package/dist/data/test/function/heap_new.mcfunction +0 -7
  2253. package/dist/data/test/function/heap_new__loop_body_1.mcfunction +0 -7
  2254. package/dist/data/test/function/heap_new__loop_exit_2.mcfunction +0 -1
  2255. package/dist/data/test/function/heap_new__loop_header_0.mcfunction +0 -4
  2256. package/dist/data/test/function/heap_peek.mcfunction +0 -2
  2257. package/dist/data/test/function/heap_pop.mcfunction +0 -4
  2258. package/dist/data/test/function/heap_pop__else_13.mcfunction +0 -2
  2259. package/dist/data/test/function/heap_pop__loop_body_1.mcfunction +0 -14
  2260. package/dist/data/test/function/heap_pop__loop_exit_2.mcfunction +0 -1
  2261. package/dist/data/test/function/heap_pop__loop_header_0.mcfunction +0 -4
  2262. package/dist/data/test/function/heap_pop__merge_10.mcfunction +0 -1
  2263. package/dist/data/test/function/heap_pop__merge_12.mcfunction +0 -1
  2264. package/dist/data/test/function/heap_pop__merge_4.mcfunction +0 -3
  2265. package/dist/data/test/function/heap_pop__merge_6.mcfunction +0 -1
  2266. package/dist/data/test/function/heap_pop__merge_8.mcfunction +0 -3
  2267. package/dist/data/test/function/heap_pop__then_11.mcfunction +0 -2
  2268. package/dist/data/test/function/heap_pop__then_3.mcfunction +0 -3
  2269. package/dist/data/test/function/heap_pop__then_5.mcfunction +0 -2
  2270. package/dist/data/test/function/heap_pop__then_7.mcfunction +0 -3
  2271. package/dist/data/test/function/heap_pop__then_9.mcfunction +0 -2
  2272. package/dist/data/test/function/heap_push.mcfunction +0 -6
  2273. package/dist/data/test/function/heap_push__else_5.mcfunction +0 -2
  2274. package/dist/data/test/function/heap_push__else_8.mcfunction +0 -2
  2275. package/dist/data/test/function/heap_push__loop_body_1.mcfunction +0 -4
  2276. package/dist/data/test/function/heap_push__loop_exit_2.mcfunction +0 -1
  2277. package/dist/data/test/function/heap_push__loop_header_0.mcfunction +0 -4
  2278. package/dist/data/test/function/heap_push__merge_4.mcfunction +0 -1
  2279. package/dist/data/test/function/heap_push__merge_7.mcfunction +0 -1
  2280. package/dist/data/test/function/heap_push__then_3.mcfunction +0 -7
  2281. package/dist/data/test/function/heap_push__then_6.mcfunction +0 -2
  2282. package/dist/data/test/function/heap_size.mcfunction +0 -2
  2283. package/dist/data/test/function/hearts_at.mcfunction +0 -1
  2284. package/dist/data/test/function/hide_bar.mcfunction +0 -4
  2285. package/dist/data/test/function/hsl_to_b.mcfunction +0 -23
  2286. package/dist/data/test/function/hsl_to_b__merge_1.mcfunction +0 -29
  2287. package/dist/data/test/function/hsl_to_b__merge_12.mcfunction +0 -4
  2288. package/dist/data/test/function/hsl_to_b__merge_15.mcfunction +0 -3
  2289. package/dist/data/test/function/hsl_to_b__merge_3.mcfunction +0 -4
  2290. package/dist/data/test/function/hsl_to_b__merge_6.mcfunction +0 -4
  2291. package/dist/data/test/function/hsl_to_b__merge_9.mcfunction +0 -4
  2292. package/dist/data/test/function/hsl_to_b__then_0.mcfunction +0 -4
  2293. package/dist/data/test/function/hsl_to_b__then_11.mcfunction +0 -3
  2294. package/dist/data/test/function/hsl_to_b__then_14.mcfunction +0 -3
  2295. package/dist/data/test/function/hsl_to_b__then_2.mcfunction +0 -1
  2296. package/dist/data/test/function/hsl_to_b__then_5.mcfunction +0 -1
  2297. package/dist/data/test/function/hsl_to_b__then_8.mcfunction +0 -3
  2298. package/dist/data/test/function/hsl_to_g.mcfunction +0 -23
  2299. package/dist/data/test/function/hsl_to_g__merge_1.mcfunction +0 -29
  2300. package/dist/data/test/function/hsl_to_g__merge_12.mcfunction +0 -4
  2301. package/dist/data/test/function/hsl_to_g__merge_15.mcfunction +0 -1
  2302. package/dist/data/test/function/hsl_to_g__merge_3.mcfunction +0 -4
  2303. package/dist/data/test/function/hsl_to_g__merge_6.mcfunction +0 -4
  2304. package/dist/data/test/function/hsl_to_g__merge_9.mcfunction +0 -4
  2305. package/dist/data/test/function/hsl_to_g__then_0.mcfunction +0 -4
  2306. package/dist/data/test/function/hsl_to_g__then_11.mcfunction +0 -3
  2307. package/dist/data/test/function/hsl_to_g__then_14.mcfunction +0 -1
  2308. package/dist/data/test/function/hsl_to_g__then_2.mcfunction +0 -3
  2309. package/dist/data/test/function/hsl_to_g__then_5.mcfunction +0 -3
  2310. package/dist/data/test/function/hsl_to_g__then_8.mcfunction +0 -3
  2311. package/dist/data/test/function/hsl_to_packed.mcfunction +0 -24
  2312. package/dist/data/test/function/hsl_to_r.mcfunction +0 -23
  2313. package/dist/data/test/function/hsl_to_r__merge_1.mcfunction +0 -29
  2314. package/dist/data/test/function/hsl_to_r__merge_12.mcfunction +0 -4
  2315. package/dist/data/test/function/hsl_to_r__merge_15.mcfunction +0 -3
  2316. package/dist/data/test/function/hsl_to_r__merge_3.mcfunction +0 -4
  2317. package/dist/data/test/function/hsl_to_r__merge_6.mcfunction +0 -4
  2318. package/dist/data/test/function/hsl_to_r__merge_9.mcfunction +0 -4
  2319. package/dist/data/test/function/hsl_to_r__then_0.mcfunction +0 -4
  2320. package/dist/data/test/function/hsl_to_r__then_11.mcfunction +0 -1
  2321. package/dist/data/test/function/hsl_to_r__then_14.mcfunction +0 -3
  2322. package/dist/data/test/function/hsl_to_r__then_2.mcfunction +0 -3
  2323. package/dist/data/test/function/hsl_to_r__then_5.mcfunction +0 -3
  2324. package/dist/data/test/function/hsl_to_r__then_8.mcfunction +0 -1
  2325. package/dist/data/test/function/impact_velocity.mcfunction +0 -5
  2326. package/dist/data/test/function/impact_velocity__merge_1.mcfunction +0 -16
  2327. package/dist/data/test/function/impact_velocity__then_0.mcfunction +0 -2
  2328. package/dist/data/test/function/init_div.mcfunction +0 -1
  2329. package/dist/data/test/function/init_trig.mcfunction +0 -1
  2330. package/dist/data/test/function/insertion_sort.mcfunction +0 -4
  2331. package/dist/data/test/function/insertion_sort__else_11.mcfunction +0 -2
  2332. package/dist/data/test/function/insertion_sort__else_8.mcfunction +0 -2
  2333. package/dist/data/test/function/insertion_sort__loop_body_1.mcfunction +0 -6
  2334. package/dist/data/test/function/insertion_sort__loop_body_4.mcfunction +0 -4
  2335. package/dist/data/test/function/insertion_sort__loop_exit_2.mcfunction +0 -1
  2336. package/dist/data/test/function/insertion_sort__loop_exit_5.mcfunction +0 -4
  2337. package/dist/data/test/function/insertion_sort__loop_header_0.mcfunction +0 -3
  2338. package/dist/data/test/function/insertion_sort__loop_header_3.mcfunction +0 -4
  2339. package/dist/data/test/function/insertion_sort__merge_10.mcfunction +0 -1
  2340. package/dist/data/test/function/insertion_sort__merge_7.mcfunction +0 -1
  2341. package/dist/data/test/function/insertion_sort__then_6.mcfunction +0 -3
  2342. package/dist/data/test/function/insertion_sort__then_9.mcfunction +0 -4
  2343. package/dist/data/test/function/insertion_sort_desc.mcfunction +0 -4
  2344. package/dist/data/test/function/insertion_sort_desc__else_11.mcfunction +0 -2
  2345. package/dist/data/test/function/insertion_sort_desc__else_8.mcfunction +0 -2
  2346. package/dist/data/test/function/insertion_sort_desc__loop_body_1.mcfunction +0 -6
  2347. package/dist/data/test/function/insertion_sort_desc__loop_body_4.mcfunction +0 -4
  2348. package/dist/data/test/function/insertion_sort_desc__loop_exit_2.mcfunction +0 -1
  2349. package/dist/data/test/function/insertion_sort_desc__loop_exit_5.mcfunction +0 -4
  2350. package/dist/data/test/function/insertion_sort_desc__loop_header_0.mcfunction +0 -3
  2351. package/dist/data/test/function/insertion_sort_desc__loop_header_3.mcfunction +0 -4
  2352. package/dist/data/test/function/insertion_sort_desc__merge_10.mcfunction +0 -1
  2353. package/dist/data/test/function/insertion_sort_desc__merge_7.mcfunction +0 -1
  2354. package/dist/data/test/function/insertion_sort_desc__then_6.mcfunction +0 -3
  2355. package/dist/data/test/function/insertion_sort_desc__then_9.mcfunction +0 -4
  2356. package/dist/data/test/function/int32_to_bigint3_hi.mcfunction +0 -5
  2357. package/dist/data/test/function/int32_to_bigint3_hi__merge_1.mcfunction +0 -4
  2358. package/dist/data/test/function/int32_to_bigint3_hi__then_0.mcfunction +0 -4
  2359. package/dist/data/test/function/int32_to_bigint3_lo.mcfunction +0 -5
  2360. package/dist/data/test/function/int32_to_bigint3_lo__merge_1.mcfunction +0 -4
  2361. package/dist/data/test/function/int32_to_bigint3_lo__then_0.mcfunction +0 -4
  2362. package/dist/data/test/function/int32_to_bigint3_mid.mcfunction +0 -5
  2363. package/dist/data/test/function/int32_to_bigint3_mid__merge_1.mcfunction +0 -7
  2364. package/dist/data/test/function/int32_to_bigint3_mid__then_0.mcfunction +0 -4
  2365. package/dist/data/test/function/integrate_simpson.mcfunction +0 -7
  2366. package/dist/data/test/function/integrate_simpson__loop_body_6.mcfunction +0 -7
  2367. package/dist/data/test/function/integrate_simpson__loop_exit_7.mcfunction +0 -6
  2368. package/dist/data/test/function/integrate_simpson__loop_header_5.mcfunction +0 -5
  2369. package/dist/data/test/function/integrate_simpson__merge_1.mcfunction +0 -8
  2370. package/dist/data/test/function/integrate_simpson__merge_11.mcfunction +0 -4
  2371. package/dist/data/test/function/integrate_simpson__merge_4.mcfunction +0 -5
  2372. package/dist/data/test/function/integrate_simpson__merge_9.mcfunction +0 -7
  2373. package/dist/data/test/function/integrate_simpson__then_0.mcfunction +0 -6
  2374. package/dist/data/test/function/integrate_simpson__then_10.mcfunction +0 -6
  2375. package/dist/data/test/function/integrate_simpson__then_3.mcfunction +0 -4
  2376. package/dist/data/test/function/integrate_simpson__then_8.mcfunction +0 -6
  2377. package/dist/data/test/function/integrate_trapezoid.mcfunction +0 -7
  2378. package/dist/data/test/function/integrate_trapezoid__loop_body_4.mcfunction +0 -7
  2379. package/dist/data/test/function/integrate_trapezoid__loop_exit_5.mcfunction +0 -6
  2380. package/dist/data/test/function/integrate_trapezoid__loop_header_3.mcfunction +0 -5
  2381. package/dist/data/test/function/integrate_trapezoid__merge_1.mcfunction +0 -11
  2382. package/dist/data/test/function/integrate_trapezoid__then_0.mcfunction +0 -2
  2383. package/dist/data/test/function/interactions_init.mcfunction +0 -9
  2384. package/dist/data/test/function/invisible.mcfunction +0 -1
  2385. package/dist/data/test/function/is_grounded.mcfunction +0 -5
  2386. package/dist/data/test/function/is_grounded__merge_1.mcfunction +0 -2
  2387. package/dist/data/test/function/is_grounded__then_0.mcfunction +0 -2
  2388. package/dist/data/test/function/is_op.mcfunction +0 -2
  2389. package/dist/data/test/function/is_op__exec_t1.mcfunction +0 -1
  2390. package/dist/data/test/function/is_prime.mcfunction +0 -5
  2391. package/dist/data/test/function/is_prime__loop_body_10.mcfunction +0 -6
  2392. package/dist/data/test/function/is_prime__loop_exit_11.mcfunction +0 -2
  2393. package/dist/data/test/function/is_prime__loop_header_9.mcfunction +0 -5
  2394. package/dist/data/test/function/is_prime__merge_1.mcfunction +0 -4
  2395. package/dist/data/test/function/is_prime__merge_13.mcfunction +0 -4
  2396. package/dist/data/test/function/is_prime__merge_4.mcfunction +0 -7
  2397. package/dist/data/test/function/is_prime__merge_7.mcfunction +0 -2
  2398. package/dist/data/test/function/is_prime__then_0.mcfunction +0 -2
  2399. package/dist/data/test/function/is_prime__then_12.mcfunction +0 -2
  2400. package/dist/data/test/function/is_prime__then_3.mcfunction +0 -2
  2401. package/dist/data/test/function/is_prime__then_6.mcfunction +0 -2
  2402. package/dist/data/test/function/is_sneaking.mcfunction +0 -5
  2403. package/dist/data/test/function/is_sneaking__merge_1.mcfunction +0 -2
  2404. package/dist/data/test/function/is_sneaking__then_0.mcfunction +0 -2
  2405. package/dist/data/test/function/isqrt.mcfunction +0 -5
  2406. package/dist/data/test/function/isqrt__loop_body_10.mcfunction +0 -8
  2407. package/dist/data/test/function/isqrt__loop_body_13.mcfunction +0 -11
  2408. package/dist/data/test/function/isqrt__loop_body_7.mcfunction +0 -8
  2409. package/dist/data/test/function/isqrt__loop_exit_11.mcfunction +0 -2
  2410. package/dist/data/test/function/isqrt__loop_exit_14.mcfunction +0 -1
  2411. package/dist/data/test/function/isqrt__loop_exit_8.mcfunction +0 -9
  2412. package/dist/data/test/function/isqrt__loop_header_12.mcfunction +0 -4
  2413. package/dist/data/test/function/isqrt__loop_header_6.mcfunction +0 -4
  2414. package/dist/data/test/function/isqrt__loop_header_9.mcfunction +0 -3
  2415. package/dist/data/test/function/isqrt__merge_1.mcfunction +0 -4
  2416. package/dist/data/test/function/isqrt__merge_16.mcfunction +0 -5
  2417. package/dist/data/test/function/isqrt__merge_4.mcfunction +0 -3
  2418. package/dist/data/test/function/isqrt__then_0.mcfunction +0 -2
  2419. package/dist/data/test/function/isqrt__then_15.mcfunction +0 -1
  2420. package/dist/data/test/function/isqrt__then_3.mcfunction +0 -2
  2421. package/dist/data/test/function/julia_iter.mcfunction +0 -9
  2422. package/dist/data/test/function/julia_iter__loop_body_1.mcfunction +0 -36
  2423. package/dist/data/test/function/julia_iter__loop_exit_2.mcfunction +0 -1
  2424. package/dist/data/test/function/julia_iter__loop_header_0.mcfunction +0 -3
  2425. package/dist/data/test/function/julia_iter__merge_4.mcfunction +0 -4
  2426. package/dist/data/test/function/julia_iter__then_3.mcfunction +0 -1
  2427. package/dist/data/test/function/jump.mcfunction +0 -1
  2428. package/dist/data/test/function/lambda_demo.mcfunction +0 -2
  2429. package/dist/data/test/function/launch_up.mcfunction +0 -6
  2430. package/dist/data/test/function/lcm.mcfunction +0 -11
  2431. package/dist/data/test/function/lcm__merge_1.mcfunction +0 -5
  2432. package/dist/data/test/function/lcm__then_0.mcfunction +0 -2
  2433. package/dist/data/test/function/length2d_fixed.mcfunction +0 -15
  2434. package/dist/data/test/function/length3d_fixed.mcfunction +0 -20
  2435. package/dist/data/test/function/lerp.mcfunction +0 -13
  2436. package/dist/data/test/function/lerp2d_x.mcfunction +0 -13
  2437. package/dist/data/test/function/lerp2d_y.mcfunction +0 -13
  2438. package/dist/data/test/function/lerp_angle.mcfunction +0 -7
  2439. package/dist/data/test/function/lerp_angle__loop_body_1.mcfunction +0 -4
  2440. package/dist/data/test/function/lerp_angle__loop_body_4.mcfunction +0 -4
  2441. package/dist/data/test/function/lerp_angle__loop_exit_2.mcfunction +0 -1
  2442. package/dist/data/test/function/lerp_angle__loop_exit_5.mcfunction +0 -8
  2443. package/dist/data/test/function/lerp_angle__loop_header_0.mcfunction +0 -4
  2444. package/dist/data/test/function/lerp_angle__loop_header_3.mcfunction +0 -3
  2445. package/dist/data/test/function/list_avg.mcfunction +0 -9
  2446. package/dist/data/test/function/list_clamp_all.mcfunction +0 -6
  2447. package/dist/data/test/function/list_clamp_all__loop_body_1.mcfunction +0 -4
  2448. package/dist/data/test/function/list_clamp_all__loop_exit_2.mcfunction +0 -1
  2449. package/dist/data/test/function/list_clamp_all__loop_header_0.mcfunction +0 -4
  2450. package/dist/data/test/function/list_clamp_all__merge_4.mcfunction +0 -4
  2451. package/dist/data/test/function/list_clamp_all__merge_6.mcfunction +0 -4
  2452. package/dist/data/test/function/list_clamp_all__then_3.mcfunction +0 -1
  2453. package/dist/data/test/function/list_clamp_all__then_5.mcfunction +0 -1
  2454. package/dist/data/test/function/list_contains.mcfunction +0 -5
  2455. package/dist/data/test/function/list_contains__loop_body_1.mcfunction +0 -4
  2456. package/dist/data/test/function/list_contains__loop_exit_2.mcfunction +0 -2
  2457. package/dist/data/test/function/list_contains__loop_header_0.mcfunction +0 -4
  2458. package/dist/data/test/function/list_contains__merge_4.mcfunction +0 -4
  2459. package/dist/data/test/function/list_contains__then_3.mcfunction +0 -2
  2460. package/dist/data/test/function/list_count_if_gt.mcfunction +0 -6
  2461. package/dist/data/test/function/list_count_if_gt__loop_body_1.mcfunction +0 -4
  2462. package/dist/data/test/function/list_count_if_gt__loop_exit_2.mcfunction +0 -1
  2463. package/dist/data/test/function/list_count_if_gt__loop_header_0.mcfunction +0 -4
  2464. package/dist/data/test/function/list_count_if_gt__merge_4.mcfunction +0 -4
  2465. package/dist/data/test/function/list_count_if_gt__then_3.mcfunction +0 -4
  2466. package/dist/data/test/function/list_fill.mcfunction +0 -3
  2467. package/dist/data/test/function/list_fill__loop_body_1.mcfunction +0 -4
  2468. package/dist/data/test/function/list_fill__loop_exit_2.mcfunction +0 -1
  2469. package/dist/data/test/function/list_fill__loop_header_0.mcfunction +0 -4
  2470. package/dist/data/test/function/list_index_of.mcfunction +0 -5
  2471. package/dist/data/test/function/list_index_of__loop_body_1.mcfunction +0 -4
  2472. package/dist/data/test/function/list_index_of__loop_exit_2.mcfunction +0 -2
  2473. package/dist/data/test/function/list_index_of__loop_header_0.mcfunction +0 -4
  2474. package/dist/data/test/function/list_index_of__merge_4.mcfunction +0 -4
  2475. package/dist/data/test/function/list_index_of__then_3.mcfunction +0 -1
  2476. package/dist/data/test/function/list_max.mcfunction +0 -5
  2477. package/dist/data/test/function/list_max3.mcfunction +0 -7
  2478. package/dist/data/test/function/list_max3__merge_1.mcfunction +0 -3
  2479. package/dist/data/test/function/list_max3__merge_3.mcfunction +0 -1
  2480. package/dist/data/test/function/list_max3__then_0.mcfunction +0 -2
  2481. package/dist/data/test/function/list_max3__then_2.mcfunction +0 -2
  2482. package/dist/data/test/function/list_max5.mcfunction +0 -9
  2483. package/dist/data/test/function/list_max5__merge_1.mcfunction +0 -3
  2484. package/dist/data/test/function/list_max5__merge_3.mcfunction +0 -3
  2485. package/dist/data/test/function/list_max5__merge_5.mcfunction +0 -3
  2486. package/dist/data/test/function/list_max5__merge_7.mcfunction +0 -1
  2487. package/dist/data/test/function/list_max5__then_0.mcfunction +0 -2
  2488. package/dist/data/test/function/list_max5__then_2.mcfunction +0 -2
  2489. package/dist/data/test/function/list_max5__then_4.mcfunction +0 -2
  2490. package/dist/data/test/function/list_max5__then_6.mcfunction +0 -2
  2491. package/dist/data/test/function/list_max__loop_body_1.mcfunction +0 -4
  2492. package/dist/data/test/function/list_max__loop_exit_2.mcfunction +0 -1
  2493. package/dist/data/test/function/list_max__loop_header_0.mcfunction +0 -4
  2494. package/dist/data/test/function/list_max__merge_4.mcfunction +0 -4
  2495. package/dist/data/test/function/list_max__then_3.mcfunction +0 -2
  2496. package/dist/data/test/function/list_min.mcfunction +0 -5
  2497. package/dist/data/test/function/list_min3.mcfunction +0 -7
  2498. package/dist/data/test/function/list_min3__merge_1.mcfunction +0 -3
  2499. package/dist/data/test/function/list_min3__merge_3.mcfunction +0 -1
  2500. package/dist/data/test/function/list_min3__then_0.mcfunction +0 -2
  2501. package/dist/data/test/function/list_min3__then_2.mcfunction +0 -2
  2502. package/dist/data/test/function/list_min5.mcfunction +0 -9
  2503. package/dist/data/test/function/list_min5__merge_1.mcfunction +0 -3
  2504. package/dist/data/test/function/list_min5__merge_3.mcfunction +0 -3
  2505. package/dist/data/test/function/list_min5__merge_5.mcfunction +0 -3
  2506. package/dist/data/test/function/list_min5__merge_7.mcfunction +0 -1
  2507. package/dist/data/test/function/list_min5__then_0.mcfunction +0 -2
  2508. package/dist/data/test/function/list_min5__then_2.mcfunction +0 -2
  2509. package/dist/data/test/function/list_min5__then_4.mcfunction +0 -2
  2510. package/dist/data/test/function/list_min5__then_6.mcfunction +0 -2
  2511. package/dist/data/test/function/list_min__loop_body_1.mcfunction +0 -4
  2512. package/dist/data/test/function/list_min__loop_exit_2.mcfunction +0 -1
  2513. package/dist/data/test/function/list_min__loop_header_0.mcfunction +0 -4
  2514. package/dist/data/test/function/list_min__merge_4.mcfunction +0 -4
  2515. package/dist/data/test/function/list_min__then_3.mcfunction +0 -2
  2516. package/dist/data/test/function/list_reverse.mcfunction +0 -6
  2517. package/dist/data/test/function/list_reverse__loop_body_1.mcfunction +0 -9
  2518. package/dist/data/test/function/list_reverse__loop_exit_2.mcfunction +0 -1
  2519. package/dist/data/test/function/list_reverse__loop_header_0.mcfunction +0 -4
  2520. package/dist/data/test/function/list_sort_asc.mcfunction +0 -4
  2521. package/dist/data/test/function/list_sort_asc__loop_body_1.mcfunction +0 -2
  2522. package/dist/data/test/function/list_sort_asc__loop_body_4.mcfunction +0 -3
  2523. package/dist/data/test/function/list_sort_asc__loop_exit_2.mcfunction +0 -1
  2524. package/dist/data/test/function/list_sort_asc__loop_exit_5.mcfunction +0 -4
  2525. package/dist/data/test/function/list_sort_asc__loop_header_0.mcfunction +0 -5
  2526. package/dist/data/test/function/list_sort_asc__loop_header_3.mcfunction +0 -7
  2527. package/dist/data/test/function/list_sort_asc__merge_7.mcfunction +0 -4
  2528. package/dist/data/test/function/list_sort_asc__then_6.mcfunction +0 -1
  2529. package/dist/data/test/function/list_sort_desc.mcfunction +0 -4
  2530. package/dist/data/test/function/list_sort_desc__loop_body_1.mcfunction +0 -2
  2531. package/dist/data/test/function/list_sort_desc__loop_body_4.mcfunction +0 -3
  2532. package/dist/data/test/function/list_sort_desc__loop_exit_2.mcfunction +0 -1
  2533. package/dist/data/test/function/list_sort_desc__loop_exit_5.mcfunction +0 -4
  2534. package/dist/data/test/function/list_sort_desc__loop_header_0.mcfunction +0 -5
  2535. package/dist/data/test/function/list_sort_desc__loop_header_3.mcfunction +0 -7
  2536. package/dist/data/test/function/list_sort_desc__merge_7.mcfunction +0 -4
  2537. package/dist/data/test/function/list_sort_desc__then_6.mcfunction +0 -1
  2538. package/dist/data/test/function/list_sum.mcfunction +0 -5
  2539. package/dist/data/test/function/list_sum3.mcfunction +0 -8
  2540. package/dist/data/test/function/list_sum4.mcfunction +0 -11
  2541. package/dist/data/test/function/list_sum5.mcfunction +0 -14
  2542. package/dist/data/test/function/list_sum__loop_body_1.mcfunction +0 -7
  2543. package/dist/data/test/function/list_sum__loop_exit_2.mcfunction +0 -1
  2544. package/dist/data/test/function/list_sum__loop_header_0.mcfunction +0 -4
  2545. package/dist/data/test/function/ln.mcfunction +0 -9
  2546. package/dist/data/test/function/ln__loop_body_1.mcfunction +0 -8
  2547. package/dist/data/test/function/ln__loop_body_4.mcfunction +0 -8
  2548. package/dist/data/test/function/ln__loop_exit_2.mcfunction +0 -1
  2549. package/dist/data/test/function/ln__loop_exit_5.mcfunction +0 -37
  2550. package/dist/data/test/function/ln__loop_header_0.mcfunction +0 -3
  2551. package/dist/data/test/function/ln__loop_header_3.mcfunction +0 -6
  2552. package/dist/data/test/function/log10_fx.mcfunction +0 -11
  2553. package/dist/data/test/function/log2_fx.mcfunction +0 -11
  2554. package/dist/data/test/function/log2_int.mcfunction +0 -5
  2555. package/dist/data/test/function/log2_int__loop_body_4.mcfunction +0 -8
  2556. package/dist/data/test/function/log2_int__loop_exit_5.mcfunction +0 -1
  2557. package/dist/data/test/function/log2_int__loop_header_3.mcfunction +0 -4
  2558. package/dist/data/test/function/log2_int__merge_1.mcfunction +0 -3
  2559. package/dist/data/test/function/log2_int__then_0.mcfunction +0 -2
  2560. package/dist/data/test/function/loga_fx.mcfunction +0 -10
  2561. package/dist/data/test/function/loga_fx__merge_1.mcfunction +0 -9
  2562. package/dist/data/test/function/loga_fx__then_0.mcfunction +0 -2
  2563. package/dist/data/test/function/mandelbrot_iter.mcfunction +0 -7
  2564. package/dist/data/test/function/mandelbrot_iter__loop_body_1.mcfunction +0 -36
  2565. package/dist/data/test/function/mandelbrot_iter__loop_exit_2.mcfunction +0 -1
  2566. package/dist/data/test/function/mandelbrot_iter__loop_header_0.mcfunction +0 -3
  2567. package/dist/data/test/function/mandelbrot_iter__merge_4.mcfunction +0 -4
  2568. package/dist/data/test/function/mandelbrot_iter__then_3.mcfunction +0 -1
  2569. package/dist/data/test/function/manhattan.mcfunction +0 -14
  2570. package/dist/data/test/function/manhattan3d.mcfunction +0 -19
  2571. package/dist/data/test/function/manhattan3d__merge_1.mcfunction +0 -4
  2572. package/dist/data/test/function/manhattan3d__merge_3.mcfunction +0 -4
  2573. package/dist/data/test/function/manhattan3d__merge_5.mcfunction +0 -5
  2574. package/dist/data/test/function/manhattan3d__then_0.mcfunction +0 -4
  2575. package/dist/data/test/function/manhattan3d__then_2.mcfunction +0 -4
  2576. package/dist/data/test/function/manhattan3d__then_4.mcfunction +0 -4
  2577. package/dist/data/test/function/manhattan__merge_1.mcfunction +0 -4
  2578. package/dist/data/test/function/manhattan__merge_3.mcfunction +0 -3
  2579. package/dist/data/test/function/manhattan__then_0.mcfunction +0 -4
  2580. package/dist/data/test/function/manhattan__then_2.mcfunction +0 -4
  2581. package/dist/data/test/function/map.mcfunction +0 -12
  2582. package/dist/data/test/function/map__merge_1.mcfunction +0 -11
  2583. package/dist/data/test/function/map__then_0.mcfunction +0 -1
  2584. package/dist/data/test/function/max_heap_pop.mcfunction +0 -4
  2585. package/dist/data/test/function/max_heap_pop__else_13.mcfunction +0 -2
  2586. package/dist/data/test/function/max_heap_pop__loop_body_1.mcfunction +0 -14
  2587. package/dist/data/test/function/max_heap_pop__loop_exit_2.mcfunction +0 -1
  2588. package/dist/data/test/function/max_heap_pop__loop_header_0.mcfunction +0 -4
  2589. package/dist/data/test/function/max_heap_pop__merge_10.mcfunction +0 -1
  2590. package/dist/data/test/function/max_heap_pop__merge_12.mcfunction +0 -1
  2591. package/dist/data/test/function/max_heap_pop__merge_4.mcfunction +0 -3
  2592. package/dist/data/test/function/max_heap_pop__merge_6.mcfunction +0 -1
  2593. package/dist/data/test/function/max_heap_pop__merge_8.mcfunction +0 -3
  2594. package/dist/data/test/function/max_heap_pop__then_11.mcfunction +0 -2
  2595. package/dist/data/test/function/max_heap_pop__then_3.mcfunction +0 -3
  2596. package/dist/data/test/function/max_heap_pop__then_5.mcfunction +0 -2
  2597. package/dist/data/test/function/max_heap_pop__then_7.mcfunction +0 -3
  2598. package/dist/data/test/function/max_heap_pop__then_9.mcfunction +0 -2
  2599. package/dist/data/test/function/max_heap_push.mcfunction +0 -6
  2600. package/dist/data/test/function/max_heap_push__else_5.mcfunction +0 -2
  2601. package/dist/data/test/function/max_heap_push__else_8.mcfunction +0 -2
  2602. package/dist/data/test/function/max_heap_push__loop_body_1.mcfunction +0 -4
  2603. package/dist/data/test/function/max_heap_push__loop_exit_2.mcfunction +0 -1
  2604. package/dist/data/test/function/max_heap_push__loop_header_0.mcfunction +0 -4
  2605. package/dist/data/test/function/max_heap_push__merge_4.mcfunction +0 -1
  2606. package/dist/data/test/function/max_heap_push__merge_7.mcfunction +0 -1
  2607. package/dist/data/test/function/max_heap_push__then_3.mcfunction +0 -7
  2608. package/dist/data/test/function/max_heap_push__then_6.mcfunction +0 -2
  2609. package/dist/data/test/function/mc_day_angle.mcfunction +0 -16
  2610. package/dist/data/test/function/midpoint.mcfunction +0 -8
  2611. package/dist/data/test/function/mod_pow.mcfunction +0 -7
  2612. package/dist/data/test/function/mod_pow__loop_body_6.mcfunction +0 -7
  2613. package/dist/data/test/function/mod_pow__loop_exit_7.mcfunction +0 -1
  2614. package/dist/data/test/function/mod_pow__loop_header_5.mcfunction +0 -4
  2615. package/dist/data/test/function/mod_pow__merge_1.mcfunction +0 -8
  2616. package/dist/data/test/function/mod_pow__merge_4.mcfunction +0 -2
  2617. package/dist/data/test/function/mod_pow__merge_9.mcfunction +0 -10
  2618. package/dist/data/test/function/mod_pow__then_0.mcfunction +0 -2
  2619. package/dist/data/test/function/mod_pow__then_3.mcfunction +0 -4
  2620. package/dist/data/test/function/mod_pow__then_8.mcfunction +0 -6
  2621. package/dist/data/test/function/mulfix.mcfunction +0 -8
  2622. package/dist/data/test/function/neg2d_x.mcfunction +0 -4
  2623. package/dist/data/test/function/neg2d_y.mcfunction +0 -4
  2624. package/dist/data/test/function/neg3d_x.mcfunction +0 -4
  2625. package/dist/data/test/function/neg3d_y.mcfunction +0 -4
  2626. package/dist/data/test/function/neg3d_z.mcfunction +0 -4
  2627. package/dist/data/test/function/newton_sqrt.mcfunction +0 -5
  2628. package/dist/data/test/function/newton_sqrt__loop_body_7.mcfunction +0 -10
  2629. package/dist/data/test/function/newton_sqrt__loop_exit_8.mcfunction +0 -1
  2630. package/dist/data/test/function/newton_sqrt__loop_header_6.mcfunction +0 -3
  2631. package/dist/data/test/function/newton_sqrt__merge_1.mcfunction +0 -4
  2632. package/dist/data/test/function/newton_sqrt__merge_4.mcfunction +0 -6
  2633. package/dist/data/test/function/newton_sqrt__then_0.mcfunction +0 -2
  2634. package/dist/data/test/function/newton_sqrt__then_3.mcfunction +0 -2
  2635. package/dist/data/test/function/newton_step.mcfunction +0 -7
  2636. package/dist/data/test/function/newton_step__merge_1.mcfunction +0 -8
  2637. package/dist/data/test/function/newton_step__then_0.mcfunction +0 -1
  2638. package/dist/data/test/function/next_lcg.mcfunction +0 -7
  2639. package/dist/data/test/function/night_vision.mcfunction +0 -1
  2640. package/dist/data/test/function/noise1d.mcfunction +0 -13
  2641. package/dist/data/test/function/noise1d__merge_1.mcfunction +0 -20
  2642. package/dist/data/test/function/noise1d__merge_3.mcfunction +0 -4
  2643. package/dist/data/test/function/noise1d__merge_5.mcfunction +0 -11
  2644. package/dist/data/test/function/noise1d__then_0.mcfunction +0 -7
  2645. package/dist/data/test/function/noise1d__then_2.mcfunction +0 -4
  2646. package/dist/data/test/function/noise1d__then_4.mcfunction +0 -4
  2647. package/dist/data/test/function/norm3_hp.mcfunction +0 -43
  2648. package/dist/data/test/function/normal_approx12.mcfunction +0 -15
  2649. package/dist/data/test/function/normal_approx12__merge_1.mcfunction +0 -17
  2650. package/dist/data/test/function/normal_approx12__merge_11.mcfunction +0 -17
  2651. package/dist/data/test/function/normal_approx12__merge_13.mcfunction +0 -17
  2652. package/dist/data/test/function/normal_approx12__merge_15.mcfunction +0 -17
  2653. package/dist/data/test/function/normal_approx12__merge_17.mcfunction +0 -17
  2654. package/dist/data/test/function/normal_approx12__merge_19.mcfunction +0 -17
  2655. package/dist/data/test/function/normal_approx12__merge_21.mcfunction +0 -17
  2656. package/dist/data/test/function/normal_approx12__merge_23.mcfunction +0 -9
  2657. package/dist/data/test/function/normal_approx12__merge_3.mcfunction +0 -17
  2658. package/dist/data/test/function/normal_approx12__merge_5.mcfunction +0 -17
  2659. package/dist/data/test/function/normal_approx12__merge_7.mcfunction +0 -17
  2660. package/dist/data/test/function/normal_approx12__merge_9.mcfunction +0 -17
  2661. package/dist/data/test/function/normal_approx12__then_0.mcfunction +0 -4
  2662. package/dist/data/test/function/normal_approx12__then_10.mcfunction +0 -4
  2663. package/dist/data/test/function/normal_approx12__then_12.mcfunction +0 -4
  2664. package/dist/data/test/function/normal_approx12__then_14.mcfunction +0 -4
  2665. package/dist/data/test/function/normal_approx12__then_16.mcfunction +0 -4
  2666. package/dist/data/test/function/normal_approx12__then_18.mcfunction +0 -4
  2667. package/dist/data/test/function/normal_approx12__then_2.mcfunction +0 -4
  2668. package/dist/data/test/function/normal_approx12__then_20.mcfunction +0 -4
  2669. package/dist/data/test/function/normal_approx12__then_22.mcfunction +0 -4
  2670. package/dist/data/test/function/normal_approx12__then_4.mcfunction +0 -4
  2671. package/dist/data/test/function/normal_approx12__then_6.mcfunction +0 -4
  2672. package/dist/data/test/function/normal_approx12__then_8.mcfunction +0 -4
  2673. package/dist/data/test/function/normalize2d_x.mcfunction +0 -11
  2674. package/dist/data/test/function/normalize2d_x__merge_1.mcfunction +0 -6
  2675. package/dist/data/test/function/normalize2d_x__then_0.mcfunction +0 -2
  2676. package/dist/data/test/function/normalize2d_y.mcfunction +0 -11
  2677. package/dist/data/test/function/normalize2d_y__merge_1.mcfunction +0 -6
  2678. package/dist/data/test/function/normalize2d_y__then_0.mcfunction +0 -2
  2679. package/dist/data/test/function/on_double_sneak.mcfunction +0 -1
  2680. package/dist/data/test/function/on_double_sneak__foreach_t0.mcfunction +0 -9
  2681. package/dist/data/test/function/on_double_sneak__foreach_t0__merge_1.mcfunction +0 -1
  2682. package/dist/data/test/function/on_double_sneak__foreach_t0__merge_3.mcfunction +0 -2
  2683. package/dist/data/test/function/on_double_sneak__foreach_t0__then_0.mcfunction +0 -6
  2684. package/dist/data/test/function/on_double_sneak__foreach_t0__then_2.mcfunction +0 -2
  2685. package/dist/data/test/function/on_right_click.mcfunction +0 -1
  2686. package/dist/data/test/function/on_right_click__foreach_t1.mcfunction +0 -5
  2687. package/dist/data/test/function/on_right_click__foreach_t1__merge_1.mcfunction +0 -1
  2688. package/dist/data/test/function/on_right_click__foreach_t1__then_0.mcfunction +0 -3
  2689. package/dist/data/test/function/on_sneak_click.mcfunction +0 -1
  2690. package/dist/data/test/function/on_sneak_click__foreach_t0.mcfunction +0 -7
  2691. package/dist/data/test/function/on_sneak_click__foreach_t0__else_4.mcfunction +0 -3
  2692. package/dist/data/test/function/on_sneak_click__foreach_t0__merge_1.mcfunction +0 -1
  2693. package/dist/data/test/function/on_sneak_click__foreach_t0__merge_3.mcfunction +0 -1
  2694. package/dist/data/test/function/on_sneak_click__foreach_t0__then_0.mcfunction +0 -4
  2695. package/dist/data/test/function/on_sneak_click__foreach_t0__then_2.mcfunction +0 -3
  2696. package/dist/data/test/function/on_sneak_start.mcfunction +0 -1
  2697. package/dist/data/test/function/on_sneak_start__foreach_t0.mcfunction +0 -5
  2698. package/dist/data/test/function/on_sneak_start__foreach_t0__else_2.mcfunction +0 -2
  2699. package/dist/data/test/function/on_sneak_start__foreach_t0__merge_1.mcfunction +0 -1
  2700. package/dist/data/test/function/on_sneak_start__foreach_t0__then_0.mcfunction +0 -2
  2701. package/dist/data/test/function/parabola_land_t.mcfunction +0 -7
  2702. package/dist/data/test/function/parabola_x.mcfunction +0 -8
  2703. package/dist/data/test/function/parabola_y.mcfunction +0 -17
  2704. package/dist/data/test/function/particle_at_fx.mcfunction +0 -1
  2705. package/dist/data/test/function/particle_dot.mcfunction +0 -1
  2706. package/dist/data/test/function/pathfind_bfs.mcfunction +0 -11
  2707. package/dist/data/test/function/pathfind_bfs__else_33.mcfunction +0 -4
  2708. package/dist/data/test/function/pathfind_bfs__else_8.mcfunction +0 -19
  2709. package/dist/data/test/function/pathfind_bfs__loop_body_1.mcfunction +0 -10
  2710. package/dist/data/test/function/pathfind_bfs__loop_body_29.mcfunction +0 -6
  2711. package/dist/data/test/function/pathfind_bfs__loop_body_35.mcfunction +0 -9
  2712. package/dist/data/test/function/pathfind_bfs__loop_body_4.mcfunction +0 -9
  2713. package/dist/data/test/function/pathfind_bfs__loop_exit_2.mcfunction +0 -24
  2714. package/dist/data/test/function/pathfind_bfs__loop_exit_30.mcfunction +0 -6
  2715. package/dist/data/test/function/pathfind_bfs__loop_exit_36.mcfunction +0 -1
  2716. package/dist/data/test/function/pathfind_bfs__loop_exit_5.mcfunction +0 -6
  2717. package/dist/data/test/function/pathfind_bfs__loop_header_0.mcfunction +0 -4
  2718. package/dist/data/test/function/pathfind_bfs__loop_header_28.mcfunction +0 -4
  2719. package/dist/data/test/function/pathfind_bfs__loop_header_3.mcfunction +0 -3
  2720. package/dist/data/test/function/pathfind_bfs__loop_header_34.mcfunction +0 -4
  2721. package/dist/data/test/function/pathfind_bfs__merge_10.mcfunction +0 -11
  2722. package/dist/data/test/function/pathfind_bfs__merge_12.mcfunction +0 -1
  2723. package/dist/data/test/function/pathfind_bfs__merge_14.mcfunction +0 -11
  2724. package/dist/data/test/function/pathfind_bfs__merge_16.mcfunction +0 -1
  2725. package/dist/data/test/function/pathfind_bfs__merge_18.mcfunction +0 -11
  2726. package/dist/data/test/function/pathfind_bfs__merge_20.mcfunction +0 -1
  2727. package/dist/data/test/function/pathfind_bfs__merge_22.mcfunction +0 -1
  2728. package/dist/data/test/function/pathfind_bfs__merge_24.mcfunction +0 -1
  2729. package/dist/data/test/function/pathfind_bfs__merge_26.mcfunction +0 -5
  2730. package/dist/data/test/function/pathfind_bfs__merge_32.mcfunction +0 -1
  2731. package/dist/data/test/function/pathfind_bfs__merge_7.mcfunction +0 -1
  2732. package/dist/data/test/function/pathfind_bfs__then_11.mcfunction +0 -15
  2733. package/dist/data/test/function/pathfind_bfs__then_13.mcfunction +0 -13
  2734. package/dist/data/test/function/pathfind_bfs__then_15.mcfunction +0 -15
  2735. package/dist/data/test/function/pathfind_bfs__then_17.mcfunction +0 -13
  2736. package/dist/data/test/function/pathfind_bfs__then_19.mcfunction +0 -15
  2737. package/dist/data/test/function/pathfind_bfs__then_21.mcfunction +0 -13
  2738. package/dist/data/test/function/pathfind_bfs__then_23.mcfunction +0 -15
  2739. package/dist/data/test/function/pathfind_bfs__then_25.mcfunction +0 -1
  2740. package/dist/data/test/function/pathfind_bfs__then_31.mcfunction +0 -2
  2741. package/dist/data/test/function/pathfind_bfs__then_6.mcfunction +0 -3
  2742. package/dist/data/test/function/pathfind_bfs__then_9.mcfunction +0 -13
  2743. package/dist/data/test/function/pathfind_bfs_coro.mcfunction +0 -1
  2744. package/dist/data/test/function/pcg_next_hi.mcfunction +0 -8
  2745. package/dist/data/test/function/pcg_next_lo.mcfunction +0 -7
  2746. package/dist/data/test/function/pcg_output.mcfunction +0 -14
  2747. package/dist/data/test/function/pcg_output__merge_1.mcfunction +0 -1
  2748. package/dist/data/test/function/pcg_output__then_0.mcfunction +0 -4
  2749. package/dist/data/test/function/pf_heuristic.mcfunction +0 -14
  2750. package/dist/data/test/function/pf_heuristic__merge_1.mcfunction +0 -4
  2751. package/dist/data/test/function/pf_heuristic__merge_3.mcfunction +0 -6
  2752. package/dist/data/test/function/pf_heuristic__then_0.mcfunction +0 -4
  2753. package/dist/data/test/function/pf_heuristic__then_2.mcfunction +0 -4
  2754. package/dist/data/test/function/pf_is_blocked.mcfunction +0 -7
  2755. package/dist/data/test/function/pf_is_blocked__merge_1.mcfunction +0 -4
  2756. package/dist/data/test/function/pf_is_blocked__merge_10.mcfunction +0 -4
  2757. package/dist/data/test/function/pf_is_blocked__merge_4.mcfunction +0 -4
  2758. package/dist/data/test/function/pf_is_blocked__merge_7.mcfunction +0 -4
  2759. package/dist/data/test/function/pf_is_blocked__then_0.mcfunction +0 -2
  2760. package/dist/data/test/function/pf_is_blocked__then_3.mcfunction +0 -2
  2761. package/dist/data/test/function/pf_is_blocked__then_6.mcfunction +0 -2
  2762. package/dist/data/test/function/pf_is_blocked__then_9.mcfunction +0 -2
  2763. package/dist/data/test/function/pf_new_map.mcfunction +0 -4
  2764. package/dist/data/test/function/pf_new_map__loop_body_1.mcfunction +0 -7
  2765. package/dist/data/test/function/pf_new_map__loop_exit_2.mcfunction +0 -1
  2766. package/dist/data/test/function/pf_new_map__loop_header_0.mcfunction +0 -4
  2767. package/dist/data/test/function/pf_noop.mcfunction +0 -1
  2768. package/dist/data/test/function/pf_pack.mcfunction +0 -8
  2769. package/dist/data/test/function/pf_set_blocked.mcfunction +0 -5
  2770. package/dist/data/test/function/pf_set_open.mcfunction +0 -5
  2771. package/dist/data/test/function/pf_unpack_x.mcfunction +0 -5
  2772. package/dist/data/test/function/pf_unpack_z.mcfunction +0 -5
  2773. package/dist/data/test/function/popcount.mcfunction +0 -5
  2774. package/dist/data/test/function/popcount__loop_body_1.mcfunction +0 -7
  2775. package/dist/data/test/function/popcount__loop_exit_2.mcfunction +0 -1
  2776. package/dist/data/test/function/popcount__loop_header_0.mcfunction +0 -4
  2777. package/dist/data/test/function/popcount__merge_4.mcfunction +0 -8
  2778. package/dist/data/test/function/popcount__then_3.mcfunction +0 -4
  2779. package/dist/data/test/function/portal_effect.mcfunction +0 -1
  2780. package/dist/data/test/function/pow_int.mcfunction +0 -6
  2781. package/dist/data/test/function/pow_int__loop_body_4.mcfunction +0 -7
  2782. package/dist/data/test/function/pow_int__loop_exit_5.mcfunction +0 -1
  2783. package/dist/data/test/function/pow_int__loop_header_3.mcfunction +0 -4
  2784. package/dist/data/test/function/pow_int__merge_1.mcfunction +0 -4
  2785. package/dist/data/test/function/pow_int__merge_7.mcfunction +0 -8
  2786. package/dist/data/test/function/pow_int__then_0.mcfunction +0 -2
  2787. package/dist/data/test/function/pow_int__then_6.mcfunction +0 -4
  2788. package/dist/data/test/function/projectile_land_t.mcfunction +0 -5
  2789. package/dist/data/test/function/projectile_land_t__merge_1.mcfunction +0 -7
  2790. package/dist/data/test/function/projectile_land_t__then_0.mcfunction +0 -2
  2791. package/dist/data/test/function/projectile_max_height.mcfunction +0 -10
  2792. package/dist/data/test/function/projectile_vy.mcfunction +0 -9
  2793. package/dist/data/test/function/projectile_x.mcfunction +0 -8
  2794. package/dist/data/test/function/projectile_y.mcfunction +0 -19
  2795. package/dist/data/test/function/ptimer/new.mcfunction +0 -3
  2796. package/dist/data/test/function/ptimer/reset.mcfunction +0 -1
  2797. package/dist/data/test/function/ptimer/tick.mcfunction +0 -8
  2798. package/dist/data/test/function/ptimer/tick__merge_1.mcfunction +0 -2
  2799. package/dist/data/test/function/ptimer/tick__then_0.mcfunction +0 -3
  2800. package/dist/data/test/function/quadratic_disc.mcfunction +0 -12
  2801. package/dist/data/test/function/quadratic_x1.mcfunction +0 -7
  2802. package/dist/data/test/function/quadratic_x1__merge_1.mcfunction +0 -13
  2803. package/dist/data/test/function/quadratic_x1__merge_4.mcfunction +0 -15
  2804. package/dist/data/test/function/quadratic_x1__then_0.mcfunction +0 -2
  2805. package/dist/data/test/function/quadratic_x1__then_3.mcfunction +0 -2
  2806. package/dist/data/test/function/quadratic_x2.mcfunction +0 -7
  2807. package/dist/data/test/function/quadratic_x2__merge_1.mcfunction +0 -13
  2808. package/dist/data/test/function/quadratic_x2__merge_4.mcfunction +0 -15
  2809. package/dist/data/test/function/quadratic_x2__then_0.mcfunction +0 -2
  2810. package/dist/data/test/function/quadratic_x2__then_3.mcfunction +0 -2
  2811. package/dist/data/test/function/quat_cos_half.mcfunction +0 -8
  2812. package/dist/data/test/function/quat_sin_half.mcfunction +0 -8
  2813. package/dist/data/test/function/random_bool.mcfunction +0 -6
  2814. package/dist/data/test/function/random_bool__merge_1.mcfunction +0 -4
  2815. package/dist/data/test/function/random_bool__then_0.mcfunction +0 -4
  2816. package/dist/data/test/function/random_range.mcfunction +0 -8
  2817. package/dist/data/test/function/random_range__merge_1.mcfunction +0 -7
  2818. package/dist/data/test/function/random_range__then_0.mcfunction +0 -4
  2819. package/dist/data/test/function/regen.mcfunction +0 -1
  2820. package/dist/data/test/function/remove_bar.mcfunction +0 -3
  2821. package/dist/data/test/function/remove_from_teams.mcfunction +0 -3
  2822. package/dist/data/test/function/remove_item.mcfunction +0 -1
  2823. package/dist/data/test/function/resistance.mcfunction +0 -1
  2824. package/dist/data/test/function/reverse_int.mcfunction +0 -7
  2825. package/dist/data/test/function/reverse_int__loop_body_3.mcfunction +0 -14
  2826. package/dist/data/test/function/reverse_int__loop_exit_4.mcfunction +0 -4
  2827. package/dist/data/test/function/reverse_int__loop_header_2.mcfunction +0 -4
  2828. package/dist/data/test/function/reverse_int__merge_1.mcfunction +0 -2
  2829. package/dist/data/test/function/reverse_int__merge_6.mcfunction +0 -1
  2830. package/dist/data/test/function/reverse_int__then_0.mcfunction +0 -5
  2831. package/dist/data/test/function/reverse_int__then_5.mcfunction +0 -3
  2832. package/dist/data/test/function/rgb_b.mcfunction +0 -5
  2833. package/dist/data/test/function/rgb_g.mcfunction +0 -8
  2834. package/dist/data/test/function/rgb_lerp.mcfunction +0 -71
  2835. package/dist/data/test/function/rgb_pack.mcfunction +0 -14
  2836. package/dist/data/test/function/rgb_r.mcfunction +0 -8
  2837. package/dist/data/test/function/rgb_to_h.mcfunction +0 -7
  2838. package/dist/data/test/function/rgb_to_h__merge_1.mcfunction +0 -3
  2839. package/dist/data/test/function/rgb_to_h__merge_12.mcfunction +0 -3
  2840. package/dist/data/test/function/rgb_to_h__merge_14.mcfunction +0 -1
  2841. package/dist/data/test/function/rgb_to_h__merge_17.mcfunction +0 -9
  2842. package/dist/data/test/function/rgb_to_h__merge_3.mcfunction +0 -4
  2843. package/dist/data/test/function/rgb_to_h__merge_5.mcfunction +0 -3
  2844. package/dist/data/test/function/rgb_to_h__merge_7.mcfunction +0 -7
  2845. package/dist/data/test/function/rgb_to_h__merge_9.mcfunction +0 -3
  2846. package/dist/data/test/function/rgb_to_h__then_0.mcfunction +0 -2
  2847. package/dist/data/test/function/rgb_to_h__then_11.mcfunction +0 -11
  2848. package/dist/data/test/function/rgb_to_h__then_13.mcfunction +0 -4
  2849. package/dist/data/test/function/rgb_to_h__then_16.mcfunction +0 -9
  2850. package/dist/data/test/function/rgb_to_h__then_2.mcfunction +0 -2
  2851. package/dist/data/test/function/rgb_to_h__then_4.mcfunction +0 -2
  2852. package/dist/data/test/function/rgb_to_h__then_6.mcfunction +0 -2
  2853. package/dist/data/test/function/rgb_to_h__then_8.mcfunction +0 -2
  2854. package/dist/data/test/function/rgb_to_l.mcfunction +0 -7
  2855. package/dist/data/test/function/rgb_to_l__merge_1.mcfunction +0 -3
  2856. package/dist/data/test/function/rgb_to_l__merge_3.mcfunction +0 -4
  2857. package/dist/data/test/function/rgb_to_l__merge_5.mcfunction +0 -3
  2858. package/dist/data/test/function/rgb_to_l__merge_7.mcfunction +0 -9
  2859. package/dist/data/test/function/rgb_to_l__then_0.mcfunction +0 -2
  2860. package/dist/data/test/function/rgb_to_l__then_2.mcfunction +0 -2
  2861. package/dist/data/test/function/rgb_to_l__then_4.mcfunction +0 -2
  2862. package/dist/data/test/function/rgb_to_l__then_6.mcfunction +0 -2
  2863. package/dist/data/test/function/rgb_to_s.mcfunction +0 -7
  2864. package/dist/data/test/function/rgb_to_s__merge_1.mcfunction +0 -3
  2865. package/dist/data/test/function/rgb_to_s__merge_12.mcfunction +0 -10
  2866. package/dist/data/test/function/rgb_to_s__merge_3.mcfunction +0 -4
  2867. package/dist/data/test/function/rgb_to_s__merge_5.mcfunction +0 -3
  2868. package/dist/data/test/function/rgb_to_s__merge_7.mcfunction +0 -7
  2869. package/dist/data/test/function/rgb_to_s__merge_9.mcfunction +0 -12
  2870. package/dist/data/test/function/rgb_to_s__then_0.mcfunction +0 -2
  2871. package/dist/data/test/function/rgb_to_s__then_11.mcfunction +0 -8
  2872. package/dist/data/test/function/rgb_to_s__then_2.mcfunction +0 -2
  2873. package/dist/data/test/function/rgb_to_s__then_4.mcfunction +0 -2
  2874. package/dist/data/test/function/rgb_to_s__then_6.mcfunction +0 -2
  2875. package/dist/data/test/function/rgb_to_s__then_8.mcfunction +0 -2
  2876. package/dist/data/test/function/riemann_left.mcfunction +0 -6
  2877. package/dist/data/test/function/riemann_left__loop_body_1.mcfunction +0 -7
  2878. package/dist/data/test/function/riemann_left__loop_exit_2.mcfunction +0 -6
  2879. package/dist/data/test/function/riemann_left__loop_header_0.mcfunction +0 -5
  2880. package/dist/data/test/function/riemann_mid.mcfunction +0 -6
  2881. package/dist/data/test/function/riemann_mid__loop_body_1.mcfunction +0 -7
  2882. package/dist/data/test/function/riemann_mid__loop_exit_2.mcfunction +0 -6
  2883. package/dist/data/test/function/riemann_mid__loop_header_0.mcfunction +0 -3
  2884. package/dist/data/test/function/riemann_right.mcfunction +0 -6
  2885. package/dist/data/test/function/riemann_right__loop_body_1.mcfunction +0 -7
  2886. package/dist/data/test/function/riemann_right__loop_exit_2.mcfunction +0 -6
  2887. package/dist/data/test/function/riemann_right__loop_header_0.mcfunction +0 -3
  2888. package/dist/data/test/function/rotate2d_x.mcfunction +0 -20
  2889. package/dist/data/test/function/rotate2d_y.mcfunction +0 -20
  2890. package/dist/data/test/function/rotate_x_y.mcfunction +0 -28
  2891. package/dist/data/test/function/rotate_x_z.mcfunction +0 -28
  2892. package/dist/data/test/function/rotate_y_x.mcfunction +0 -28
  2893. package/dist/data/test/function/rotate_y_z.mcfunction +0 -30
  2894. package/dist/data/test/function/running_m2.mcfunction +0 -16
  2895. package/dist/data/test/function/running_mean.mcfunction +0 -7
  2896. package/dist/data/test/function/running_mean__merge_1.mcfunction +0 -13
  2897. package/dist/data/test/function/running_mean__then_0.mcfunction +0 -1
  2898. package/dist/data/test/function/scale2d_x.mcfunction +0 -8
  2899. package/dist/data/test/function/scale2d_y.mcfunction +0 -8
  2900. package/dist/data/test/function/scale3d_x.mcfunction +0 -8
  2901. package/dist/data/test/function/scale3d_y.mcfunction +0 -8
  2902. package/dist/data/test/function/scale3d_z.mcfunction +0 -8
  2903. package/dist/data/test/function/scale_x.mcfunction +0 -8
  2904. package/dist/data/test/function/scale_y.mcfunction +0 -8
  2905. package/dist/data/test/function/scale_z.mcfunction +0 -8
  2906. package/dist/data/test/function/second_deriv.mcfunction +0 -8
  2907. package/dist/data/test/function/second_deriv__merge_1.mcfunction +0 -14
  2908. package/dist/data/test/function/second_deriv__then_0.mcfunction +0 -2
  2909. package/dist/data/test/function/seconds_to_ticks.mcfunction +0 -5
  2910. package/dist/data/test/function/set_day.mcfunction +0 -1
  2911. package/dist/data/test/function/set_easy.mcfunction +0 -1
  2912. package/dist/data/test/function/set_hard.mcfunction +0 -1
  2913. package/dist/data/test/function/set_midnight.mcfunction +0 -1
  2914. package/dist/data/test/function/set_night.mcfunction +0 -1
  2915. package/dist/data/test/function/set_noon.mcfunction +0 -1
  2916. package/dist/data/test/function/set_normal.mcfunction +0 -1
  2917. package/dist/data/test/function/set_peaceful.mcfunction +0 -1
  2918. package/dist/data/test/function/setup_four_teams.mcfunction +0 -4
  2919. package/dist/data/test/function/setup_two_teams.mcfunction +0 -2
  2920. package/dist/data/test/function/show_bar.mcfunction +0 -4
  2921. package/dist/data/test/function/showcase_load.mcfunction +0 -4
  2922. package/dist/data/test/function/showcase_tick.mcfunction +0 -1
  2923. package/dist/data/test/function/sign.mcfunction +0 -5
  2924. package/dist/data/test/function/sign__merge_1.mcfunction +0 -4
  2925. package/dist/data/test/function/sign__merge_4.mcfunction +0 -2
  2926. package/dist/data/test/function/sign__then_0.mcfunction +0 -2
  2927. package/dist/data/test/function/sign__then_3.mcfunction +0 -2
  2928. package/dist/data/test/function/simpson_step.mcfunction +0 -16
  2929. package/dist/data/test/function/sin_fixed.mcfunction +0 -9
  2930. package/dist/data/test/function/sin_fixed__merge_1.mcfunction +0 -4
  2931. package/dist/data/test/function/sin_fixed__merge_3.mcfunction +0 -4
  2932. package/dist/data/test/function/sin_fixed__merge_6.mcfunction +0 -4
  2933. package/dist/data/test/function/sin_fixed__merge_9.mcfunction +0 -10
  2934. package/dist/data/test/function/sin_fixed__then_0.mcfunction +0 -4
  2935. package/dist/data/test/function/sin_fixed__then_2.mcfunction +0 -6
  2936. package/dist/data/test/function/sin_fixed__then_5.mcfunction +0 -8
  2937. package/dist/data/test/function/sin_fixed__then_8.mcfunction +0 -10
  2938. package/dist/data/test/function/sin_hp.mcfunction +0 -8
  2939. package/dist/data/test/function/slow_fall.mcfunction +0 -1
  2940. package/dist/data/test/function/smoke.mcfunction +0 -1
  2941. package/dist/data/test/function/smootherstep.mcfunction +0 -10
  2942. package/dist/data/test/function/smootherstep__merge_1.mcfunction +0 -12
  2943. package/dist/data/test/function/smootherstep__merge_4.mcfunction +0 -4
  2944. package/dist/data/test/function/smootherstep__merge_6.mcfunction +0 -27
  2945. package/dist/data/test/function/smootherstep__then_0.mcfunction +0 -2
  2946. package/dist/data/test/function/smootherstep__then_3.mcfunction +0 -2
  2947. package/dist/data/test/function/smootherstep__then_5.mcfunction +0 -2
  2948. package/dist/data/test/function/smoothstep.mcfunction +0 -10
  2949. package/dist/data/test/function/smoothstep__merge_1.mcfunction +0 -12
  2950. package/dist/data/test/function/smoothstep__merge_4.mcfunction +0 -4
  2951. package/dist/data/test/function/smoothstep__merge_6.mcfunction +0 -15
  2952. package/dist/data/test/function/smoothstep__then_0.mcfunction +0 -2
  2953. package/dist/data/test/function/smoothstep__then_3.mcfunction +0 -2
  2954. package/dist/data/test/function/smoothstep__then_5.mcfunction +0 -2
  2955. package/dist/data/test/function/solve2x2_x.mcfunction +0 -17
  2956. package/dist/data/test/function/solve2x2_x__merge_1.mcfunction +0 -12
  2957. package/dist/data/test/function/solve2x2_x__then_0.mcfunction +0 -2
  2958. package/dist/data/test/function/solve2x2_y.mcfunction +0 -17
  2959. package/dist/data/test/function/solve2x2_y__merge_1.mcfunction +0 -12
  2960. package/dist/data/test/function/solve2x2_y__then_0.mcfunction +0 -2
  2961. package/dist/data/test/function/sort2_max.mcfunction +0 -5
  2962. package/dist/data/test/function/sort2_max__merge_1.mcfunction +0 -1
  2963. package/dist/data/test/function/sort2_max__then_0.mcfunction +0 -1
  2964. package/dist/data/test/function/sort2_min.mcfunction +0 -5
  2965. package/dist/data/test/function/sort2_min__merge_1.mcfunction +0 -1
  2966. package/dist/data/test/function/sort2_min__then_0.mcfunction +0 -1
  2967. package/dist/data/test/function/sort3.mcfunction +0 -10
  2968. package/dist/data/test/function/sort3__merge_1.mcfunction +0 -3
  2969. package/dist/data/test/function/sort3__merge_10.mcfunction +0 -1
  2970. package/dist/data/test/function/sort3__merge_3.mcfunction +0 -3
  2971. package/dist/data/test/function/sort3__merge_5.mcfunction +0 -4
  2972. package/dist/data/test/function/sort3__merge_7.mcfunction +0 -4
  2973. package/dist/data/test/function/sort3__then_0.mcfunction +0 -4
  2974. package/dist/data/test/function/sort3__then_2.mcfunction +0 -4
  2975. package/dist/data/test/function/sort3__then_4.mcfunction +0 -4
  2976. package/dist/data/test/function/sort3__then_6.mcfunction +0 -1
  2977. package/dist/data/test/function/sort3__then_9.mcfunction +0 -1
  2978. package/dist/data/test/function/sort4.mcfunction +0 -12
  2979. package/dist/data/test/function/sort4__merge_1.mcfunction +0 -3
  2980. package/dist/data/test/function/sort4__merge_11.mcfunction +0 -4
  2981. package/dist/data/test/function/sort4__merge_14.mcfunction +0 -4
  2982. package/dist/data/test/function/sort4__merge_17.mcfunction +0 -1
  2983. package/dist/data/test/function/sort4__merge_3.mcfunction +0 -3
  2984. package/dist/data/test/function/sort4__merge_5.mcfunction +0 -3
  2985. package/dist/data/test/function/sort4__merge_7.mcfunction +0 -3
  2986. package/dist/data/test/function/sort4__merge_9.mcfunction +0 -4
  2987. package/dist/data/test/function/sort4__then_0.mcfunction +0 -4
  2988. package/dist/data/test/function/sort4__then_10.mcfunction +0 -1
  2989. package/dist/data/test/function/sort4__then_13.mcfunction +0 -1
  2990. package/dist/data/test/function/sort4__then_16.mcfunction +0 -1
  2991. package/dist/data/test/function/sort4__then_2.mcfunction +0 -4
  2992. package/dist/data/test/function/sort4__then_4.mcfunction +0 -4
  2993. package/dist/data/test/function/sort4__then_6.mcfunction +0 -4
  2994. package/dist/data/test/function/sort4__then_8.mcfunction +0 -4
  2995. package/dist/data/test/function/sort5.mcfunction +0 -14
  2996. package/dist/data/test/function/sort5__merge_1.mcfunction +0 -3
  2997. package/dist/data/test/function/sort5__merge_11.mcfunction +0 -3
  2998. package/dist/data/test/function/sort5__merge_13.mcfunction +0 -3
  2999. package/dist/data/test/function/sort5__merge_15.mcfunction +0 -3
  3000. package/dist/data/test/function/sort5__merge_17.mcfunction +0 -4
  3001. package/dist/data/test/function/sort5__merge_19.mcfunction +0 -4
  3002. package/dist/data/test/function/sort5__merge_22.mcfunction +0 -4
  3003. package/dist/data/test/function/sort5__merge_25.mcfunction +0 -4
  3004. package/dist/data/test/function/sort5__merge_28.mcfunction +0 -1
  3005. package/dist/data/test/function/sort5__merge_3.mcfunction +0 -3
  3006. package/dist/data/test/function/sort5__merge_5.mcfunction +0 -3
  3007. package/dist/data/test/function/sort5__merge_7.mcfunction +0 -3
  3008. package/dist/data/test/function/sort5__merge_9.mcfunction +0 -3
  3009. package/dist/data/test/function/sort5__then_0.mcfunction +0 -4
  3010. package/dist/data/test/function/sort5__then_10.mcfunction +0 -4
  3011. package/dist/data/test/function/sort5__then_12.mcfunction +0 -4
  3012. package/dist/data/test/function/sort5__then_14.mcfunction +0 -4
  3013. package/dist/data/test/function/sort5__then_16.mcfunction +0 -4
  3014. package/dist/data/test/function/sort5__then_18.mcfunction +0 -1
  3015. package/dist/data/test/function/sort5__then_2.mcfunction +0 -4
  3016. package/dist/data/test/function/sort5__then_21.mcfunction +0 -1
  3017. package/dist/data/test/function/sort5__then_24.mcfunction +0 -1
  3018. package/dist/data/test/function/sort5__then_27.mcfunction +0 -1
  3019. package/dist/data/test/function/sort5__then_4.mcfunction +0 -4
  3020. package/dist/data/test/function/sort5__then_6.mcfunction +0 -4
  3021. package/dist/data/test/function/sort5__then_8.mcfunction +0 -4
  3022. package/dist/data/test/function/sort_merge.mcfunction +0 -10
  3023. package/dist/data/test/function/sort_merge__else_11.mcfunction +0 -7
  3024. package/dist/data/test/function/sort_merge__else_14.mcfunction +0 -2
  3025. package/dist/data/test/function/sort_merge__else_5.mcfunction +0 -3
  3026. package/dist/data/test/function/sort_merge__else_8.mcfunction +0 -7
  3027. package/dist/data/test/function/sort_merge__loop_body_1.mcfunction +0 -3
  3028. package/dist/data/test/function/sort_merge__loop_exit_2.mcfunction +0 -1
  3029. package/dist/data/test/function/sort_merge__loop_header_0.mcfunction +0 -4
  3030. package/dist/data/test/function/sort_merge__merge_10.mcfunction +0 -1
  3031. package/dist/data/test/function/sort_merge__merge_13.mcfunction +0 -1
  3032. package/dist/data/test/function/sort_merge__merge_4.mcfunction +0 -1
  3033. package/dist/data/test/function/sort_merge__merge_7.mcfunction +0 -1
  3034. package/dist/data/test/function/sort_merge__then_12.mcfunction +0 -7
  3035. package/dist/data/test/function/sort_merge__then_3.mcfunction +0 -3
  3036. package/dist/data/test/function/sort_merge__then_6.mcfunction +0 -3
  3037. package/dist/data/test/function/sort_merge__then_9.mcfunction +0 -7
  3038. package/dist/data/test/function/sparkles_at.mcfunction +0 -1
  3039. package/dist/data/test/function/speed.mcfunction +0 -1
  3040. package/dist/data/test/function/sphere_contains.mcfunction +0 -28
  3041. package/dist/data/test/function/sphere_contains__merge_1.mcfunction +0 -2
  3042. package/dist/data/test/function/sphere_contains__then_0.mcfunction +0 -2
  3043. package/dist/data/test/function/spiral_ring.mcfunction +0 -5
  3044. package/dist/data/test/function/spiral_ring__merge_1.mcfunction +0 -13
  3045. package/dist/data/test/function/spiral_ring__then_0.mcfunction +0 -2
  3046. package/dist/data/test/function/spread_players.mcfunction +0 -1
  3047. package/dist/data/test/function/spring_force.mcfunction +0 -11
  3048. package/dist/data/test/function/spring_update_v.mcfunction +0 -18
  3049. package/dist/data/test/function/sqrt_fixed.mcfunction +0 -8
  3050. package/dist/data/test/function/sqrt_fx.mcfunction +0 -8
  3051. package/dist/data/test/function/sqrt_hp.mcfunction +0 -17
  3052. package/dist/data/test/function/sqrt_hp__merge_1.mcfunction +0 -21
  3053. package/dist/data/test/function/sqrt_hp__then_0.mcfunction +0 -2
  3054. package/dist/data/test/function/start.mcfunction +0 -8
  3055. package/dist/data/test/function/std_dev_approx.mcfunction +0 -5
  3056. package/dist/data/test/function/std_dev_approx__merge_1.mcfunction +0 -13
  3057. package/dist/data/test/function/std_dev_approx__then_0.mcfunction +0 -2
  3058. package/dist/data/test/function/stop.mcfunction +0 -2
  3059. package/dist/data/test/function/stop__foreach_t0.mcfunction +0 -1
  3060. package/dist/data/test/function/str_len.mcfunction +0 -2
  3061. package/dist/data/test/function/strength.mcfunction +0 -1
  3062. package/dist/data/test/function/sub2d_x.mcfunction +0 -5
  3063. package/dist/data/test/function/sub2d_y.mcfunction +0 -5
  3064. package/dist/data/test/function/sub3d_x.mcfunction +0 -5
  3065. package/dist/data/test/function/sub3d_y.mcfunction +0 -5
  3066. package/dist/data/test/function/sub3d_z.mcfunction +0 -5
  3067. package/dist/data/test/function/t.mcfunction +0 -3
  3068. package/dist/data/test/function/teleport_to.mcfunction +0 -9
  3069. package/dist/data/test/function/teleport_to_entity.mcfunction +0 -5
  3070. package/dist/data/test/function/terrain_height.mcfunction +0 -24
  3071. package/dist/data/test/function/test__loop_body_1.mcfunction +0 -9
  3072. package/dist/data/test/function/test__loop_exit_2.mcfunction +0 -1
  3073. package/dist/data/test/function/test__loop_header_0.mcfunction +0 -3
  3074. package/dist/data/test/function/tick_to_ms.mcfunction +0 -5
  3075. package/dist/data/test/function/tick_to_seconds.mcfunction +0 -5
  3076. package/dist/data/test/function/tile_center.mcfunction +0 -10
  3077. package/dist/data/test/function/tile_of.mcfunction +0 -6
  3078. package/dist/data/test/function/tile_of__merge_1.mcfunction +0 -7
  3079. package/dist/data/test/function/tile_of__then_0.mcfunction +0 -3
  3080. package/dist/data/test/function/timer/done.mcfunction +0 -4
  3081. package/dist/data/test/function/timer/elapsed.mcfunction +0 -2
  3082. package/dist/data/test/function/timer/new.mcfunction +0 -5
  3083. package/dist/data/test/function/timer/pause.mcfunction +0 -1
  3084. package/dist/data/test/function/timer/remaining.mcfunction +0 -9
  3085. package/dist/data/test/function/timer/remaining__merge_1.mcfunction +0 -2
  3086. package/dist/data/test/function/timer/remaining__then_0.mcfunction +0 -1
  3087. package/dist/data/test/function/timer/reset.mcfunction +0 -1
  3088. package/dist/data/test/function/timer/start.mcfunction +0 -1
  3089. package/dist/data/test/function/timer/tick.mcfunction +0 -8
  3090. package/dist/data/test/function/timer/tick__merge_1.mcfunction +0 -1
  3091. package/dist/data/test/function/timer/tick__merge_3.mcfunction +0 -1
  3092. package/dist/data/test/function/timer/tick__then_0.mcfunction +0 -3
  3093. package/dist/data/test/function/timer/tick__then_2.mcfunction +0 -4
  3094. package/dist/data/test/function/totem_at.mcfunction +0 -1
  3095. package/dist/data/test/function/trapezoid_step.mcfunction +0 -11
  3096. package/dist/data/test/function/uniform_frac.mcfunction +0 -11
  3097. package/dist/data/test/function/uniform_frac__merge_1.mcfunction +0 -4
  3098. package/dist/data/test/function/uniform_frac__then_0.mcfunction +0 -4
  3099. package/dist/data/test/function/uniform_int.mcfunction +0 -13
  3100. package/dist/data/test/function/uniform_int__merge_1.mcfunction +0 -9
  3101. package/dist/data/test/function/uniform_int__then_0.mcfunction +0 -4
  3102. package/dist/data/test/function/uniform_scale.mcfunction +0 -8
  3103. package/dist/data/test/function/update_bar.mcfunction +0 -5
  3104. package/dist/data/test/function/update_bar_color.mcfunction +0 -6
  3105. package/dist/data/test/function/update_bar_color__else_2.mcfunction +0 -4
  3106. package/dist/data/test/function/update_bar_color__else_5.mcfunction +0 -4
  3107. package/dist/data/test/function/update_bar_color__merge_1.mcfunction +0 -1
  3108. package/dist/data/test/function/update_bar_color__merge_4.mcfunction +0 -1
  3109. package/dist/data/test/function/update_bar_color__then_0.mcfunction +0 -4
  3110. package/dist/data/test/function/update_bar_color__then_3.mcfunction +0 -4
  3111. package/dist/data/test/function/update_pos.mcfunction +0 -5
  3112. package/dist/data/test/function/value_noise_1d.mcfunction +0 -13
  3113. package/dist/data/test/function/value_noise_1d__merge_1.mcfunction +0 -39
  3114. package/dist/data/test/function/value_noise_1d__then_0.mcfunction +0 -7
  3115. package/dist/data/test/function/value_noise_2d.mcfunction +0 -14
  3116. package/dist/data/test/function/value_noise_2d__merge_1.mcfunction +0 -12
  3117. package/dist/data/test/function/value_noise_2d__merge_3.mcfunction +0 -98
  3118. package/dist/data/test/function/value_noise_2d__then_0.mcfunction +0 -7
  3119. package/dist/data/test/function/value_noise_2d__then_2.mcfunction +0 -7
  3120. package/dist/data/test/function/variance_from_m2.mcfunction +0 -6
  3121. package/dist/data/test/function/variance_from_m2__merge_1.mcfunction +0 -5
  3122. package/dist/data/test/function/variance_from_m2__then_0.mcfunction +0 -2
  3123. package/dist/data/test/function/water_drag_fx.mcfunction +0 -2
  3124. package/dist/data/test/function/weapon_damage.mcfunction +0 -5
  3125. package/dist/data/test/function/weather_clear.mcfunction +0 -1
  3126. package/dist/data/test/function/weather_rain.mcfunction +0 -1
  3127. package/dist/data/test/function/weather_thunder.mcfunction +0 -1
  3128. package/dist/data/test/function/weighted2.mcfunction +0 -16
  3129. package/dist/data/test/function/weighted2__merge_1.mcfunction +0 -5
  3130. package/dist/data/test/function/weighted2__merge_3.mcfunction +0 -2
  3131. package/dist/data/test/function/weighted2__then_0.mcfunction +0 -4
  3132. package/dist/data/test/function/weighted2__then_2.mcfunction +0 -2
  3133. package/dist/data/test/function/weighted3.mcfunction +0 -19
  3134. package/dist/data/test/function/weighted3__merge_1.mcfunction +0 -6
  3135. package/dist/data/test/function/weighted3__merge_3.mcfunction +0 -5
  3136. package/dist/data/test/function/weighted3__merge_6.mcfunction +0 -2
  3137. package/dist/data/test/function/weighted3__then_0.mcfunction +0 -4
  3138. package/dist/data/test/function/weighted3__then_2.mcfunction +0 -2
  3139. package/dist/data/test/function/weighted3__then_5.mcfunction +0 -2
  3140. package/dist/data/test_dmul/function/__double_mul_macro.mcfunction +0 -1
  3141. package/dist/data/test_dmul/function/double_mul_fixed.mcfunction +0 -6
  3142. package/dist/data/test_dmul/function/load.mcfunction +0 -1
  3143. package/dist/data/test_double_fn/function/double_test.mcfunction +0 -2
  3144. package/dist/data/test_double_fn/function/load.mcfunction +0 -1
  3145. package/dist/data/test_double_fn2/function/double_test.mcfunction +0 -2
  3146. package/dist/data/test_double_fn2/function/load.mcfunction +0 -1
  3147. package/dist/data/test_double_pass/function/caller_fn.mcfunction +0 -4
  3148. package/dist/data/test_double_pass/function/consume_double.mcfunction +0 -2
  3149. package/dist/data/test_double_pass/function/load.mcfunction +0 -1
  3150. package/dist/data/test_macro/function/load.mcfunction +0 -1
  3151. package/dist/data/test_macro/function/macro_helper.mcfunction +0 -1
  3152. package/dist/data/test_macro3/function/__dmul_macro.mcfunction +0 -1
  3153. package/dist/data/test_macro3/function/double_mul_test.mcfunction +0 -7
  3154. package/dist/data/test_macro3/function/load.mcfunction +0 -1
  3155. package/dist/data/test_ret_double/function/load.mcfunction +0 -1
  3156. package/dist/data/test_ret_double/function/make_double.mcfunction +0 -3
  3157. package/dist/data/test_ret_double/function/use_it.mcfunction +0 -3
  3158. package/dist/data/turret/function/__load.mcfunction +0 -5
  3159. package/dist/data/turret/function/__tick.mcfunction +0 -4
  3160. package/dist/data/turret/function/__trigger_deploy_turret_dispatch.mcfunction +0 -4
  3161. package/dist/data/turret/function/deploy_turret.mcfunction +0 -8
  3162. package/dist/data/turret/function/turret_tick/at_1.mcfunction +0 -2
  3163. package/dist/data/turret/function/turret_tick/foreach_0.mcfunction +0 -2
  3164. package/dist/data/turret/function/turret_tick/foreach_2.mcfunction +0 -2
  3165. package/dist/data/turret/function/turret_tick/tick_body.mcfunction +0 -3
  3166. package/dist/data/turret/function/turret_tick/tick_skip.mcfunction +0 -1
  3167. package/dist/data/turret/function/turret_tick.mcfunction +0 -5
  3168. package/dist/diagnostics/index.d.ts +0 -44
  3169. package/dist/diagnostics/index.js +0 -140
  3170. package/dist/events/types.d.ts +0 -35
  3171. package/dist/events/types.js +0 -59
  3172. package/dist/formatter/index.d.ts +0 -1
  3173. package/dist/formatter/index.js +0 -26
  3174. package/dist/gcd2.map.json +0 -15
  3175. package/dist/gcd3.map.json +0 -17
  3176. package/dist/gcd_test.map.json +0 -15
  3177. package/dist/index.d.ts +0 -62
  3178. package/dist/ir/builder.d.ts +0 -33
  3179. package/dist/ir/builder.js +0 -99
  3180. package/dist/ir/types.d.ts +0 -132
  3181. package/dist/ir/types.js +0 -15
  3182. package/dist/isqrttest.map.json +0 -15
  3183. package/dist/lexer/index.d.ts +0 -37
  3184. package/dist/lexer/index.js +0 -569
  3185. package/dist/lowering/index.d.ts +0 -188
  3186. package/dist/lowering/index.js +0 -3405
  3187. package/dist/mathtest.map.json +0 -6
  3188. package/dist/mc-test/client.d.ts +0 -128
  3189. package/dist/mc-test/client.js +0 -174
  3190. package/dist/mc-test/runner.d.ts +0 -28
  3191. package/dist/mc-test/runner.js +0 -150
  3192. package/dist/mc-test/setup.d.ts +0 -11
  3193. package/dist/mc-test/setup.js +0 -98
  3194. package/dist/mc-validator/index.d.ts +0 -17
  3195. package/dist/mc-validator/index.js +0 -322
  3196. package/dist/mypack.map.json +0 -27
  3197. package/dist/nbt/index.d.ts +0 -86
  3198. package/dist/nbt/index.js +0 -250
  3199. package/dist/optimizer/commands.d.ts +0 -38
  3200. package/dist/optimizer/commands.js +0 -451
  3201. package/dist/optimizer/dce.d.ts +0 -34
  3202. package/dist/optimizer/dce.js +0 -639
  3203. package/dist/optimizer/passes.d.ts +0 -34
  3204. package/dist/optimizer/passes.js +0 -243
  3205. package/dist/optimizer/structure.d.ts +0 -9
  3206. package/dist/optimizer/structure.js +0 -356
  3207. package/dist/parser/index.d.ts +0 -93
  3208. package/dist/parser/index.js +0 -1687
  3209. package/dist/repl.d.ts +0 -16
  3210. package/dist/repl.js +0 -165
  3211. package/dist/reqtest.map.json +0 -4
  3212. package/dist/reqtest2.map.json +0 -4
  3213. package/dist/runtime/index.d.ts +0 -107
  3214. package/dist/runtime/index.js +0 -1409
  3215. package/dist/runtime.map.json +0 -7
  3216. package/dist/src/__tests__/codegen.test.d.ts +0 -1
  3217. package/dist/src/__tests__/codegen.test.js +0 -152
  3218. package/dist/src/__tests__/debug-compile.test.d.ts +0 -1
  3219. package/dist/src/__tests__/debug-compile.test.js +0 -24
  3220. package/dist/src/__tests__/debug-compile2.test.d.ts +0 -1
  3221. package/dist/src/__tests__/debug-compile2.test.js +0 -19
  3222. package/dist/src/__tests__/debug-compile3.test.d.ts +0 -1
  3223. package/dist/src/__tests__/debug-compile3.test.js +0 -22
  3224. package/dist/src/__tests__/debug-wm.test.d.ts +0 -1
  3225. package/dist/src/__tests__/debug-wm.test.js +0 -50
  3226. package/dist/src/__tests__/debug_gen.d.ts +0 -1
  3227. package/dist/src/__tests__/debug_gen.js +0 -24
  3228. package/dist/src/__tests__/debug_scoreboard.test.d.ts +0 -1
  3229. package/dist/src/__tests__/debug_scoreboard.test.js +0 -19
  3230. package/dist/src/__tests__/debug_scoreboard2.test.d.ts +0 -1
  3231. package/dist/src/__tests__/debug_scoreboard2.test.js +0 -27
  3232. package/dist/src/__tests__/debug_scoreboard3.test.d.ts +0 -1
  3233. package/dist/src/__tests__/debug_scoreboard3.test.js +0 -37
  3234. package/dist/src/__tests__/e2e.test.d.ts +0 -6
  3235. package/dist/src/__tests__/e2e.test.js +0 -1789
  3236. package/dist/src/__tests__/entity-types.test.d.ts +0 -1
  3237. package/dist/src/__tests__/entity-types.test.js +0 -203
  3238. package/dist/src/__tests__/lowering.test.d.ts +0 -1
  3239. package/dist/src/__tests__/lowering.test.js +0 -1015
  3240. package/dist/src/__tests__/macro.test.d.ts +0 -8
  3241. package/dist/src/__tests__/macro.test.js +0 -306
  3242. package/dist/src/__tests__/nbt.test.d.ts +0 -1
  3243. package/dist/src/__tests__/nbt.test.js +0 -82
  3244. package/dist/src/__tests__/optimizer-advanced.test.d.ts +0 -1
  3245. package/dist/src/__tests__/optimizer-advanced.test.js +0 -124
  3246. package/dist/src/__tests__/optimizer.test.d.ts +0 -1
  3247. package/dist/src/__tests__/optimizer.test.js +0 -149
  3248. package/dist/src/__tests__/stdlib-advanced.test.d.ts +0 -4
  3249. package/dist/src/__tests__/stdlib-advanced.test.js +0 -374
  3250. package/dist/src/__tests__/stdlib-bigint.test.d.ts +0 -7
  3251. package/dist/src/__tests__/stdlib-bigint.test.js +0 -426
  3252. package/dist/src/__tests__/stdlib-math.test.d.ts +0 -7
  3253. package/dist/src/__tests__/stdlib-math.test.js +0 -351
  3254. package/dist/src/__tests__/stdlib-vec.test.d.ts +0 -4
  3255. package/dist/src/__tests__/stdlib-vec.test.js +0 -263
  3256. package/dist/src/__tests__/structure-optimizer.test.d.ts +0 -1
  3257. package/dist/src/__tests__/structure-optimizer.test.js +0 -33
  3258. package/dist/src/__tests__/timer-debug.test.d.ts +0 -1
  3259. package/dist/src/__tests__/timer-debug.test.js +0 -33
  3260. package/dist/src/__tests__/var-allocator.test.d.ts +0 -1
  3261. package/dist/src/__tests__/var-allocator.test.js +0 -69
  3262. package/dist/src/codegen/cmdblock/index.d.ts +0 -26
  3263. package/dist/src/codegen/cmdblock/index.js +0 -45
  3264. package/dist/src/codegen/mcfunction/index.d.ts +0 -40
  3265. package/dist/src/codegen/mcfunction/index.js +0 -606
  3266. package/dist/src/codegen/structure/index.d.ts +0 -24
  3267. package/dist/src/codegen/structure/index.js +0 -279
  3268. package/dist/src/codegen/var-allocator.d.ts +0 -45
  3269. package/dist/src/codegen/var-allocator.js +0 -104
  3270. package/dist/src/ir/builder.d.ts +0 -33
  3271. package/dist/src/ir/builder.js +0 -99
  3272. package/dist/src/ir/types.d.ts +0 -132
  3273. package/dist/src/ir/types.js +0 -15
  3274. package/dist/src/lowering/index.d.ts +0 -188
  3275. package/dist/src/lowering/index.js +0 -3405
  3276. package/dist/src/optimizer/commands.d.ts +0 -38
  3277. package/dist/src/optimizer/commands.js +0 -451
  3278. package/dist/src/optimizer/passes.d.ts +0 -34
  3279. package/dist/src/optimizer/passes.js +0 -243
  3280. package/dist/src/optimizer/structure.d.ts +0 -9
  3281. package/dist/src/optimizer/structure.js +0 -356
  3282. package/dist/src2/__tests__/e2e/basic.test.d.ts +0 -8
  3283. package/dist/src2/__tests__/e2e/basic.test.js +0 -140
  3284. package/dist/src2/__tests__/e2e/macros.test.d.ts +0 -9
  3285. package/dist/src2/__tests__/e2e/macros.test.js +0 -182
  3286. package/dist/src2/__tests__/e2e/migrate.test.d.ts +0 -13
  3287. package/dist/src2/__tests__/e2e/migrate.test.js +0 -2739
  3288. package/dist/src2/__tests__/hir/desugar.test.d.ts +0 -1
  3289. package/dist/src2/__tests__/hir/desugar.test.js +0 -234
  3290. package/dist/src2/__tests__/lir/lower.test.d.ts +0 -1
  3291. package/dist/src2/__tests__/lir/lower.test.js +0 -559
  3292. package/dist/src2/__tests__/lir/types.test.d.ts +0 -1
  3293. package/dist/src2/__tests__/lir/types.test.js +0 -185
  3294. package/dist/src2/__tests__/lir/verify.test.d.ts +0 -1
  3295. package/dist/src2/__tests__/lir/verify.test.js +0 -221
  3296. package/dist/src2/__tests__/mir/arithmetic.test.d.ts +0 -1
  3297. package/dist/src2/__tests__/mir/arithmetic.test.js +0 -130
  3298. package/dist/src2/__tests__/mir/control-flow.test.d.ts +0 -1
  3299. package/dist/src2/__tests__/mir/control-flow.test.js +0 -205
  3300. package/dist/src2/__tests__/mir/verify.test.d.ts +0 -1
  3301. package/dist/src2/__tests__/mir/verify.test.js +0 -223
  3302. package/dist/src2/__tests__/optimizer/block_merge.test.d.ts +0 -1
  3303. package/dist/src2/__tests__/optimizer/block_merge.test.js +0 -78
  3304. package/dist/src2/__tests__/optimizer/branch_simplify.test.d.ts +0 -1
  3305. package/dist/src2/__tests__/optimizer/branch_simplify.test.js +0 -58
  3306. package/dist/src2/__tests__/optimizer/constant_fold.test.d.ts +0 -1
  3307. package/dist/src2/__tests__/optimizer/constant_fold.test.js +0 -131
  3308. package/dist/src2/__tests__/optimizer/copy_prop.test.d.ts +0 -1
  3309. package/dist/src2/__tests__/optimizer/copy_prop.test.js +0 -91
  3310. package/dist/src2/__tests__/optimizer/dce.test.d.ts +0 -1
  3311. package/dist/src2/__tests__/optimizer/dce.test.js +0 -76
  3312. package/dist/src2/__tests__/optimizer/pipeline.test.d.ts +0 -1
  3313. package/dist/src2/__tests__/optimizer/pipeline.test.js +0 -102
  3314. package/dist/src2/emit/compile.d.ts +0 -19
  3315. package/dist/src2/emit/compile.js +0 -80
  3316. package/dist/src2/emit/index.d.ts +0 -17
  3317. package/dist/src2/emit/index.js +0 -172
  3318. package/dist/src2/hir/lower.d.ts +0 -15
  3319. package/dist/src2/hir/lower.js +0 -378
  3320. package/dist/src2/hir/types.d.ts +0 -373
  3321. package/dist/src2/hir/types.js +0 -16
  3322. package/dist/src2/lir/lower.d.ts +0 -15
  3323. package/dist/src2/lir/lower.js +0 -453
  3324. package/dist/src2/lir/types.d.ts +0 -136
  3325. package/dist/src2/lir/types.js +0 -11
  3326. package/dist/src2/lir/verify.d.ts +0 -14
  3327. package/dist/src2/lir/verify.js +0 -113
  3328. package/dist/src2/mir/lower.d.ts +0 -9
  3329. package/dist/src2/mir/lower.js +0 -1030
  3330. package/dist/src2/mir/macro.d.ts +0 -22
  3331. package/dist/src2/mir/macro.js +0 -168
  3332. package/dist/src2/mir/types.d.ts +0 -183
  3333. package/dist/src2/mir/types.js +0 -11
  3334. package/dist/src2/mir/verify.d.ts +0 -16
  3335. package/dist/src2/mir/verify.js +0 -216
  3336. package/dist/src2/optimizer/block_merge.d.ts +0 -12
  3337. package/dist/src2/optimizer/block_merge.js +0 -84
  3338. package/dist/src2/optimizer/branch_simplify.d.ts +0 -9
  3339. package/dist/src2/optimizer/branch_simplify.js +0 -28
  3340. package/dist/src2/optimizer/constant_fold.d.ts +0 -10
  3341. package/dist/src2/optimizer/constant_fold.js +0 -85
  3342. package/dist/src2/optimizer/copy_prop.d.ts +0 -9
  3343. package/dist/src2/optimizer/copy_prop.js +0 -113
  3344. package/dist/src2/optimizer/dce.d.ts +0 -8
  3345. package/dist/src2/optimizer/dce.js +0 -155
  3346. package/dist/src2/optimizer/pipeline.d.ts +0 -10
  3347. package/dist/src2/optimizer/pipeline.js +0 -42
  3348. package/dist/swap_test.map.json +0 -14
  3349. package/dist/tsconfig.tsbuildinfo +0 -1
  3350. package/dist/typechecker/index.d.ts +0 -61
  3351. package/dist/typechecker/index.js +0 -1034
  3352. package/dist/types/entity-hierarchy.d.ts +0 -29
  3353. package/dist/types/entity-hierarchy.js +0 -107
  3354. package/doc-drafts/redscript-docs/docs/en/stdlib/graph.md +0 -104
  3355. package/doc-drafts/redscript-docs/docs/en/stdlib/parabola.md +0 -113
  3356. package/doc-drafts/redscript-docs/docs/en/stdlib/pathfind.md +0 -104
  3357. package/doc-drafts/redscript-docs/docs/en/stdlib/physics.md +0 -134
  3358. package/doc-drafts/redscript-docs/docs/en/stdlib/quaternion.md +0 -135
  3359. package/doc-drafts/redscript-docs/docs/zh/stdlib/graph.md +0 -104
  3360. package/doc-drafts/redscript-docs/docs/zh/stdlib/parabola.md +0 -113
  3361. package/doc-drafts/redscript-docs/docs/zh/stdlib/pathfind.md +0 -104
  3362. package/doc-drafts/redscript-docs/docs/zh/stdlib/physics.md +0 -134
  3363. package/doc-drafts/redscript-docs/docs/zh/stdlib/quaternion.md +0 -135
  3364. package/test_trig.ts +0 -43
  3365. /package/dist/{__tests__/cli.test.d.ts → src/__tests__/cli-check-fix.test.d.ts} +0 -0
  3366. /package/dist/{__tests__/codegen.test.d.ts → src/__tests__/cli-docs.test.d.ts} +0 -0
  3367. /package/dist/{__tests__/dce.test.d.ts → src/__tests__/compiler/benchmark-decorator.test.d.ts} +0 -0
  3368. /package/dist/{__tests__/entity-types.test.d.ts → src/__tests__/emit/index-coverage.test.d.ts} +0 -0
  3369. /package/dist/{__tests__/formatter.test.d.ts → src/__tests__/fmt/edge-cases.test.d.ts} +0 -0
  3370. /package/dist/{__tests__/lexer.test.d.ts → src/__tests__/lsp/rename.test.d.ts} +0 -0
  3371. /package/dist/{__tests__/lowering.test.d.ts → src/__tests__/optimizer/nbt-coalesce.test.d.ts} +0 -0
  3372. /package/dist/{__tests__/mc-syntax.test.d.ts → src/__tests__/optimizer/scoreboard-batch.test.d.ts} +0 -0
  3373. /package/dist/{__tests__/nbt.test.d.ts → src/__tests__/optimizer/single-call-inline.test.d.ts} +0 -0
  3374. /package/dist/{__tests__/optimizer-advanced.test.d.ts → src/__tests__/optimizer/tco-coverage-boost.test.d.ts} +0 -0
  3375. /package/dist/{__tests__/optimizer.test.d.ts → src/__tests__/optimizer/tco-coverage.test.d.ts} +0 -0
  3376. /package/dist/{__tests__/parser.test.d.ts → src/__tests__/optimizer/tco-edge-cases.test.d.ts} +0 -0
  3377. /package/docs/{ROADMAP.md → archive/ROADMAP-2026-03-16.md} +0 -0
  3378. /package/docs/{STDLIB_ROADMAP.md → archive/STDLIB_ROADMAP.md} +0 -0
  3379. /package/docs/{compiler-pipeline-redesign.md → archive/compiler-pipeline-redesign.md} +0 -0
  3380. /package/docs/{optimization-ideas.md → archive/optimization-ideas.md} +0 -0
  3381. /package/{README-benchmarks.md → docs/dev/README-benchmarks.md} +0 -0
  3382. /package/{README-vscode-test.md → docs/dev/README-vscode-test.md} +0 -0
@@ -3,220 +3,25 @@
3
3
  *
4
4
  * Recursive descent parser that converts tokens into an AST.
5
5
  * Uses precedence climbing for expression parsing.
6
+ *
7
+ * The Parser class extends a chain of sub-parsers:
8
+ * Parser → DeclParser → StmtParser → ExprParser → TypeParser → ParserBase
9
+ *
10
+ * Each layer adds methods for its domain; the full Parser assembles them
11
+ * into the top-level `parse()` entry point.
6
12
  */
7
13
 
8
- import { Lexer, type Token, type TokenKind } from '../lexer'
14
+ import { DiagnosticError } from '../diagnostics'
9
15
  import type {
10
- Block, ConstDecl, Decorator, EntitySelector, Expr, FnDecl, GlobalDecl, LiteralExpr, Param,
11
- Program, RangeExpr, SelectorFilter, SelectorKind, Span, Stmt, TypeNode, AssignOp,
12
- StructDecl, StructField, ExecuteSubcommand, EnumDecl, EnumVariant, BlockPosExpr, ImplBlock,
13
- CoordComponent, LambdaParam, EntityTypeName, ImportDecl, MatchPattern,
14
- InterfaceDecl, InterfaceMethod
16
+ Program, FnDecl, GlobalDecl, StructDecl, ImplBlock, EnumDecl,
17
+ ConstDecl, ImportDecl,
18
+ InterfaceDecl,
15
19
  } from '../ast/types'
16
- import type { BinOp, CmpOp } from '../ast/types'
17
- import { DiagnosticError } from '../diagnostics'
18
-
19
- // ---------------------------------------------------------------------------
20
- // Operator Precedence (higher = binds tighter)
21
- // ---------------------------------------------------------------------------
22
-
23
- const PRECEDENCE: Record<string, number> = {
24
- '||': 1,
25
- '&&': 2,
26
- '==': 3, '!=': 3,
27
- '<': 4, '<=': 4, '>': 4, '>=': 4, 'is': 4,
28
- '+': 5, '-': 5,
29
- '*': 6, '/': 6, '%': 6,
30
- }
31
-
32
- const BINARY_OPS = new Set(['||', '&&', '==', '!=', '<', '<=', '>', '>=', 'is', '+', '-', '*', '/', '%'])
33
-
34
- const ENTITY_TYPE_NAMES = new Set<EntityTypeName>([
35
- 'entity',
36
- 'Player',
37
- 'Mob',
38
- 'HostileMob',
39
- 'PassiveMob',
40
- 'Zombie',
41
- 'Skeleton',
42
- 'Creeper',
43
- 'Spider',
44
- 'Enderman',
45
- 'Blaze',
46
- 'Witch',
47
- 'Slime',
48
- 'ZombieVillager',
49
- 'Husk',
50
- 'Drowned',
51
- 'Stray',
52
- 'WitherSkeleton',
53
- 'CaveSpider',
54
- 'Pig',
55
- 'Cow',
56
- 'Sheep',
57
- 'Chicken',
58
- 'Villager',
59
- 'WanderingTrader',
60
- 'ArmorStand',
61
- 'Item',
62
- 'Arrow',
63
- ])
64
-
65
- function computeIsSingle(raw: string): boolean {
66
- if (/^@[spr](\[|$)/.test(raw)) return true
67
- if (/[\[,\s]limit=1[,\]\s]/.test(raw)) return true
68
- return false
69
- }
70
-
71
- // ---------------------------------------------------------------------------
72
- // Parser Class
73
- // ---------------------------------------------------------------------------
74
-
75
- export class Parser {
76
- private tokens: Token[]
77
- private pos: number = 0
78
- private sourceLines: string[]
79
- private filePath?: string
80
- /** Set to true once `module library;` is seen — all subsequent fn declarations
81
- * will be marked isLibraryFn=true. When library sources are parsed via the
82
- * `librarySources` compile option, each source is parsed by its own fresh
83
- * Parser instance, so this flag never bleeds into user code. */
84
- private inLibraryMode: boolean = false
85
- /** Warnings accumulated during parsing (e.g. deprecated keyword usage). */
86
- readonly warnings: string[] = []
87
- /** Parse errors collected during error-recovery mode. */
88
- readonly parseErrors: DiagnosticError[] = []
89
-
90
- constructor(tokens: Token[], source?: string, filePath?: string) {
91
- this.tokens = tokens
92
- this.sourceLines = source?.split('\n') ?? []
93
- this.filePath = filePath
94
- }
95
-
96
- // -------------------------------------------------------------------------
97
- // Utilities
98
- // -------------------------------------------------------------------------
99
-
100
- private peek(offset = 0): Token {
101
- const idx = this.pos + offset
102
- if (idx >= this.tokens.length) {
103
- return this.tokens[this.tokens.length - 1] // eof
104
- }
105
- return this.tokens[idx]
106
- }
107
-
108
- private advance(): Token {
109
- const token = this.tokens[this.pos]
110
- if (token.kind !== 'eof') this.pos++
111
- return token
112
- }
113
-
114
- private check(kind: TokenKind): boolean {
115
- return this.peek().kind === kind
116
- }
117
-
118
- private match(...kinds: TokenKind[]): boolean {
119
- for (const kind of kinds) {
120
- if (this.check(kind)) {
121
- this.advance()
122
- return true
123
- }
124
- }
125
- return false
126
- }
127
-
128
- private expect(kind: TokenKind): Token {
129
- const token = this.peek()
130
- if (token.kind !== kind) {
131
- throw new DiagnosticError(
132
- 'ParseError',
133
- `Expected '${kind}' but got '${token.kind}'`,
134
- { file: this.filePath, line: token.line, col: token.col },
135
- this.sourceLines
136
- )
137
- }
138
- return this.advance()
139
- }
140
-
141
- private error(message: string): never {
142
- const token = this.peek()
143
- throw new DiagnosticError(
144
- 'ParseError',
145
- message,
146
- { file: this.filePath, line: token.line, col: token.col },
147
- this.sourceLines
148
- )
149
- }
150
-
151
- private withLoc<T extends object>(node: T, token: Token): T {
152
- const span: Span = { line: token.line, col: token.col }
153
- Object.defineProperty(node, 'span', {
154
- value: span,
155
- enumerable: false,
156
- configurable: true,
157
- writable: true,
158
- })
159
- return node
160
- }
161
-
162
- private getLocToken(node: object): Token | null {
163
- const span = (node as { span?: Span }).span
164
- if (!span) {
165
- return null
166
- }
167
- return { kind: 'eof', value: '', line: span.line, col: span.col }
168
- }
169
-
170
- // -------------------------------------------------------------------------
171
- // Error Recovery
172
- // -------------------------------------------------------------------------
173
-
174
- /**
175
- * Synchronize to the next top-level declaration boundary after a parse error.
176
- * Skips tokens until we find a keyword that starts a top-level declaration,
177
- * or a `}` (end of a block), or EOF.
178
- */
179
- private syncToNextDecl(): void {
180
- const TOP_LEVEL_KEYWORDS = new Set([
181
- 'fn', 'struct', 'impl', 'enum', 'const', 'let', 'export', 'declare', 'import', 'namespace', 'module'
182
- ])
183
- while (!this.check('eof')) {
184
- const kind = this.peek().kind
185
- if (kind === '}') {
186
- this.advance() // consume the stray `}`
187
- return
188
- }
189
- if (TOP_LEVEL_KEYWORDS.has(kind)) {
190
- return
191
- }
192
- // Also recover on a plain ident that could be 'import' keyword used as ident
193
- if (kind === 'ident' && this.peek().value === 'import') {
194
- return
195
- }
196
- this.advance()
197
- }
198
- }
199
-
200
- /**
201
- * Synchronize to the next statement boundary inside a block after a parse error.
202
- * Skips tokens until we reach `;`, `}`, or EOF.
203
- */
204
- private syncToNextStmt(): void {
205
- while (!this.check('eof')) {
206
- const kind = this.peek().kind
207
- if (kind === ';') {
208
- this.advance() // consume the `;`
209
- return
210
- }
211
- if (kind === '}') {
212
- return // leave `}` for parseBlock to consume
213
- }
214
- this.advance()
215
- }
216
- }
20
+ import { DeclParser } from './decl-parser'
217
21
 
22
+ export class Parser extends DeclParser {
218
23
  // -------------------------------------------------------------------------
219
- // Program
24
+ // Program (top-level entry point)
220
25
  // -------------------------------------------------------------------------
221
26
 
222
27
  parse(defaultNamespace = 'redscript'): Program {
@@ -232,7 +37,6 @@ export class Parser {
232
37
  let isLibrary = false
233
38
  let moduleName: string | undefined
234
39
 
235
- // Check for namespace declaration
236
40
  if (this.check('namespace')) {
237
41
  this.advance()
238
42
  const name = this.expect('ident')
@@ -240,10 +44,6 @@ export class Parser {
240
44
  this.match(';')
241
45
  }
242
46
 
243
- // Check for module declaration: `module library;` or `module <name>;`
244
- // Library-mode: all functions parsed from this point are marked isLibraryFn=true.
245
- // When using the `librarySources` compile option, each library source is parsed
246
- // by its own fresh Parser — so this flag never bleeds into user code.
247
47
  if (this.check('module')) {
248
48
  this.advance()
249
49
  const modKind = this.expect('ident')
@@ -251,17 +51,14 @@ export class Parser {
251
51
  isLibrary = true
252
52
  this.inLibraryMode = true
253
53
  } else {
254
- // Named module declaration: `module math;`
255
54
  moduleName = modKind.value
256
55
  }
257
56
  this.match(';')
258
57
  }
259
58
 
260
- // Parse struct, function, and import declarations
261
59
  while (!this.check('eof')) {
262
60
  try {
263
61
  if (this.check('decorator') && this.peek().value.startsWith('@config')) {
264
- // @config decorator on a global let
265
62
  const decorToken = this.advance()
266
63
  const decorator = this.parseDecoratorValue(decorToken.value)
267
64
  if (!this.check('let')) {
@@ -274,8 +71,7 @@ export class Parser {
274
71
  } else if (this.check('let')) {
275
72
  globals.push(this.parseGlobalDecl(true))
276
73
  } else if (this.check('decorator') && this.peek().value === '@singleton') {
277
- // @singleton decorator on a struct
278
- this.advance() // consume '@singleton'
74
+ this.advance()
279
75
  if (!this.check('struct')) {
280
76
  this.error('@singleton decorator must be followed by a struct declaration')
281
77
  }
@@ -293,19 +89,16 @@ export class Parser {
293
89
  } else if (this.check('const')) {
294
90
  consts.push(this.parseConstDecl())
295
91
  } else if (this.check('declare')) {
296
- // Declaration-only stub (e.g. from builtins.d.mcrs) — parse and discard
297
- this.advance() // consume 'declare'
92
+ this.advance()
298
93
  this.parseDeclareStub()
299
94
  } else if (this.check('export')) {
300
95
  declarations.push(this.parseExportedFnDecl())
301
96
  } else if (this.check('import') || (this.check('ident') && this.peek().value === 'import')) {
302
- // `import math::sin;` or `import math::*;` or `import player_utils;` (whole-module file import)
303
- this.advance() // consume 'import' (keyword or ident)
97
+ this.advance()
304
98
  const importToken = this.peek()
305
99
  const modName = this.expect('ident').value
306
- // Check for `::` — if present, this is a symbol import; otherwise, whole-module import
307
100
  if (this.check('::')) {
308
- this.advance() // consume '::'
101
+ this.advance()
309
102
  let symbol: string
310
103
  if (this.check('*')) {
311
104
  this.advance()
@@ -316,7 +109,6 @@ export class Parser {
316
109
  this.match(';')
317
110
  imports.push(this.withLoc({ moduleName: modName, symbol }, importToken))
318
111
  } else {
319
- // Whole-module import: `import player_utils;`
320
112
  this.match(';')
321
113
  imports.push(this.withLoc({ moduleName: modName, symbol: undefined }, importToken))
322
114
  }
@@ -335,2337 +127,4 @@ export class Parser {
335
127
 
336
128
  return { namespace, moduleName, globals, declarations, structs, implBlocks, enums, consts, imports, interfaces, isLibrary }
337
129
  }
338
-
339
- // -------------------------------------------------------------------------
340
- // Struct Declaration
341
- // -------------------------------------------------------------------------
342
-
343
- private parseStructDecl(): StructDecl {
344
- const structToken = this.expect('struct')
345
- const name = this.expect('ident').value
346
- const extendsName = this.match('extends') ? this.expect('ident').value : undefined
347
- this.expect('{')
348
-
349
- const fields: StructField[] = []
350
- while (!this.check('}') && !this.check('eof')) {
351
- const fieldName = this.expect('ident').value
352
- this.expect(':')
353
- const fieldType = this.parseType()
354
- fields.push({ name: fieldName, type: fieldType })
355
-
356
- // Allow optional comma or semicolon between fields
357
- this.match(',')
358
- }
359
-
360
- this.expect('}')
361
- return this.withLoc({ name, extends: extendsName, fields }, structToken)
362
- }
363
-
364
- private parseEnumDecl(): EnumDecl {
365
- const enumToken = this.expect('enum')
366
- const name = this.expect('ident').value
367
- this.expect('{')
368
-
369
- const variants: EnumVariant[] = []
370
- let nextValue = 0
371
-
372
- while (!this.check('}') && !this.check('eof')) {
373
- const variantToken = this.expect('ident')
374
- const variant: EnumVariant = { name: variantToken.value }
375
-
376
- // Payload fields: Variant(field: Type, ...)
377
- if (this.check('(')) {
378
- this.advance() // consume '('
379
- const fields: { name: string; type: TypeNode }[] = []
380
- while (!this.check(')') && !this.check('eof')) {
381
- const fieldName = this.expect('ident').value
382
- this.expect(':')
383
- const fieldType = this.parseType()
384
- fields.push({ name: fieldName, type: fieldType })
385
- if (!this.match(',')) break
386
- }
387
- this.expect(')')
388
- variant.fields = fields
389
- }
390
-
391
- if (this.match('=')) {
392
- const valueToken = this.expect('int_lit')
393
- variant.value = parseInt(valueToken.value, 10)
394
- nextValue = variant.value + 1
395
- } else {
396
- variant.value = nextValue++
397
- }
398
-
399
- variants.push(variant)
400
-
401
- if (!this.match(',')) {
402
- break
403
- }
404
- }
405
-
406
- this.expect('}')
407
- return this.withLoc({ name, variants }, enumToken)
408
- }
409
-
410
- private parseImplBlock(): ImplBlock {
411
- const implToken = this.expect('impl')
412
- let traitName: string | undefined
413
- let typeName: string
414
- const firstName = this.expect('ident').value
415
- if (this.match('for')) {
416
- traitName = firstName
417
- typeName = this.expect('ident').value
418
- } else {
419
- typeName = firstName
420
- }
421
- this.expect('{')
422
-
423
- const methods: FnDecl[] = []
424
- while (!this.check('}') && !this.check('eof')) {
425
- methods.push(this.parseFnDecl(typeName))
426
- }
427
-
428
- this.expect('}')
429
- return this.withLoc({ kind: 'impl_block', traitName, typeName, methods }, implToken)
430
- }
431
-
432
- /**
433
- * Parse an interface declaration:
434
- * interface <Name> {
435
- * fn <method>(<params>): <retType>
436
- * ...
437
- * }
438
- * Method signatures have no body — they are prototype-only.
439
- */
440
- private parseInterfaceDecl(): InterfaceDecl {
441
- const ifaceToken = this.expect('interface')
442
- const name = this.expect('ident').value
443
- this.expect('{')
444
-
445
- const methods: InterfaceMethod[] = []
446
- while (!this.check('}') && !this.check('eof')) {
447
- const fnToken = this.expect('fn')
448
- const methodName = this.expect('ident').value
449
- this.expect('(')
450
- const params = this.parseInterfaceParams()
451
- this.expect(')')
452
- let returnType: TypeNode | undefined
453
- if (this.match(':')) {
454
- returnType = this.parseType()
455
- }
456
- // No body — interface methods are signature-only
457
- methods.push(this.withLoc({ name: methodName, params, returnType }, fnToken) as InterfaceMethod)
458
- }
459
-
460
- this.expect('}')
461
- return this.withLoc({ name, methods }, ifaceToken) as InterfaceDecl
462
- }
463
-
464
- /**
465
- * Parse interface method params — like parseParams but allows bare `self`
466
- * (no `:` required for the first param named 'self').
467
- */
468
- private parseInterfaceParams(): Param[] {
469
- const params: Param[] = []
470
- if (!this.check(')')) {
471
- do {
472
- const paramToken = this.expect('ident')
473
- const paramName = paramToken.value
474
- let type: TypeNode
475
- if (params.length === 0 && paramName === 'self' && !this.check(':')) {
476
- // self without type annotation — use a sentinel struct type
477
- type = { kind: 'named', name: 'void' }
478
- } else {
479
- this.expect(':')
480
- type = this.parseType()
481
- }
482
- params.push(this.withLoc({ name: paramName, type }, paramToken))
483
- } while (this.match(','))
484
- }
485
- return params
486
- }
487
-
488
- private parseConstDecl(): ConstDecl {
489
- const constToken = this.expect('const')
490
- const name = this.expect('ident').value
491
- let type: TypeNode | undefined
492
- if (this.match(':')) {
493
- type = this.parseType()
494
- }
495
- this.expect('=')
496
- const value = this.parseLiteralExpr()
497
- this.match(';')
498
- // Infer type from value if not provided
499
- const inferredType: TypeNode = type ?? (
500
- value.kind === 'str_lit' ? { kind: 'named', name: 'string' } :
501
- value.kind === 'bool_lit' ? { kind: 'named', name: 'bool' } :
502
- value.kind === 'float_lit' ? { kind: 'named', name: 'fixed' } :
503
- { kind: 'named', name: 'int' }
504
- )
505
- return this.withLoc({ name, type: inferredType, value }, constToken)
506
- }
507
-
508
- private parseGlobalDecl(mutable: boolean): GlobalDecl {
509
- const token = this.advance() // consume 'let'
510
- const name = this.expect('ident').value
511
- this.expect(':')
512
- const type = this.parseType()
513
- let init: Expr
514
- if (this.match('=')) {
515
- init = this.parseExpr()
516
- } else {
517
- // No init — valid only for @config-decorated globals (resolved later)
518
- // Use a placeholder zero literal; will be replaced in compile step
519
- init = { kind: 'int_lit', value: 0 }
520
- }
521
- this.match(';')
522
- return this.withLoc({ kind: 'global', name, type, init, mutable }, token)
523
- }
524
-
525
- // -------------------------------------------------------------------------
526
- // Function Declaration
527
- // -------------------------------------------------------------------------
528
-
529
- /** Parse `export fn name(...)` — marks the function as exported (survives DCE). */
530
- private parseExportedFnDecl(): FnDecl {
531
- this.expect('export')
532
- const fn = this.parseFnDecl()
533
- fn.isExported = true
534
- return fn
535
- }
536
-
537
- private parseFnDecl(implTypeName?: string): FnDecl {
538
- const decorators = this.parseDecorators()
539
- const watchObjective = decorators.find(decorator => decorator.name === 'watch')?.args?.objective
540
-
541
- // Map @keep decorator to isExported flag (backward compat)
542
- let isExported: boolean | undefined
543
- const filteredDecorators = decorators.filter(d => {
544
- if (d.name === 'keep') {
545
- isExported = true
546
- return false
547
- }
548
- return true
549
- })
550
-
551
- const fnToken = this.expect('fn')
552
- const name = this.expect('ident').value
553
-
554
- // Parse optional generic type parameters: fn max<T>(...)
555
- let typeParams: string[] | undefined
556
- if (this.check('<')) {
557
- this.advance() // consume '<'
558
- typeParams = []
559
- do {
560
- typeParams.push(this.expect('ident').value)
561
- } while (this.match(','))
562
- this.expect('>')
563
- }
564
-
565
- this.expect('(')
566
- const params = this.parseParams(implTypeName)
567
- this.expect(')')
568
-
569
- let returnType: TypeNode = { kind: 'named', name: 'void' }
570
- if (this.match('->') || this.match(':')) {
571
- returnType = this.parseType()
572
- }
573
-
574
- const body = this.parseBlock()
575
- // Record the closing '}' line as endLine for accurate LSP scope detection
576
- const closingBraceLine = this.tokens[this.pos - 1]?.line
577
-
578
- const fn: import('../ast/types').FnDecl = this.withLoc(
579
- { name, typeParams, params, returnType, decorators: filteredDecorators, body,
580
- isLibraryFn: this.inLibraryMode || undefined, isExported, watchObjective },
581
- fnToken,
582
- )
583
- if (fn.span && closingBraceLine) fn.span.endLine = closingBraceLine
584
- return fn
585
- }
586
-
587
- /** Parse a `declare fn name(params): returnType;` stub — no body, just discard. */
588
- private parseDeclareStub(): void {
589
- this.expect('fn')
590
- this.expect('ident') // name
591
- this.expect('(')
592
- // consume params until ')'
593
- let depth = 1
594
- while (!this.check('eof') && depth > 0) {
595
- const t = this.advance()
596
- if (t.kind === '(') depth++
597
- else if (t.kind === ')') depth--
598
- }
599
- // optional return type annotation `: type` or `-> type`
600
- if (this.match(':') || this.match('->')) {
601
- this.parseType()
602
- }
603
- this.match(';') // consume trailing semicolon
604
- }
605
-
606
- private parseDecorators(): Decorator[] {
607
- const decorators: Decorator[] = []
608
-
609
- while (this.check('decorator')) {
610
- const token = this.advance()
611
- const decorator = this.parseDecoratorValue(token.value)
612
- decorators.push(decorator)
613
- }
614
-
615
- return decorators
616
- }
617
-
618
- private parseDecoratorValue(value: string): Decorator {
619
- // Parse @tick, @on(PlayerDeath), @on_trigger("name"), or @deprecated("msg with ) parens")
620
- // Use a greedy match for args that allows any content inside the outermost parens.
621
- const match = value.match(/^@([A-Za-z_][A-Za-z0-9_-]*)(?:\((.*)\))?$/s)
622
- if (!match) {
623
- this.error(`Invalid decorator: ${value}`)
624
- }
625
-
626
- const name = match[1] as Decorator['name']
627
- const argsStr = match[2]
628
-
629
- if (!argsStr) {
630
- return { name }
631
- }
632
-
633
- if (name === 'profile' || name === 'memoize') {
634
- this.error(`@${name} decorator does not accept arguments`)
635
- }
636
-
637
- const args: Decorator['args'] = {}
638
-
639
- if (name === 'on') {
640
- const eventTypeMatch = argsStr.match(/^([A-Za-z_][A-Za-z0-9_]*)$/)
641
- if (eventTypeMatch) {
642
- args.eventType = eventTypeMatch[1]
643
- return { name, args }
644
- }
645
- }
646
-
647
- // Handle @watch("objective"), @on_trigger("name"), @on_advancement("id"), @on_craft("item"), @on_join_team("team")
648
- if (name === 'watch' || name === 'on_trigger' || name === 'on_advancement' || name === 'on_craft' || name === 'on_join_team') {
649
- const strMatch = argsStr.match(/^"([^"]*)"$/)
650
- if (strMatch) {
651
- if (name === 'watch') {
652
- args.objective = strMatch[1]
653
- } else if (name === 'on_trigger') {
654
- args.trigger = strMatch[1]
655
- } else if (name === 'on_advancement') {
656
- args.advancement = strMatch[1]
657
- } else if (name === 'on_craft') {
658
- args.item = strMatch[1]
659
- } else if (name === 'on_join_team') {
660
- args.team = strMatch[1]
661
- }
662
- return { name, args }
663
- }
664
- }
665
-
666
- // Handle @config("key", default: value)
667
- if (name === 'config') {
668
- // Format: @config("key_name", default: 42)
669
- const configMatch = argsStr.match(/^"([^"]+)"\s*,\s*default\s*:\s*(-?\d+(?:\.\d+)?)$/)
670
- if (configMatch) {
671
- return { name, args: { configKey: configMatch[1], configDefault: parseFloat(configMatch[2]) } }
672
- }
673
- // Format: @config("key_name") — no default
674
- const keyOnlyMatch = argsStr.match(/^"([^"]+)"$/)
675
- if (keyOnlyMatch) {
676
- return { name, args: { configKey: keyOnlyMatch[1] } }
677
- }
678
- this.error(`Invalid @config syntax. Expected: @config("key", default: value) or @config("key")`)
679
- }
680
-
681
- // Handle @deprecated("message")
682
- if (name === 'deprecated') {
683
- const strMatch = argsStr.match(/^"([^"]*)"$/)
684
- if (strMatch) {
685
- return { name, args: { message: strMatch[1] } }
686
- }
687
- // @deprecated with no message string
688
- return { name, args: {} }
689
- }
690
-
691
- // @test("label") — marks a test function with a human-readable label
692
- if (name === 'test') {
693
- const strMatch = argsStr.match(/^"([^"]*)"$/)
694
- if (strMatch) {
695
- return { name, args: { testLabel: strMatch[1] } }
696
- }
697
- // @test with no label — use empty string
698
- return { name, args: { testLabel: '' } }
699
- }
700
-
701
- // @require_on_load(fn_name) — when this fn is used, fn_name is called from __load.
702
- // Accepts bare identifiers (with optional leading _) or quoted strings.
703
- if (name === 'require_on_load') {
704
- const rawArgs: NonNullable<Decorator['rawArgs']> = []
705
- for (const part of argsStr.split(',')) {
706
- const trimmed = part.trim()
707
- // Bare identifier: @require_on_load(_math_init)
708
- const identMatch = trimmed.match(/^([A-Za-z_][A-Za-z0-9_]*)$/)
709
- if (identMatch) {
710
- rawArgs.push({ kind: 'string', value: identMatch[1] })
711
- } else {
712
- // Quoted string fallback: @require_on_load("_math_init")
713
- const strMatch = trimmed.match(/^"([^"]*)"$/)
714
- if (strMatch) {
715
- rawArgs.push({ kind: 'string', value: strMatch[1] })
716
- }
717
- }
718
- }
719
- return { name, rawArgs }
720
- }
721
-
722
- // Handle key=value format (e.g., rate=20, batch=10, onDone=fn_name)
723
- for (const part of argsStr.split(',')) {
724
- const [key, val] = part.split('=').map(s => s.trim())
725
- if (key === 'rate') {
726
- args.rate = parseInt(val, 10)
727
- } else if (key === 'ticks') {
728
- args.ticks = parseInt(val, 10)
729
- } else if (key === 'batch') {
730
- args.batch = parseInt(val, 10)
731
- } else if (key === 'onDone') {
732
- args.onDone = val.replace(/^["']|["']$/g, '')
733
- } else if (key === 'trigger') {
734
- args.trigger = val
735
- } else if (key === 'advancement') {
736
- args.advancement = val
737
- } else if (key === 'item') {
738
- args.item = val
739
- } else if (key === 'team') {
740
- args.team = val
741
- } else if (key === 'max') {
742
- args.max = parseInt(val, 10)
743
- }
744
- }
745
-
746
- return { name, args }
747
- }
748
-
749
- private parseParams(implTypeName?: string): Param[] {
750
- const params: Param[] = []
751
-
752
- if (!this.check(')')) {
753
- do {
754
- const paramToken = this.expect('ident')
755
- const name = paramToken.value
756
- let type: TypeNode
757
- if (implTypeName && params.length === 0 && name === 'self' && !this.check(':')) {
758
- type = { kind: 'struct', name: implTypeName }
759
- } else {
760
- this.expect(':')
761
- type = this.parseType()
762
- }
763
- let defaultValue: Expr | undefined
764
- if (this.match('=')) {
765
- defaultValue = this.parseExpr()
766
- }
767
- params.push(this.withLoc({ name, type, default: defaultValue }, paramToken))
768
- } while (this.match(','))
769
- }
770
-
771
- return params
772
- }
773
-
774
- private parseType(): TypeNode {
775
- const token = this.peek()
776
- let type: TypeNode
777
-
778
- if (token.kind === '(') {
779
- // Disambiguate: tuple type `(T, T)` vs function type `(T) -> R`
780
- // Look ahead: parse elements, then check if '->' follows.
781
- const saved = this.pos
782
- this.advance() // consume '('
783
- const elements: TypeNode[] = []
784
- if (!this.check(')')) {
785
- do {
786
- elements.push(this.parseType())
787
- } while (this.match(','))
788
- }
789
- this.expect(')')
790
- if (this.check('->')) {
791
- // It's a function type — restore and use existing parseFunctionType
792
- this.pos = saved
793
- return this.parseFunctionType()
794
- }
795
- // It's a tuple type
796
- return { kind: 'tuple', elements }
797
- }
798
-
799
- if (token.kind === 'float') {
800
- this.advance()
801
- const filePart = this.filePath ? `${this.filePath}:` : ''
802
- this.warnings.push(
803
- `[DeprecatedType] ${filePart}line ${token.line}, col ${token.col}: 'float' is deprecated, use 'fixed' instead (×10000 fixed-point)`
804
- )
805
- type = { kind: 'named', name: 'float' }
806
- } else if (token.kind === 'int' || token.kind === 'bool' ||
807
- token.kind === 'fixed' || token.kind === 'string' || token.kind === 'void' ||
808
- token.kind === 'BlockPos') {
809
- this.advance()
810
- type = { kind: 'named', name: token.kind }
811
- } else if (token.kind === 'ident') {
812
- this.advance()
813
- if (token.value === 'selector' && this.check('<')) {
814
- this.advance() // consume <
815
- const entityType = this.expect('ident').value
816
- this.expect('>')
817
- type = { kind: 'selector', entityType }
818
- } else if (token.value === 'selector') {
819
- type = { kind: 'selector' }
820
- } else if (token.value === 'Option' && this.check('<')) {
821
- this.advance() // consume <
822
- const inner = this.parseType()
823
- this.expect('>')
824
- type = { kind: 'option', inner }
825
- } else if (token.value === 'double' || token.value === 'byte' ||
826
- token.value === 'short' || token.value === 'long' ||
827
- token.value === 'format_string') {
828
- type = { kind: 'named', name: token.value as any }
829
- } else {
830
- type = { kind: 'struct', name: token.value }
831
- }
832
- } else {
833
- this.error(`Expected type, got '${token.kind}'`)
834
- }
835
-
836
- while (this.match('[')) {
837
- this.expect(']')
838
- type = { kind: 'array', elem: type }
839
- }
840
-
841
- return type
842
- }
843
-
844
- private parseFunctionType(): TypeNode {
845
- this.expect('(')
846
- const params: TypeNode[] = []
847
-
848
- if (!this.check(')')) {
849
- do {
850
- params.push(this.parseType())
851
- } while (this.match(','))
852
- }
853
-
854
- this.expect(')')
855
- this.expect('->')
856
- const returnType = this.parseType()
857
- return { kind: 'function_type', params, return: returnType }
858
- }
859
-
860
- // -------------------------------------------------------------------------
861
- // Block & Statements
862
- // -------------------------------------------------------------------------
863
-
864
- private parseBlock(): Block {
865
- this.expect('{')
866
- const stmts: Stmt[] = []
867
-
868
- while (!this.check('}') && !this.check('eof')) {
869
- try {
870
- stmts.push(this.parseStmt())
871
- } catch (err) {
872
- if (err instanceof DiagnosticError) {
873
- this.parseErrors.push(err)
874
- this.syncToNextStmt()
875
- } else {
876
- throw err
877
- }
878
- }
879
- }
880
-
881
- this.expect('}')
882
- return stmts
883
- }
884
-
885
- private parseStmt(): Stmt {
886
- // Let statement
887
- if (this.check('let')) {
888
- return this.parseLetStmt()
889
- }
890
-
891
- // Const declaration (local)
892
- if (this.check('const')) {
893
- return this.parseLocalConstDecl()
894
- }
895
-
896
- // Return statement
897
- if (this.check('return')) {
898
- return this.parseReturnStmt()
899
- }
900
-
901
- // Break statement (with optional label: break outer)
902
- if (this.check('break')) {
903
- const token = this.advance()
904
- // Check if next token is an identifier (label name)
905
- if (this.check('ident')) {
906
- const labelToken = this.advance()
907
- this.match(';')
908
- return this.withLoc({ kind: 'break_label', label: labelToken.value }, token)
909
- }
910
- this.match(';')
911
- return this.withLoc({ kind: 'break' }, token)
912
- }
913
-
914
- // Continue statement (with optional label: continue outer)
915
- if (this.check('continue')) {
916
- const token = this.advance()
917
- // Check if next token is an identifier (label name)
918
- if (this.check('ident')) {
919
- const labelToken = this.advance()
920
- this.match(';')
921
- return this.withLoc({ kind: 'continue_label', label: labelToken.value }, token)
922
- }
923
- this.match(';')
924
- return this.withLoc({ kind: 'continue' }, token)
925
- }
926
-
927
- // If statement
928
- if (this.check('if')) {
929
- return this.parseIfStmt()
930
- }
931
-
932
- // Labeled loop: ident ':' (while|for|foreach|repeat)
933
- if (this.check('ident') && this.peek(1).kind === ':') {
934
- const labelToken = this.advance() // consume ident
935
- const colonToken = this.advance() // consume ':'
936
- // Now parse the loop body
937
- let loopStmt: Stmt
938
- if (this.check('while')) {
939
- loopStmt = this.parseWhileStmt()
940
- } else if (this.check('for')) {
941
- loopStmt = this.parseForStmt()
942
- } else if (this.check('foreach')) {
943
- loopStmt = this.parseForeachStmt()
944
- } else if (this.check('repeat')) {
945
- loopStmt = this.parseRepeatStmt()
946
- } else {
947
- throw new DiagnosticError(
948
- 'ParseError',
949
- `Expected loop statement after label '${labelToken.value}:', found '${this.peek().kind}'`,
950
- { line: labelToken.line, col: labelToken.col },
951
- )
952
- }
953
- return this.withLoc({ kind: 'labeled_loop', label: labelToken.value, body: loopStmt }, labelToken)
954
- }
955
-
956
- // While statement
957
- if (this.check('while')) {
958
- return this.parseWhileStmt()
959
- }
960
-
961
- // Do-while statement
962
- if (this.check('do')) {
963
- return this.parseDoWhileStmt()
964
- }
965
-
966
- // Repeat N statement
967
- if (this.check('repeat')) {
968
- return this.parseRepeatStmt()
969
- }
970
-
971
- // For statement
972
- if (this.check('for')) {
973
- return this.parseForStmt()
974
- }
975
-
976
- // Foreach statement
977
- if (this.check('foreach')) {
978
- return this.parseForeachStmt()
979
- }
980
-
981
- if (this.check('match')) {
982
- return this.parseMatchStmt()
983
- }
984
-
985
- // As block
986
- if (this.check('as')) {
987
- return this.parseAsStmt()
988
- }
989
-
990
- // At block
991
- if (this.check('at')) {
992
- return this.parseAtStmt()
993
- }
994
-
995
- // Execute statement: execute as/at/if/unless/in ... run { }
996
- if (this.check('execute')) {
997
- return this.parseExecuteStmt()
998
- }
999
-
1000
- // Raw command
1001
- if (this.check('raw_cmd')) {
1002
- const token = this.advance()
1003
- const cmd = token.value
1004
- this.match(';') // optional semicolon (raw consumes it)
1005
- return this.withLoc({ kind: 'raw', cmd }, token)
1006
- }
1007
-
1008
- // Expression statement
1009
- return this.parseExprStmt()
1010
- }
1011
-
1012
- private parseLetStmt(): Stmt {
1013
- const letToken = this.expect('let')
1014
-
1015
- // Destructuring: let (a, b, c) = expr;
1016
- if (this.check('(')) {
1017
- this.advance() // consume '('
1018
- const names: string[] = []
1019
- do {
1020
- names.push(this.expect('ident').value)
1021
- } while (this.match(','))
1022
- this.expect(')')
1023
- let type: TypeNode | undefined
1024
- if (this.match(':')) {
1025
- type = this.parseType()
1026
- }
1027
- this.expect('=')
1028
- const init = this.parseExpr()
1029
- this.match(';')
1030
- return this.withLoc({ kind: 'let_destruct', names, type, init }, letToken)
1031
- }
1032
-
1033
- const name = this.expect('ident').value
1034
-
1035
- let type: TypeNode | undefined
1036
- if (this.match(':')) {
1037
- type = this.parseType()
1038
- }
1039
-
1040
- this.expect('=')
1041
- const init = this.parseExpr()
1042
- this.match(';')
1043
-
1044
- return this.withLoc({ kind: 'let', name, type, init }, letToken)
1045
- }
1046
-
1047
- private parseLocalConstDecl(): Stmt {
1048
- const constToken = this.expect('const')
1049
- const name = this.expect('ident').value
1050
- this.expect(':')
1051
- const type = this.parseType()
1052
- this.expect('=')
1053
- const value = this.parseExpr()
1054
- this.match(';')
1055
- return this.withLoc({ kind: 'const_decl', name, type, value }, constToken)
1056
- }
1057
-
1058
- private parseReturnStmt(): Stmt {
1059
- const returnToken = this.expect('return')
1060
-
1061
- let value: Expr | undefined
1062
- if (!this.check(';') && !this.check('}') && !this.check('eof')) {
1063
- value = this.parseExpr()
1064
- }
1065
-
1066
- this.match(';')
1067
- return this.withLoc({ kind: 'return', value }, returnToken)
1068
- }
1069
-
1070
- private parseIfStmt(): Stmt {
1071
- const ifToken = this.expect('if')
1072
-
1073
- // if let Some(x) = expr { ... }
1074
- if (this.check('let') && this.peek(1).kind === 'ident' && this.peek(1).value === 'Some') {
1075
- this.advance() // consume 'let'
1076
- this.advance() // consume 'Some'
1077
- this.expect('(')
1078
- const binding = this.expect('ident').value
1079
- this.expect(')')
1080
- this.expect('=')
1081
- const init = this.parseExpr()
1082
- const then = this.parseBlock()
1083
-
1084
- let else_: Block | undefined
1085
- if (this.match('else')) {
1086
- if (this.check('if')) {
1087
- else_ = [this.parseIfStmt()]
1088
- } else {
1089
- else_ = this.parseBlock()
1090
- }
1091
- }
1092
-
1093
- return this.withLoc({ kind: 'if_let_some', binding, init, then, else_ }, ifToken)
1094
- }
1095
-
1096
- const cond = this.parseParenOptionalCond()
1097
- const then = this.parseBlock()
1098
-
1099
- let else_: Block | undefined
1100
- if (this.match('else')) {
1101
- if (this.check('if')) {
1102
- // else if
1103
- else_ = [this.parseIfStmt()]
1104
- } else {
1105
- else_ = this.parseBlock()
1106
- }
1107
- }
1108
-
1109
- return this.withLoc({ kind: 'if', cond, then, else_ }, ifToken)
1110
- }
1111
-
1112
- private parseWhileStmt(): Stmt {
1113
- const whileToken = this.expect('while')
1114
-
1115
- // while let Some(x) = expr { ... }
1116
- if (this.check('let') && this.peek(1).kind === 'ident' && this.peek(1).value === 'Some') {
1117
- this.advance() // consume 'let'
1118
- this.advance() // consume 'Some'
1119
- this.expect('(')
1120
- const binding = this.expect('ident').value
1121
- this.expect(')')
1122
- this.expect('=')
1123
- const init = this.parseExpr()
1124
- const body = this.parseBlock()
1125
- return this.withLoc({ kind: 'while_let_some', binding, init, body }, whileToken)
1126
- }
1127
-
1128
- const cond = this.parseParenOptionalCond()
1129
- const body = this.parseBlock()
1130
-
1131
- return this.withLoc({ kind: 'while', cond, body }, whileToken)
1132
- }
1133
-
1134
- private parseDoWhileStmt(): Stmt {
1135
- const doToken = this.expect('do')
1136
- const body = this.parseBlock()
1137
- this.expect('while')
1138
- const cond = this.parseParenOptionalCond()
1139
- this.match(';')
1140
- return this.withLoc({ kind: 'do_while', cond, body }, doToken)
1141
- }
1142
-
1143
- private parseRepeatStmt(): Stmt {
1144
- const repeatToken = this.expect('repeat')
1145
- const countToken = this.expect('int_lit')
1146
- const count = parseInt(countToken.value, 10)
1147
- const body = this.parseBlock()
1148
- return this.withLoc({ kind: 'repeat', count, body }, repeatToken)
1149
- }
1150
-
1151
- private parseParenOptionalCond(): Expr {
1152
- if (this.match('(')) {
1153
- const cond = this.parseExpr()
1154
- this.expect(')')
1155
- return cond
1156
- }
1157
- return this.parseExpr()
1158
- }
1159
-
1160
- private parseForStmt(): Stmt {
1161
- const forToken = this.expect('for')
1162
-
1163
- // Check for for-range syntax: for <ident> in <range_lit> { ... }
1164
- if (this.check('ident') && this.peek(1).kind === 'in') {
1165
- return this.parseForRangeStmt(forToken)
1166
- }
1167
-
1168
- this.expect('(')
1169
-
1170
- // Detect for-in-array syntax: for ( let ident in ident , lenExpr ) { ... }
1171
- if (this.check('let') && this.peek(1).kind === 'ident' && this.peek(2).kind === 'in' && this.peek(3).kind === 'ident' && this.peek(4).kind === ',') {
1172
- this.advance() // consume 'let'
1173
- const binding = this.expect('ident').value
1174
- this.expect('in')
1175
- const arrayName = this.expect('ident').value
1176
- this.expect(',')
1177
- const lenExpr = this.parseExpr()
1178
- this.expect(')')
1179
- const body = this.parseBlock()
1180
- return this.withLoc({ kind: 'for_in_array', binding, arrayName, lenExpr, body }, forToken)
1181
- }
1182
-
1183
- // Init: either let statement (without semicolon) or empty
1184
- let init: Stmt | undefined
1185
- if (this.check('let')) {
1186
- // Parse let without consuming semicolon here (we handle it)
1187
- const letToken = this.expect('let')
1188
- const name = this.expect('ident').value
1189
- let type: TypeNode | undefined
1190
- if (this.match(':')) {
1191
- type = this.parseType()
1192
- }
1193
- this.expect('=')
1194
- const initExpr = this.parseExpr()
1195
- const initStmt: Stmt = { kind: 'let', name, type, init: initExpr }
1196
- init = this.withLoc(initStmt, letToken)
1197
- }
1198
- this.expect(';')
1199
-
1200
- // Condition
1201
- const cond = this.parseExpr()
1202
- this.expect(';')
1203
-
1204
- // Step expression
1205
- const step = this.parseExpr()
1206
- this.expect(')')
1207
-
1208
- const body = this.parseBlock()
1209
-
1210
- return this.withLoc({ kind: 'for', init, cond, step, body }, forToken)
1211
- }
1212
-
1213
- private parseForRangeStmt(forToken: Token): Stmt {
1214
- const varName = this.expect('ident').value
1215
- this.expect('in')
1216
-
1217
- let start: Expr
1218
- let end: Expr
1219
- let inclusive = false
1220
-
1221
- if (this.check('range_lit')) {
1222
- // Literal range: 0..10, 0..count, 0..=9, 0..=count
1223
- const rangeToken = this.advance()
1224
- const raw = rangeToken.value
1225
- // Detect inclusive: ends with = after .. (e.g. "0..=" or "..=")
1226
- const incl = raw.includes('..=')
1227
- inclusive = incl
1228
- const range = this.parseRangeValue(raw)
1229
- start = this.withLoc({ kind: 'int_lit', value: range.min ?? 0 }, rangeToken)
1230
- if (range.max !== null && range.max !== undefined) {
1231
- // Fully numeric: 0..10 or 0..=9
1232
- end = this.withLoc({ kind: 'int_lit', value: range.max }, rangeToken)
1233
- } else {
1234
- // Open-ended: "0.." or "0..=" — parse the end expression from next tokens
1235
- end = this.parseUnaryExpr()
1236
- }
1237
- } else {
1238
- // Dynamic range: expr..expr or expr..=expr
1239
- // parseExpr stops before range_lit (not in BINARY_OPS), so this is safe
1240
- const arrayOrStart = this.parseExpr()
1241
-
1242
- // --- for_each detection: for item in arr { ... } ---
1243
- // If after parsing the expression there is no range_lit, it's a for_each (array iteration)
1244
- if (!this.check('range_lit')) {
1245
- const body = this.parseBlock()
1246
- return this.withLoc({ kind: 'for_each', binding: varName, array: arrayOrStart, body }, forToken)
1247
- }
1248
-
1249
- start = arrayOrStart
1250
- // Consume the range_lit token which should be ".." or "..="
1251
- if (this.check('range_lit')) {
1252
- const rangeOp = this.advance()
1253
- inclusive = rangeOp.value.includes('=')
1254
- // If the range_lit captured digits after .., use them as end
1255
- const afterOp = rangeOp.value.replace(/^\.\.=?/, '')
1256
- if (afterOp.length > 0) {
1257
- end = this.withLoc({ kind: 'int_lit', value: parseInt(afterOp, 10) }, rangeOp)
1258
- } else {
1259
- end = this.parseExpr()
1260
- }
1261
- } else {
1262
- this.error('Expected .. or ..= in for-range expression')
1263
- start = this.withLoc({ kind: 'int_lit', value: 0 }, this.peek())
1264
- end = this.withLoc({ kind: 'int_lit', value: 0 }, this.peek())
1265
- }
1266
- }
1267
-
1268
- const body = this.parseBlock()
1269
- return this.withLoc({ kind: 'for_range', varName, start, end, inclusive, body }, forToken)
1270
- }
1271
-
1272
- private parseForeachStmt(): Stmt {
1273
- const foreachToken = this.expect('foreach')
1274
- this.expect('(')
1275
- const binding = this.expect('ident').value
1276
- this.expect('in')
1277
- const iterable = this.parseExpr()
1278
- this.expect(')')
1279
-
1280
- // Parse optional execute context modifiers (as, at, positioned, rotated, facing, etc.)
1281
- let executeContext: string | undefined
1282
- // Check for execute subcommand keywords
1283
- const execIdentKeywords = ['positioned', 'rotated', 'facing', 'anchored', 'align', 'on', 'summon']
1284
- if (this.check('as') || this.check('at') || this.check('in') || (this.check('ident') && execIdentKeywords.includes(this.peek().value))) {
1285
- // Collect everything until we hit '{'
1286
- let context = ''
1287
- while (!this.check('{') && !this.check('eof')) {
1288
- context += this.advance().value + ' '
1289
- }
1290
- executeContext = context.trim()
1291
- }
1292
-
1293
- const body = this.parseBlock()
1294
-
1295
- return this.withLoc({ kind: 'foreach', binding, iterable, body, executeContext }, foreachToken)
1296
- }
1297
-
1298
- private parseMatchPattern(): MatchPattern {
1299
- // Wildcard: _
1300
- if (this.check('ident') && this.peek().value === '_') {
1301
- this.advance()
1302
- return { kind: 'PatWild' }
1303
- }
1304
- // None
1305
- if (this.check('ident') && this.peek().value === 'None') {
1306
- this.advance()
1307
- return { kind: 'PatNone' }
1308
- }
1309
- // Some(x)
1310
- if (this.check('ident') && this.peek().value === 'Some') {
1311
- this.advance() // consume 'Some'
1312
- this.expect('(')
1313
- const binding = this.expect('ident').value
1314
- this.expect(')')
1315
- return { kind: 'PatSome', binding }
1316
- }
1317
- // Enum pattern: EnumName::Variant or EnumName::Variant(b1, b2, ...)
1318
- if (this.check('ident') && this.peek(1).kind === '::') {
1319
- const enumName = this.advance().value
1320
- this.expect('::')
1321
- const variant = this.expect('ident').value
1322
- const bindings: string[] = []
1323
- if (this.check('(')) {
1324
- this.advance() // consume '('
1325
- while (!this.check(')') && !this.check('eof')) {
1326
- bindings.push(this.expect('ident').value)
1327
- if (!this.match(',')) break
1328
- }
1329
- this.expect(')')
1330
- }
1331
- return { kind: 'PatEnum', enumName, variant, bindings }
1332
- }
1333
- // Integer literal
1334
- if (this.check('int_lit')) {
1335
- const tok = this.advance()
1336
- return { kind: 'PatInt', value: parseInt(tok.value, 10) }
1337
- }
1338
- // Negative integer literal: -N
1339
- if (this.check('-') && this.peek(1).kind === 'int_lit') {
1340
- this.advance() // consume '-'
1341
- const tok = this.advance()
1342
- return { kind: 'PatInt', value: -parseInt(tok.value, 10) }
1343
- }
1344
- // Legacy: range_lit or any other expression (e.g. 0..59)
1345
- const e = this.parseExpr()
1346
- return { kind: 'PatExpr', expr: e }
1347
- }
1348
-
1349
- private parseMatchStmt(): Stmt {
1350
- const matchToken = this.expect('match')
1351
-
1352
- // Support both `match (expr)` (legacy) and `match expr` (new syntax)
1353
- let expr: Expr
1354
- if (this.check('(')) {
1355
- // Peek ahead — if it looks like `(expr)` followed by `{`, consume parens
1356
- this.advance() // consume '('
1357
- expr = this.parseExpr()
1358
- this.expect(')')
1359
- } else {
1360
- expr = this.parseExpr()
1361
- }
1362
- this.expect('{')
1363
-
1364
- const arms: Array<{ pattern: MatchPattern; body: Block }> = []
1365
- while (!this.check('}') && !this.check('eof')) {
1366
- const pattern = this.parseMatchPattern()
1367
- this.expect('=>')
1368
- const body = this.parseBlock()
1369
- this.match(',') // optional trailing comma
1370
- arms.push({ pattern, body })
1371
- }
1372
-
1373
- this.expect('}')
1374
- return this.withLoc({ kind: 'match', expr, arms }, matchToken)
1375
- }
1376
-
1377
- private parseAsStmt(): Stmt {
1378
- const asToken = this.expect('as')
1379
- const as_sel = this.parseSelector()
1380
-
1381
- // Check for combined as/at
1382
- if (this.match('at')) {
1383
- const at_sel = this.parseSelector()
1384
- const body = this.parseBlock()
1385
- return this.withLoc({ kind: 'as_at', as_sel, at_sel, body }, asToken)
1386
- }
1387
-
1388
- const body = this.parseBlock()
1389
- return this.withLoc({ kind: 'as_block', selector: as_sel, body }, asToken)
1390
- }
1391
-
1392
- private parseAtStmt(): Stmt {
1393
- const atToken = this.expect('at')
1394
- const selector = this.parseSelector()
1395
- const body = this.parseBlock()
1396
- return this.withLoc({ kind: 'at_block', selector, body }, atToken)
1397
- }
1398
-
1399
- private parseExecuteStmt(): Stmt {
1400
- const executeToken = this.expect('execute')
1401
- const subcommands: ExecuteSubcommand[] = []
1402
-
1403
- // Parse subcommands until we hit 'run'
1404
- while (!this.check('run') && !this.check('eof')) {
1405
- if (this.match('as')) {
1406
- const selector = this.parseSelector()
1407
- subcommands.push({ kind: 'as', selector })
1408
- } else if (this.match('at')) {
1409
- const selector = this.parseSelector()
1410
- subcommands.push({ kind: 'at', selector })
1411
- } else if (this.checkIdent('positioned')) {
1412
- this.advance()
1413
- if (this.match('as')) {
1414
- const selector = this.parseSelector()
1415
- subcommands.push({ kind: 'positioned_as', selector })
1416
- } else {
1417
- const x = this.parseCoordToken()
1418
- const y = this.parseCoordToken()
1419
- const z = this.parseCoordToken()
1420
- subcommands.push({ kind: 'positioned', x, y, z })
1421
- }
1422
- } else if (this.checkIdent('rotated')) {
1423
- this.advance()
1424
- if (this.match('as')) {
1425
- const selector = this.parseSelector()
1426
- subcommands.push({ kind: 'rotated_as', selector })
1427
- } else {
1428
- const yaw = this.parseCoordToken()
1429
- const pitch = this.parseCoordToken()
1430
- subcommands.push({ kind: 'rotated', yaw, pitch })
1431
- }
1432
- } else if (this.checkIdent('facing')) {
1433
- this.advance()
1434
- if (this.checkIdent('entity')) {
1435
- this.advance()
1436
- const selector = this.parseSelector()
1437
- const anchor = this.checkIdent('eyes') || this.checkIdent('feet') ? this.advance().value as 'eyes' | 'feet' : 'feet'
1438
- subcommands.push({ kind: 'facing_entity', selector, anchor })
1439
- } else {
1440
- const x = this.parseCoordToken()
1441
- const y = this.parseCoordToken()
1442
- const z = this.parseCoordToken()
1443
- subcommands.push({ kind: 'facing', x, y, z })
1444
- }
1445
- } else if (this.checkIdent('anchored')) {
1446
- this.advance()
1447
- const anchor = this.advance().value as 'eyes' | 'feet'
1448
- subcommands.push({ kind: 'anchored', anchor })
1449
- } else if (this.checkIdent('align')) {
1450
- this.advance()
1451
- const axes = this.advance().value
1452
- subcommands.push({ kind: 'align', axes })
1453
- } else if (this.checkIdent('on')) {
1454
- this.advance()
1455
- const relation = this.advance().value
1456
- subcommands.push({ kind: 'on', relation })
1457
- } else if (this.checkIdent('summon')) {
1458
- this.advance()
1459
- const entity = this.advance().value
1460
- subcommands.push({ kind: 'summon', entity })
1461
- } else if (this.checkIdent('store')) {
1462
- this.advance()
1463
- const storeType = this.advance().value // 'result' or 'success'
1464
- if (this.checkIdent('score')) {
1465
- this.advance()
1466
- const target = this.advance().value
1467
- const targetObj = this.advance().value
1468
- if (storeType === 'result') {
1469
- subcommands.push({ kind: 'store_result', target, targetObj })
1470
- } else {
1471
- subcommands.push({ kind: 'store_success', target, targetObj })
1472
- }
1473
- } else {
1474
- this.error('store currently only supports score target')
1475
- }
1476
- } else if (this.match('if')) {
1477
- this.parseExecuteCondition(subcommands, 'if')
1478
- } else if (this.match('unless')) {
1479
- this.parseExecuteCondition(subcommands, 'unless')
1480
- } else if (this.match('in')) {
1481
- // Dimension can be namespaced: minecraft:the_nether
1482
- let dim = this.advance().value
1483
- if (this.match(':')) {
1484
- dim += ':' + this.advance().value
1485
- }
1486
- subcommands.push({ kind: 'in', dimension: dim })
1487
- } else {
1488
- this.error(`Unexpected token in execute statement: ${this.peek().kind} (${this.peek().value})`)
1489
- }
1490
- }
1491
-
1492
- this.expect('run')
1493
- const body = this.parseBlock()
1494
-
1495
- return this.withLoc({ kind: 'execute', subcommands, body }, executeToken)
1496
- }
1497
-
1498
- private parseExecuteCondition(subcommands: ExecuteSubcommand[], type: 'if' | 'unless'): void {
1499
- if (this.checkIdent('entity') || this.check('selector')) {
1500
- if (this.checkIdent('entity')) this.advance()
1501
- const selectorOrVar = this.parseSelectorOrVarSelector()
1502
- subcommands.push({ kind: type === 'if' ? 'if_entity' : 'unless_entity', ...selectorOrVar })
1503
- } else if (this.checkIdent('block')) {
1504
- this.advance()
1505
- const x = this.parseCoordToken()
1506
- const y = this.parseCoordToken()
1507
- const z = this.parseCoordToken()
1508
- const block = this.parseBlockId()
1509
- subcommands.push({ kind: type === 'if' ? 'if_block' : 'unless_block', pos: [x, y, z], block })
1510
- } else if (this.checkIdent('score')) {
1511
- this.advance()
1512
- const target = this.advance().value
1513
- const targetObj = this.advance().value
1514
- // Check for range or comparison
1515
- if (this.checkIdent('matches')) {
1516
- this.advance()
1517
- const range = this.advance().value
1518
- subcommands.push({ kind: type === 'if' ? 'if_score_range' : 'unless_score_range', target, targetObj, range })
1519
- } else {
1520
- const op = this.advance().value // <, <=, =, >=, >
1521
- const source = this.advance().value
1522
- const sourceObj = this.advance().value
1523
- subcommands.push({
1524
- kind: type === 'if' ? 'if_score' : 'unless_score',
1525
- target, targetObj, op, source, sourceObj
1526
- })
1527
- }
1528
- } else {
1529
- this.error(`Unknown condition type after ${type}`)
1530
- }
1531
- }
1532
-
1533
- private parseCoordToken(): string {
1534
- // Handle ~, ^, numbers, relative coords like ~5, ^-3
1535
- const token = this.peek()
1536
- if (token.kind === 'rel_coord' || token.kind === 'local_coord' ||
1537
- token.kind === 'int_lit' || token.kind === 'float_lit' ||
1538
- token.kind === '-' || token.kind === 'ident') {
1539
- return this.advance().value
1540
- }
1541
- this.error(`Expected coordinate, got ${token.kind}`)
1542
- return '~'
1543
- }
1544
-
1545
- private parseBlockId(): string {
1546
- // Parse block ID like minecraft:stone or stone
1547
- let id = this.advance().value
1548
- if (this.match(':')) {
1549
- id += ':' + this.advance().value
1550
- }
1551
- // Handle block states [facing=north]
1552
- if (this.check('[')) {
1553
- id += this.advance().value // [
1554
- while (!this.check(']') && !this.check('eof')) {
1555
- id += this.advance().value
1556
- }
1557
- id += this.advance().value // ]
1558
- }
1559
- return id
1560
- }
1561
-
1562
- private checkIdent(value: string): boolean {
1563
- return this.check('ident') && this.peek().value === value
1564
- }
1565
-
1566
- private parseExprStmt(): Stmt {
1567
- const expr = this.parseExpr()
1568
- this.match(';')
1569
- const exprToken = this.getLocToken(expr) ?? this.peek()
1570
- return this.withLoc({ kind: 'expr', expr }, exprToken)
1571
- }
1572
-
1573
- // -------------------------------------------------------------------------
1574
- // Expressions (Precedence Climbing)
1575
- // -------------------------------------------------------------------------
1576
-
1577
- private parseExpr(): Expr {
1578
- return this.parseAssignment()
1579
- }
1580
-
1581
- private parseAssignment(): Expr {
1582
- const left = this.parseBinaryExpr(1)
1583
-
1584
- // Check for assignment
1585
- const token = this.peek()
1586
- if (token.kind === '=' || token.kind === '+=' || token.kind === '-=' ||
1587
- token.kind === '*=' || token.kind === '/=' || token.kind === '%=') {
1588
- const op = this.advance().kind as AssignOp
1589
-
1590
- if (left.kind === 'ident') {
1591
- const value = this.parseAssignment()
1592
- return this.withLoc({ kind: 'assign', target: left.name, op, value }, this.getLocToken(left) ?? token)
1593
- }
1594
-
1595
- // Member assignment: p.x = 10, p.x += 5
1596
- if (left.kind === 'member') {
1597
- const value = this.parseAssignment()
1598
- return this.withLoc(
1599
- { kind: 'member_assign', obj: left.obj, field: left.field, op, value },
1600
- this.getLocToken(left) ?? token
1601
- )
1602
- }
1603
-
1604
- // Index assignment: arr[0] = val, arr[i] = val
1605
- if (left.kind === 'index') {
1606
- const value = this.parseAssignment()
1607
- return this.withLoc(
1608
- { kind: 'index_assign', obj: left.obj, index: left.index, op, value },
1609
- this.getLocToken(left) ?? token
1610
- )
1611
- }
1612
- }
1613
-
1614
- return left
1615
- }
1616
-
1617
- private parseBinaryExpr(minPrec: number): Expr {
1618
- let left = this.parseUnaryExpr()
1619
-
1620
- while (true) {
1621
- const op = this.peek().kind
1622
- if (!BINARY_OPS.has(op)) break
1623
-
1624
- const prec = PRECEDENCE[op]
1625
- if (prec < minPrec) break
1626
-
1627
- const opToken = this.advance()
1628
- if (op === 'is') {
1629
- const entityType = this.parseEntityTypeName()
1630
- left = this.withLoc(
1631
- { kind: 'is_check', expr: left, entityType },
1632
- this.getLocToken(left) ?? opToken
1633
- )
1634
- continue
1635
- }
1636
-
1637
- const right = this.parseBinaryExpr(prec + 1) // left associative
1638
- left = this.withLoc(
1639
- { kind: 'binary', op: op as BinOp | CmpOp | '&&' | '||', left, right },
1640
- this.getLocToken(left) ?? opToken
1641
- )
1642
- }
1643
-
1644
- return left
1645
- }
1646
-
1647
- private parseUnaryExpr(): Expr {
1648
- if (this.match('!')) {
1649
- const bangToken = this.tokens[this.pos - 1]
1650
- const operand = this.parseUnaryExpr()
1651
- return this.withLoc({ kind: 'unary', op: '!', operand }, bangToken)
1652
- }
1653
-
1654
- if (this.check('-') && !this.isSubtraction()) {
1655
- const minusToken = this.advance()
1656
- const operand = this.parseUnaryExpr()
1657
- return this.withLoc({ kind: 'unary', op: '-', operand }, minusToken)
1658
- }
1659
-
1660
- return this.parsePostfixExpr()
1661
- }
1662
-
1663
- private parseEntityTypeName(): EntityTypeName {
1664
- const token = this.expect('ident')
1665
- if (ENTITY_TYPE_NAMES.has(token.value as EntityTypeName)) {
1666
- return token.value as EntityTypeName
1667
- }
1668
- this.error(`Unknown entity type '${token.value}'`)
1669
- }
1670
-
1671
- private isSubtraction(): boolean {
1672
- // Check if this minus is binary (subtraction) by looking at previous token
1673
- // If previous was a value (literal, ident, ), ]) it's subtraction
1674
- if (this.pos === 0) return false
1675
- const prev = this.tokens[this.pos - 1]
1676
- return ['int_lit', 'float_lit', 'ident', ')', ']'].includes(prev.kind)
1677
- }
1678
-
1679
- /**
1680
- * Try to parse `<Type, ...>` as explicit generic type arguments.
1681
- * Returns the parsed type list if successful, null if this looks like a comparison.
1682
- * Does NOT consume any tokens if it returns null.
1683
- */
1684
- private tryParseTypeArgs(): import('../ast/types').TypeNode[] | null {
1685
- const saved = this.pos
1686
- this.advance() // consume '<'
1687
- const typeArgs: import('../ast/types').TypeNode[] = []
1688
- try {
1689
- do {
1690
- typeArgs.push(this.parseType())
1691
- } while (this.match(','))
1692
- if (!this.check('>')) {
1693
- this.pos = saved
1694
- return null
1695
- }
1696
- this.advance() // consume '>'
1697
- return typeArgs
1698
- } catch {
1699
- this.pos = saved
1700
- return null
1701
- }
1702
- }
1703
-
1704
- private parsePostfixExpr(): Expr {
1705
- let expr = this.parsePrimaryExpr()
1706
-
1707
- while (true) {
1708
- // Generic call: ident<Type>(args) — check before regular '(' handling
1709
- if (expr.kind === 'ident' && this.check('<')) {
1710
- const typeArgs = this.tryParseTypeArgs()
1711
- if (typeArgs !== null && this.check('(')) {
1712
- const openParenToken = this.peek()
1713
- this.advance() // consume '('
1714
- const args = this.parseArgs()
1715
- this.expect(')')
1716
- expr = this.withLoc(
1717
- { kind: 'call', fn: expr.name, args, typeArgs },
1718
- this.getLocToken(expr) ?? openParenToken
1719
- )
1720
- continue
1721
- }
1722
- // Not a generic call — fall through to normal expression handling
1723
- }
1724
-
1725
- // Function call
1726
- if (this.match('(')) {
1727
- const openParenToken = this.tokens[this.pos - 1]
1728
- if (expr.kind === 'ident') {
1729
- const args = this.parseArgs()
1730
- this.expect(')')
1731
- expr = this.withLoc({ kind: 'call', fn: expr.name, args }, this.getLocToken(expr) ?? openParenToken)
1732
- continue
1733
- }
1734
- // Member call: entity.tag("name") → __entity_tag(entity, "name")
1735
- // Also handle arr.push(val) and arr.length
1736
- if (expr.kind === 'member') {
1737
- // Option.unwrap_or(default) → unwrap_or AST node
1738
- if (expr.field === 'unwrap_or') {
1739
- const defaultExpr = this.parseExpr()
1740
- this.expect(')')
1741
- expr = this.withLoc(
1742
- { kind: 'unwrap_or', opt: expr.obj, default_: defaultExpr },
1743
- this.getLocToken(expr) ?? openParenToken
1744
- )
1745
- continue
1746
- }
1747
-
1748
- const methodMap: Record<string, string> = {
1749
- 'tag': '__entity_tag',
1750
- 'untag': '__entity_untag',
1751
- 'has_tag': '__entity_has_tag',
1752
- 'push': '__array_push',
1753
- 'pop': '__array_pop',
1754
- 'add': 'set_add',
1755
- 'contains': 'set_contains',
1756
- 'remove': 'set_remove',
1757
- 'clear': 'set_clear',
1758
- }
1759
- const internalFn = methodMap[expr.field]
1760
- if (internalFn) {
1761
- const args = this.parseArgs()
1762
- this.expect(')')
1763
- expr = this.withLoc(
1764
- { kind: 'call', fn: internalFn, args: [expr.obj, ...args] },
1765
- this.getLocToken(expr) ?? openParenToken
1766
- )
1767
- continue
1768
- }
1769
- // Generic method sugar: obj.method(args) → method(obj, args)
1770
- const args = this.parseArgs()
1771
- this.expect(')')
1772
- expr = this.withLoc(
1773
- { kind: 'call', fn: expr.field, args: [expr.obj, ...args] },
1774
- this.getLocToken(expr) ?? openParenToken
1775
- )
1776
- continue
1777
- }
1778
- const args = this.parseArgs()
1779
- this.expect(')')
1780
- expr = this.withLoc(
1781
- { kind: 'invoke', callee: expr, args },
1782
- this.getLocToken(expr) ?? openParenToken
1783
- )
1784
- continue
1785
- }
1786
-
1787
- // Array index access: arr[0]
1788
- if (this.match('[')) {
1789
- const index = this.parseExpr()
1790
- this.expect(']')
1791
- expr = this.withLoc(
1792
- { kind: 'index', obj: expr, index },
1793
- this.getLocToken(expr) ?? this.tokens[this.pos - 1]
1794
- )
1795
- continue
1796
- }
1797
-
1798
- // Member access
1799
- if (this.match('.')) {
1800
- const field = this.expect('ident').value
1801
- expr = this.withLoc(
1802
- { kind: 'member', obj: expr, field },
1803
- this.getLocToken(expr) ?? this.tokens[this.pos - 1]
1804
- )
1805
- continue
1806
- }
1807
-
1808
- // Type cast: expr as Type
1809
- // Only parse 'as' as a cast when followed by a type token (not a selector like @a)
1810
- if (this.check('as') && this.isTypeCastAs()) {
1811
- const asToken = this.advance() // consume 'as'
1812
- const targetType = this.parseType()
1813
- expr = this.withLoc(
1814
- { kind: 'type_cast', expr, targetType },
1815
- this.getLocToken(expr) ?? asToken
1816
- )
1817
- continue
1818
- }
1819
-
1820
- break
1821
- }
1822
-
1823
- return expr
1824
- }
1825
-
1826
- /** Returns true if the current 'as' token is a type cast (not a context block) */
1827
- private isTypeCastAs(): boolean {
1828
- // Look ahead past 'as' to see if the next token looks like a type
1829
- const next = this.tokens[this.pos + 1]
1830
- if (!next) return false
1831
- const typeStartTokens = new Set(['int', 'bool', 'float', 'fixed', 'string', 'void', 'BlockPos', '('])
1832
- if (typeStartTokens.has(next.kind)) return true
1833
- if (next.kind === 'ident' && (
1834
- next.value === 'double' || next.value === 'byte' || next.value === 'short' ||
1835
- next.value === 'long' || next.value === 'selector' || next.value === 'Option'
1836
- )) return true
1837
- return false
1838
- }
1839
-
1840
- private parseArgs(): Expr[] {
1841
- const args: Expr[] = []
1842
-
1843
- if (!this.check(')')) {
1844
- do {
1845
- args.push(this.parseExpr())
1846
- } while (this.match(','))
1847
- }
1848
-
1849
- return args
1850
- }
1851
-
1852
- private parsePrimaryExpr(): Expr {
1853
- const token = this.peek()
1854
-
1855
- if (token.kind === 'ident' && this.peek(1).kind === '::') {
1856
- const typeToken = this.advance()
1857
- this.expect('::')
1858
- const memberToken = this.expect('ident')
1859
- if (this.check('(')) {
1860
- // Peek inside: if first non-'(' token is `ident :` it's enum construction with named args.
1861
- // We only treat it as enum_construct when there are actual named args (not empty parens),
1862
- // because empty `()` is ambiguous and most commonly means a static method call.
1863
- const isNamedArgs = this.peek(1).kind === 'ident' && this.peek(2).kind === ':'
1864
- if (isNamedArgs) {
1865
- // Enum variant construction: EnumName::Variant(field: expr, ...)
1866
- this.advance() // consume '('
1867
- const args: { name: string; value: Expr }[] = []
1868
- while (!this.check(')') && !this.check('eof')) {
1869
- const fieldName = this.expect('ident').value
1870
- this.expect(':')
1871
- const value = this.parseExpr()
1872
- args.push({ name: fieldName, value })
1873
- if (!this.match(',')) break
1874
- }
1875
- this.expect(')')
1876
- return this.withLoc({ kind: 'enum_construct', enumName: typeToken.value, variant: memberToken.value, args }, typeToken)
1877
- }
1878
- // Static method call: Type::method(args)
1879
- this.advance() // consume '('
1880
- const args = this.parseArgs()
1881
- this.expect(')')
1882
- return this.withLoc({ kind: 'static_call', type: typeToken.value, method: memberToken.value, args }, typeToken)
1883
- }
1884
- // Enum variant access: Enum::Variant
1885
- return this.withLoc({ kind: 'path_expr', enumName: typeToken.value, variant: memberToken.value }, typeToken)
1886
- }
1887
-
1888
- if (token.kind === 'ident' && this.peek(1).kind === '=>') {
1889
- return this.parseSingleParamLambda()
1890
- }
1891
-
1892
- // Integer literal
1893
- if (token.kind === 'int_lit') {
1894
- this.advance()
1895
- return this.withLoc({ kind: 'int_lit', value: parseInt(token.value, 10) }, token)
1896
- }
1897
-
1898
- // Float literal
1899
- if (token.kind === 'float_lit') {
1900
- this.advance()
1901
- return this.withLoc({ kind: 'float_lit', value: parseFloat(token.value) }, token)
1902
- }
1903
-
1904
- // Relative coordinate: ~ ~5 ~-3 ~0.5
1905
- if (token.kind === 'rel_coord') {
1906
- this.advance()
1907
- return this.withLoc({ kind: 'rel_coord', value: token.value }, token)
1908
- }
1909
-
1910
- // Local coordinate: ^ ^5 ^-3 ^0.5
1911
- if (token.kind === 'local_coord') {
1912
- this.advance()
1913
- return this.withLoc({ kind: 'local_coord', value: token.value }, token)
1914
- }
1915
-
1916
- // NBT suffix literals
1917
- if (token.kind === 'byte_lit') {
1918
- this.advance()
1919
- return this.withLoc({ kind: 'byte_lit', value: parseInt(token.value.slice(0, -1), 10) }, token)
1920
- }
1921
- if (token.kind === 'short_lit') {
1922
- this.advance()
1923
- return this.withLoc({ kind: 'short_lit', value: parseInt(token.value.slice(0, -1), 10) }, token)
1924
- }
1925
- if (token.kind === 'long_lit') {
1926
- this.advance()
1927
- return this.withLoc({ kind: 'long_lit', value: parseInt(token.value.slice(0, -1), 10) }, token)
1928
- }
1929
- if (token.kind === 'double_lit') {
1930
- this.advance()
1931
- return this.withLoc({ kind: 'double_lit', value: parseFloat(token.value.slice(0, -1)) }, token)
1932
- }
1933
-
1934
- // String literal
1935
- if (token.kind === 'string_lit') {
1936
- this.advance()
1937
- return this.parseStringExpr(token)
1938
- }
1939
-
1940
- if (token.kind === 'f_string') {
1941
- this.advance()
1942
- return this.parseFStringExpr(token)
1943
- }
1944
-
1945
- // MC name literal: #health → mc_name node (value = "health", without #)
1946
- if (token.kind === 'mc_name') {
1947
- this.advance()
1948
- return this.withLoc({ kind: 'mc_name', value: token.value.slice(1) }, token)
1949
- }
1950
-
1951
- // Boolean literal
1952
- if (token.kind === 'true') {
1953
- this.advance()
1954
- return this.withLoc({ kind: 'bool_lit', value: true }, token)
1955
- }
1956
- if (token.kind === 'false') {
1957
- this.advance()
1958
- return this.withLoc({ kind: 'bool_lit', value: false }, token)
1959
- }
1960
-
1961
- // Range literal
1962
- if (token.kind === 'range_lit') {
1963
- this.advance()
1964
- return this.withLoc({ kind: 'range_lit', range: this.parseRangeValue(token.value) }, token)
1965
- }
1966
-
1967
- // Selector
1968
- if (token.kind === 'selector') {
1969
- this.advance()
1970
- return this.withLoc({
1971
- kind: 'selector',
1972
- raw: token.value,
1973
- isSingle: computeIsSingle(token.value),
1974
- sel: this.parseSelectorValue(token.value),
1975
- }, token)
1976
- }
1977
-
1978
- // Named struct literal: TypeName { field: value, ... }
1979
- // Require at least one field (ident + :) to avoid ambiguity with blocks.
1980
- if (token.kind === 'ident' && this.peek(1).kind === '{' &&
1981
- this.peek(2).kind === 'ident' && this.peek(3).kind === ':') {
1982
- this.advance() // consume type name (used only for disambiguation, dropped from AST)
1983
- return this.parseStructLit()
1984
- }
1985
-
1986
- // Some(expr) — Option constructor
1987
- if (token.kind === 'ident' && token.value === 'Some' && this.peek(1).kind === '(') {
1988
- this.advance() // consume 'Some'
1989
- this.advance() // consume '('
1990
- const value = this.parseExpr()
1991
- this.expect(')')
1992
- return this.withLoc({ kind: 'some_lit', value }, token)
1993
- }
1994
-
1995
- // None — Option empty constructor
1996
- if (token.kind === 'ident' && token.value === 'None') {
1997
- this.advance()
1998
- return this.withLoc({ kind: 'none_lit' }, token)
1999
- }
2000
-
2001
- // Identifier
2002
- if (token.kind === 'ident') {
2003
- this.advance()
2004
- return this.withLoc({ kind: 'ident', name: token.value }, token)
2005
- }
2006
-
2007
- // Grouped expression or tuple literal
2008
- if (token.kind === '(') {
2009
- if (this.isBlockPosLiteral()) {
2010
- return this.parseBlockPos()
2011
- }
2012
- if (this.isLambdaStart()) {
2013
- return this.parseLambdaExpr()
2014
- }
2015
- this.advance()
2016
- const first = this.parseExpr()
2017
- // If followed by a comma, it's a tuple literal
2018
- if (this.match(',')) {
2019
- const elements: Expr[] = [first]
2020
- if (!this.check(')')) {
2021
- do {
2022
- elements.push(this.parseExpr())
2023
- } while (this.match(','))
2024
- }
2025
- this.expect(')')
2026
- return this.withLoc({ kind: 'tuple_lit', elements }, token)
2027
- }
2028
- this.expect(')')
2029
- return first
2030
- }
2031
-
2032
- // Struct literal or block: { x: 10, y: 20 }
2033
- if (token.kind === '{') {
2034
- return this.parseStructLit()
2035
- }
2036
-
2037
- // Array literal: [1, 2, 3] or []
2038
- if (token.kind === '[') {
2039
- return this.parseArrayLit()
2040
- }
2041
-
2042
- this.error(`Unexpected token '${token.kind}'`)
2043
- }
2044
-
2045
- private parseLiteralExpr(): LiteralExpr {
2046
- // Support negative literals: -5, -3.14
2047
- if (this.check('-')) {
2048
- this.advance()
2049
- const token = this.peek()
2050
- if (token.kind === 'int_lit') {
2051
- this.advance()
2052
- return this.withLoc({ kind: 'int_lit', value: -Number(token.value) }, token)
2053
- }
2054
- if (token.kind === 'float_lit') {
2055
- this.advance()
2056
- return this.withLoc({ kind: 'float_lit', value: -Number(token.value) }, token)
2057
- }
2058
- this.error('Expected number after unary -')
2059
- }
2060
- const expr = this.parsePrimaryExpr()
2061
- if (
2062
- expr.kind === 'int_lit' ||
2063
- expr.kind === 'float_lit' ||
2064
- expr.kind === 'bool_lit' ||
2065
- expr.kind === 'str_lit'
2066
- ) {
2067
- return expr
2068
- }
2069
- this.error('Const value must be a literal')
2070
- }
2071
-
2072
- private parseSingleParamLambda(): Expr {
2073
- const paramToken = this.expect('ident')
2074
- const params: LambdaParam[] = [{ name: paramToken.value }]
2075
- this.expect('=>')
2076
- return this.finishLambdaExpr(params, paramToken)
2077
- }
2078
-
2079
- private parseLambdaExpr(): Expr {
2080
- const openParenToken = this.expect('(')
2081
- const params: LambdaParam[] = []
2082
-
2083
- if (!this.check(')')) {
2084
- do {
2085
- const name = this.expect('ident').value
2086
- let type: TypeNode | undefined
2087
- if (this.match(':')) {
2088
- type = this.parseType()
2089
- }
2090
- params.push({ name, type })
2091
- } while (this.match(','))
2092
- }
2093
-
2094
- this.expect(')')
2095
- let returnType: TypeNode | undefined
2096
- if (this.match('->')) {
2097
- returnType = this.parseType()
2098
- }
2099
- this.expect('=>')
2100
- return this.finishLambdaExpr(params, openParenToken, returnType)
2101
- }
2102
-
2103
- private finishLambdaExpr(params: LambdaParam[], token: Token, returnType?: TypeNode): Expr {
2104
- const body = this.check('{') ? this.parseBlock() : this.parseExpr()
2105
- return this.withLoc({ kind: 'lambda', params, returnType, body }, token)
2106
- }
2107
-
2108
- private parseStringExpr(token: Token): Expr {
2109
- if (!token.value.includes('${')) {
2110
- return this.withLoc({ kind: 'str_lit', value: token.value }, token)
2111
- }
2112
-
2113
- const parts: Array<string | Expr> = []
2114
- let current = ''
2115
- let index = 0
2116
-
2117
- while (index < token.value.length) {
2118
- if (token.value[index] === '$' && token.value[index + 1] === '{') {
2119
- if (current) {
2120
- parts.push(current)
2121
- current = ''
2122
- }
2123
-
2124
- index += 2
2125
- let depth = 1
2126
- let exprSource = ''
2127
- let inString = false
2128
-
2129
- while (index < token.value.length && depth > 0) {
2130
- const char = token.value[index]
2131
-
2132
- if (char === '"' && token.value[index - 1] !== '\\') {
2133
- inString = !inString
2134
- }
2135
-
2136
- if (!inString) {
2137
- if (char === '{') {
2138
- depth++
2139
- } else if (char === '}') {
2140
- depth--
2141
- if (depth === 0) {
2142
- index++
2143
- break
2144
- }
2145
- }
2146
- }
2147
-
2148
- if (depth > 0) {
2149
- exprSource += char
2150
- }
2151
- index++
2152
- }
2153
-
2154
- if (depth !== 0) {
2155
- this.error('Unterminated string interpolation')
2156
- }
2157
-
2158
- parts.push(this.parseEmbeddedExpr(exprSource))
2159
- continue
2160
- }
2161
-
2162
- current += token.value[index]
2163
- index++
2164
- }
2165
-
2166
- if (current) {
2167
- parts.push(current)
2168
- }
2169
-
2170
- return this.withLoc({ kind: 'str_interp', parts }, token)
2171
- }
2172
-
2173
- private parseFStringExpr(token: Token): Expr {
2174
- const parts: Array<{ kind: 'text'; value: string } | { kind: 'expr'; expr: Expr }> = []
2175
- let current = ''
2176
- let index = 0
2177
-
2178
- while (index < token.value.length) {
2179
- if (token.value[index] === '{') {
2180
- if (current) {
2181
- parts.push({ kind: 'text', value: current })
2182
- current = ''
2183
- }
2184
-
2185
- index++
2186
- let depth = 1
2187
- let exprSource = ''
2188
- let inString = false
2189
-
2190
- while (index < token.value.length && depth > 0) {
2191
- const char = token.value[index]
2192
-
2193
- if (char === '"' && token.value[index - 1] !== '\\') {
2194
- inString = !inString
2195
- }
2196
-
2197
- if (!inString) {
2198
- if (char === '{') {
2199
- depth++
2200
- } else if (char === '}') {
2201
- depth--
2202
- if (depth === 0) {
2203
- index++
2204
- break
2205
- }
2206
- }
2207
- }
2208
-
2209
- if (depth > 0) {
2210
- exprSource += char
2211
- }
2212
- index++
2213
- }
2214
-
2215
- if (depth !== 0) {
2216
- this.error('Unterminated f-string interpolation')
2217
- }
2218
-
2219
- parts.push({ kind: 'expr', expr: this.parseEmbeddedExpr(exprSource) })
2220
- continue
2221
- }
2222
-
2223
- current += token.value[index]
2224
- index++
2225
- }
2226
-
2227
- if (current) {
2228
- parts.push({ kind: 'text', value: current })
2229
- }
2230
-
2231
- return this.withLoc({ kind: 'f_string', parts }, token)
2232
- }
2233
-
2234
- private parseEmbeddedExpr(source: string): Expr {
2235
- const tokens = new Lexer(source, this.filePath).tokenize()
2236
- const parser = new Parser(tokens, source, this.filePath)
2237
- const expr = parser.parseExpr()
2238
-
2239
- if (!parser.check('eof')) {
2240
- parser.error(`Unexpected token '${parser.peek().kind}' in string interpolation`)
2241
- }
2242
-
2243
- return expr
2244
- }
2245
-
2246
- private parseStructLit(): Expr {
2247
- const braceToken = this.expect('{')
2248
- const fields: { name: string; value: Expr }[] = []
2249
-
2250
- if (!this.check('}')) {
2251
- do {
2252
- const name = this.expect('ident').value
2253
- this.expect(':')
2254
- const value = this.parseExpr()
2255
- fields.push({ name, value })
2256
- } while (this.match(','))
2257
- }
2258
-
2259
- this.expect('}')
2260
- return this.withLoc({ kind: 'struct_lit', fields }, braceToken)
2261
- }
2262
-
2263
- private parseArrayLit(): Expr {
2264
- const bracketToken = this.expect('[')
2265
- const elements: Expr[] = []
2266
-
2267
- if (!this.check(']')) {
2268
- do {
2269
- elements.push(this.parseExpr())
2270
- } while (this.match(','))
2271
- }
2272
-
2273
- this.expect(']')
2274
- return this.withLoc({ kind: 'array_lit', elements }, bracketToken)
2275
- }
2276
-
2277
- private isLambdaStart(): boolean {
2278
- if (!this.check('(')) return false
2279
-
2280
- let offset = 1
2281
- if (this.peek(offset).kind !== ')') {
2282
- while (true) {
2283
- if (this.peek(offset).kind !== 'ident') {
2284
- return false
2285
- }
2286
- offset += 1
2287
-
2288
- if (this.peek(offset).kind === ':') {
2289
- offset += 1
2290
- const consumed = this.typeTokenLength(offset)
2291
- if (consumed === 0) {
2292
- return false
2293
- }
2294
- offset += consumed
2295
- }
2296
-
2297
- if (this.peek(offset).kind === ',') {
2298
- offset += 1
2299
- continue
2300
- }
2301
- break
2302
- }
2303
- }
2304
-
2305
- if (this.peek(offset).kind !== ')') {
2306
- return false
2307
- }
2308
- offset += 1
2309
-
2310
- if (this.peek(offset).kind === '=>') {
2311
- return true
2312
- }
2313
-
2314
- if (this.peek(offset).kind === '->') {
2315
- offset += 1
2316
- const consumed = this.typeTokenLength(offset)
2317
- if (consumed === 0) {
2318
- return false
2319
- }
2320
- offset += consumed
2321
- return this.peek(offset).kind === '=>'
2322
- }
2323
-
2324
- return false
2325
- }
2326
-
2327
- private typeTokenLength(offset: number): number {
2328
- const token = this.peek(offset)
2329
-
2330
- if (token.kind === '(') {
2331
- let inner = offset + 1
2332
- if (this.peek(inner).kind !== ')') {
2333
- while (true) {
2334
- const consumed = this.typeTokenLength(inner)
2335
- if (consumed === 0) {
2336
- return 0
2337
- }
2338
- inner += consumed
2339
- if (this.peek(inner).kind === ',') {
2340
- inner += 1
2341
- continue
2342
- }
2343
- break
2344
- }
2345
- }
2346
-
2347
- if (this.peek(inner).kind !== ')') {
2348
- return 0
2349
- }
2350
- inner += 1
2351
-
2352
- if (this.peek(inner).kind !== '->') {
2353
- return 0
2354
- }
2355
- inner += 1
2356
- const returnLen = this.typeTokenLength(inner)
2357
- return returnLen === 0 ? 0 : inner + returnLen - offset
2358
- }
2359
-
2360
- const isNamedType =
2361
- token.kind === 'int' ||
2362
- token.kind === 'bool' ||
2363
- token.kind === 'float' ||
2364
- token.kind === 'fixed' ||
2365
- token.kind === 'string' ||
2366
- token.kind === 'void' ||
2367
- token.kind === 'BlockPos' ||
2368
- token.kind === 'ident'
2369
- if (!isNamedType) {
2370
- return 0
2371
- }
2372
-
2373
- let length = 1
2374
- while (this.peek(offset + length).kind === '[' && this.peek(offset + length + 1).kind === ']') {
2375
- length += 2
2376
- }
2377
- return length
2378
- }
2379
-
2380
- private isBlockPosLiteral(): boolean {
2381
- if (!this.check('(')) return false
2382
-
2383
- let offset = 1
2384
- for (let i = 0; i < 3; i++) {
2385
- const consumed = this.coordComponentTokenLength(offset)
2386
- if (consumed === 0) return false
2387
- offset += consumed
2388
-
2389
- if (i < 2) {
2390
- if (this.peek(offset).kind !== ',') return false
2391
- offset += 1
2392
- }
2393
- }
2394
-
2395
- return this.peek(offset).kind === ')'
2396
- }
2397
-
2398
- private coordComponentTokenLength(offset: number): number {
2399
- const token = this.peek(offset)
2400
-
2401
- if (token.kind === 'int_lit') {
2402
- return 1
2403
- }
2404
-
2405
- if (token.kind === '-') {
2406
- return this.peek(offset + 1).kind === 'int_lit' ? 2 : 0
2407
- }
2408
-
2409
- // rel_coord (~, ~5, ~-3) and local_coord (^, ^5, ^-3) are single tokens now
2410
- if (token.kind === 'rel_coord' || token.kind === 'local_coord') {
2411
- return 1
2412
- }
2413
-
2414
- return 0
2415
- }
2416
-
2417
- private parseBlockPos(): BlockPosExpr {
2418
- const openParenToken = this.expect('(')
2419
- const x = this.parseCoordComponent()
2420
- this.expect(',')
2421
- const y = this.parseCoordComponent()
2422
- this.expect(',')
2423
- const z = this.parseCoordComponent()
2424
- this.expect(')')
2425
- return this.withLoc({ kind: 'blockpos', x, y, z }, openParenToken)
2426
- }
2427
-
2428
- private parseCoordComponent(): CoordComponent {
2429
- const token = this.peek()
2430
-
2431
- // Handle rel_coord (~, ~5, ~-3) and local_coord (^, ^5, ^-3) tokens
2432
- if (token.kind === 'rel_coord') {
2433
- this.advance()
2434
- // Parse the offset from the token value (e.g., "~5" -> 5, "~" -> 0, "~-3" -> -3)
2435
- const offset = this.parseCoordOffsetFromValue(token.value.slice(1))
2436
- return { kind: 'relative', offset }
2437
- }
2438
-
2439
- if (token.kind === 'local_coord') {
2440
- this.advance()
2441
- const offset = this.parseCoordOffsetFromValue(token.value.slice(1))
2442
- return { kind: 'local', offset }
2443
- }
2444
-
2445
- return { kind: 'absolute', value: this.parseSignedCoordOffset(true) }
2446
- }
2447
-
2448
- private parseCoordOffsetFromValue(value: string): number {
2449
- if (value === '' || value === undefined) return 0
2450
- return parseFloat(value)
2451
- }
2452
-
2453
- private parseSignedCoordOffset(requireValue = false): number {
2454
- let sign = 1
2455
- if (this.match('-')) {
2456
- sign = -1
2457
- }
2458
-
2459
- if (this.check('int_lit')) {
2460
- return sign * parseInt(this.advance().value, 10)
2461
- }
2462
-
2463
- if (requireValue) {
2464
- this.error('Expected integer coordinate component')
2465
- }
2466
-
2467
- return 0
2468
- }
2469
-
2470
- // -------------------------------------------------------------------------
2471
- // Selector Parsing
2472
- // -------------------------------------------------------------------------
2473
-
2474
- private parseSelector(): EntitySelector {
2475
- const token = this.expect('selector')
2476
- return this.parseSelectorValue(token.value)
2477
- }
2478
-
2479
- // Parse either a selector (@a[...]) or a variable with filters (p[...])
2480
- // Returns { selector } for selectors or { varName, filters } for variables
2481
- private parseSelectorOrVarSelector(): { selector?: EntitySelector, varName?: string, filters?: SelectorFilter } {
2482
- if (this.check('selector')) {
2483
- return { selector: this.parseSelector() }
2484
- }
2485
-
2486
- // Must be an identifier (variable) possibly with filters
2487
- const varToken = this.expect('ident')
2488
- const varName = varToken.value
2489
-
2490
- // Check for optional filters [...]
2491
- if (this.check('[')) {
2492
- this.advance() // consume '['
2493
- // Collect everything until ']'
2494
- let filterStr = ''
2495
- let depth = 1
2496
- while (depth > 0 && !this.check('eof')) {
2497
- if (this.check('[')) depth++
2498
- else if (this.check(']')) depth--
2499
- if (depth > 0) {
2500
- filterStr += this.peek().value ?? this.peek().kind
2501
- this.advance()
2502
- }
2503
- }
2504
- this.expect(']')
2505
- const filters = this.parseSelectorFilters(filterStr)
2506
- return { varName, filters }
2507
- }
2508
-
2509
- return { varName }
2510
- }
2511
-
2512
- private parseSelectorValue(value: string): EntitySelector {
2513
- // Parse @e[type=zombie, distance=..5]
2514
- const bracketIndex = value.indexOf('[')
2515
- if (bracketIndex === -1) {
2516
- return { kind: value as SelectorKind }
2517
- }
2518
-
2519
- const kind = value.slice(0, bracketIndex) as SelectorKind
2520
- const paramsStr = value.slice(bracketIndex + 1, -1) // Remove [ and ]
2521
- const filters = this.parseSelectorFilters(paramsStr)
2522
-
2523
- return { kind, filters }
2524
- }
2525
-
2526
- private parseSelectorFilters(paramsStr: string): SelectorFilter {
2527
- const filters: SelectorFilter = {}
2528
- const parts = this.splitSelectorParams(paramsStr)
2529
-
2530
- for (const part of parts) {
2531
- const eqIndex = part.indexOf('=')
2532
- if (eqIndex === -1) continue
2533
-
2534
- const key = part.slice(0, eqIndex).trim()
2535
- const val = part.slice(eqIndex + 1).trim()
2536
-
2537
- switch (key) {
2538
- case 'type':
2539
- filters.type = val
2540
- break
2541
- case 'distance':
2542
- filters.distance = this.parseRangeValue(val)
2543
- break
2544
- case 'tag':
2545
- if (val.startsWith('!')) {
2546
- filters.notTag = filters.notTag ?? []
2547
- filters.notTag.push(val.slice(1))
2548
- } else {
2549
- filters.tag = filters.tag ?? []
2550
- filters.tag.push(val)
2551
- }
2552
- break
2553
- case 'limit':
2554
- filters.limit = parseInt(val, 10)
2555
- break
2556
- case 'sort':
2557
- filters.sort = val as SelectorFilter['sort']
2558
- break
2559
- case 'nbt':
2560
- filters.nbt = val
2561
- break
2562
- case 'gamemode':
2563
- filters.gamemode = val
2564
- break
2565
- case 'scores':
2566
- filters.scores = this.parseScoresFilter(val)
2567
- break
2568
- case 'x':
2569
- filters.x = this.parseRangeValue(val)
2570
- break
2571
- case 'y':
2572
- filters.y = this.parseRangeValue(val)
2573
- break
2574
- case 'z':
2575
- filters.z = this.parseRangeValue(val)
2576
- break
2577
- case 'x_rotation':
2578
- filters.x_rotation = this.parseRangeValue(val)
2579
- break
2580
- case 'y_rotation':
2581
- filters.y_rotation = this.parseRangeValue(val)
2582
- break
2583
- }
2584
- }
2585
-
2586
- return filters
2587
- }
2588
-
2589
- private splitSelectorParams(str: string): string[] {
2590
- const parts: string[] = []
2591
- let current = ''
2592
- let depth = 0
2593
-
2594
- for (const char of str) {
2595
- if (char === '{' || char === '[') depth++
2596
- else if (char === '}' || char === ']') depth--
2597
- else if (char === ',' && depth === 0) {
2598
- parts.push(current.trim())
2599
- current = ''
2600
- continue
2601
- }
2602
- current += char
2603
- }
2604
-
2605
- if (current.trim()) {
2606
- parts.push(current.trim())
2607
- }
2608
-
2609
- return parts
2610
- }
2611
-
2612
- private parseScoresFilter(val: string): Record<string, RangeExpr> {
2613
- // Parse {kills=1.., deaths=..5}
2614
- const scores: Record<string, RangeExpr> = {}
2615
- const inner = val.slice(1, -1) // Remove { and }
2616
- const parts = inner.split(',')
2617
-
2618
- for (const part of parts) {
2619
- const [name, range] = part.split('=').map(s => s.trim())
2620
- scores[name] = this.parseRangeValue(range)
2621
- }
2622
-
2623
- return scores
2624
- }
2625
-
2626
- private parseRangeValue(value: string): RangeExpr {
2627
- // ..5 → { max: 5 }
2628
- // ..=5 → { max: 5 }
2629
- // 1.. → { min: 1 }
2630
- // 1..= → { min: 1 } (open-ended inclusive, end parsed separately)
2631
- // 1..10 → { min: 1, max: 10 }
2632
- // 1..=10 → { min: 1, max: 10 }
2633
- // 5 → { min: 5, max: 5 } (exact match)
2634
-
2635
- if (value.startsWith('..=')) {
2636
- const rest = value.slice(3)
2637
- if (!rest) return {} // open upper bound, no max
2638
- const max = parseInt(rest, 10)
2639
- return { max }
2640
- }
2641
-
2642
- if (value.startsWith('..')) {
2643
- const rest = value.slice(2)
2644
- if (!rest) return {} // open upper bound, no max
2645
- const max = parseInt(rest, 10)
2646
- return { max }
2647
- }
2648
-
2649
- const inclIdx = value.indexOf('..=')
2650
- if (inclIdx !== -1) {
2651
- const min = parseInt(value.slice(0, inclIdx), 10)
2652
- const rest = value.slice(inclIdx + 3)
2653
- if (!rest) return { min } // open-ended inclusive
2654
- const max = parseInt(rest, 10)
2655
- return { min, max }
2656
- }
2657
-
2658
- const dotIndex = value.indexOf('..')
2659
- if (dotIndex !== -1) {
2660
- const min = parseInt(value.slice(0, dotIndex), 10)
2661
- const rest = value.slice(dotIndex + 2)
2662
- if (!rest) return { min } // open-ended
2663
- const max = parseInt(rest, 10)
2664
- return { min, max }
2665
- }
2666
-
2667
- // Exact value
2668
- const val = parseInt(value, 10)
2669
- return { min: val, max: val }
2670
- }
2671
130
  }