@elaraai/east 1.0.79 → 1.0.81

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 (379) hide show
  1. package/README.md +1 -1
  2. package/dist/src/builtins.d.ts +1 -1
  3. package/dist/src/builtins.d.ts.map +1 -1
  4. package/dist/src/builtins.js +19 -0
  5. package/dist/src/builtins.js.map +1 -1
  6. package/dist/src/codegen/spellings.d.ts.map +1 -1
  7. package/dist/src/codegen/spellings.js +3 -0
  8. package/dist/src/codegen/spellings.js.map +1 -1
  9. package/dist/src/comparison.d.ts +54 -0
  10. package/dist/src/comparison.d.ts.map +1 -1
  11. package/dist/src/comparison.equivalent.spec.d.ts +6 -0
  12. package/dist/src/comparison.equivalent.spec.d.ts.map +1 -0
  13. package/dist/src/comparison.equivalent.spec.js +130 -0
  14. package/dist/src/comparison.equivalent.spec.js.map +1 -0
  15. package/dist/src/comparison.js +97 -25
  16. package/dist/src/comparison.js.map +1 -1
  17. package/dist/src/compile/builtins/array.d.ts +60 -0
  18. package/dist/src/compile/builtins/array.d.ts.map +1 -0
  19. package/dist/src/compile/builtins/array.js +691 -0
  20. package/dist/src/compile/builtins/array.js.map +1 -0
  21. package/dist/src/compile/builtins/blob.d.ts +18 -0
  22. package/dist/src/compile/builtins/blob.d.ts.map +1 -0
  23. package/dist/src/compile/builtins/blob.js +150 -0
  24. package/dist/src/compile/builtins/blob.js.map +1 -0
  25. package/dist/src/compile/builtins/compare.d.ts +18 -0
  26. package/dist/src/compile/builtins/compare.d.ts.map +1 -0
  27. package/dist/src/compile/builtins/compare.js +52 -0
  28. package/dist/src/compile/builtins/compare.js.map +1 -0
  29. package/dist/src/compile/builtins/datetime.d.ts +21 -0
  30. package/dist/src/compile/builtins/datetime.d.ts.map +1 -0
  31. package/dist/src/compile/builtins/datetime.js +46 -0
  32. package/dist/src/compile/builtins/datetime.js.map +1 -0
  33. package/dist/src/compile/builtins/dict.d.ts +47 -0
  34. package/dist/src/compile/builtins/dict.d.ts.map +1 -0
  35. package/dist/src/compile/builtins/dict.js +576 -0
  36. package/dist/src/compile/builtins/dict.js.map +1 -0
  37. package/dist/src/compile/builtins/index.d.ts +9 -0
  38. package/dist/src/compile/builtins/index.d.ts.map +1 -0
  39. package/dist/src/compile/builtins/index.js +28 -0
  40. package/dist/src/compile/builtins/index.js.map +1 -0
  41. package/dist/src/compile/builtins/matrix.d.ts +31 -0
  42. package/dist/src/compile/builtins/matrix.d.ts.map +1 -0
  43. package/dist/src/compile/builtins/matrix.js +310 -0
  44. package/dist/src/compile/builtins/matrix.js.map +1 -0
  45. package/dist/src/compile/builtins/primitives.d.ts +36 -0
  46. package/dist/src/compile/builtins/primitives.d.ts.map +1 -0
  47. package/dist/src/compile/builtins/primitives.js +67 -0
  48. package/dist/src/compile/builtins/primitives.js.map +1 -0
  49. package/dist/src/compile/builtins/ref.d.ts +11 -0
  50. package/dist/src/compile/builtins/ref.d.ts.map +1 -0
  51. package/dist/src/compile/builtins/ref.js +30 -0
  52. package/dist/src/compile/builtins/ref.js.map +1 -0
  53. package/dist/src/compile/builtins/set.d.ts +42 -0
  54. package/dist/src/compile/builtins/set.d.ts.map +1 -0
  55. package/dist/src/compile/builtins/set.js +410 -0
  56. package/dist/src/compile/builtins/set.js.map +1 -0
  57. package/dist/src/compile/builtins/sparse.d.ts +19 -0
  58. package/dist/src/compile/builtins/sparse.d.ts.map +1 -0
  59. package/dist/src/compile/builtins/sparse.js +143 -0
  60. package/dist/src/compile/builtins/sparse.js.map +1 -0
  61. package/dist/src/compile/builtins/string.d.ts +34 -0
  62. package/dist/src/compile/builtins/string.d.ts.map +1 -0
  63. package/dist/src/compile/builtins/string.js +238 -0
  64. package/dist/src/compile/builtins/string.js.map +1 -0
  65. package/dist/src/compile/builtins/tree.d.ts +32 -0
  66. package/dist/src/compile/builtins/tree.d.ts.map +1 -0
  67. package/dist/src/compile/builtins/tree.js +108 -0
  68. package/dist/src/compile/builtins/tree.js.map +1 -0
  69. package/dist/src/compile/builtins/vector.d.ts +44 -0
  70. package/dist/src/compile/builtins/vector.d.ts.map +1 -0
  71. package/dist/src/compile/builtins/vector.js +463 -0
  72. package/dist/src/compile/builtins/vector.js.map +1 -0
  73. package/dist/src/compile/constructors.d.ts +13 -0
  74. package/dist/src/compile/constructors.d.ts.map +1 -0
  75. package/dist/src/compile/constructors.js +179 -0
  76. package/dist/src/compile/constructors.js.map +1 -0
  77. package/dist/src/compile/control.d.ts +13 -0
  78. package/dist/src/compile/control.d.ts.map +1 -0
  79. package/dist/src/compile/control.js +513 -0
  80. package/dist/src/compile/control.js.map +1 -0
  81. package/dist/src/compile/functions.d.ts +13 -0
  82. package/dist/src/compile/functions.d.ts.map +1 -0
  83. package/dist/src/compile/functions.js +492 -0
  84. package/dist/src/compile/functions.js.map +1 -0
  85. package/dist/src/compile/ir.d.ts +19 -0
  86. package/dist/src/compile/ir.d.ts.map +1 -0
  87. package/dist/src/compile/ir.js +193 -0
  88. package/dist/src/compile/ir.js.map +1 -0
  89. package/dist/src/compile/runtime.d.ts +75 -0
  90. package/dist/src/compile/runtime.d.ts.map +1 -0
  91. package/dist/src/compile/runtime.js +114 -0
  92. package/dist/src/compile/runtime.js.map +1 -0
  93. package/dist/src/compile/type_parameters.d.ts +4 -0
  94. package/dist/src/compile/type_parameters.d.ts.map +1 -0
  95. package/dist/src/compile/type_parameters.js +55 -0
  96. package/dist/src/compile/type_parameters.js.map +1 -0
  97. package/dist/src/compile/typed_arrays.d.ts +28 -0
  98. package/dist/src/compile/typed_arrays.d.ts.map +1 -0
  99. package/dist/src/compile/typed_arrays.js +77 -0
  100. package/dist/src/compile/typed_arrays.js.map +1 -0
  101. package/dist/src/compile.d.ts +6 -41
  102. package/dist/src/compile.d.ts.map +1 -1
  103. package/dist/src/compile.js +8 -4415
  104. package/dist/src/compile.js.map +1 -1
  105. package/dist/src/compile.open_beast.spec.js +5 -4
  106. package/dist/src/compile.open_beast.spec.js.map +1 -1
  107. package/dist/src/compile.signature.spec.d.ts +6 -0
  108. package/dist/src/compile.signature.spec.d.ts.map +1 -0
  109. package/dist/src/compile.signature.spec.js +53 -0
  110. package/dist/src/compile.signature.spec.js.map +1 -0
  111. package/dist/src/containers/sortedmap.d.ts +2 -1
  112. package/dist/src/containers/sortedmap.d.ts.map +1 -1
  113. package/dist/src/containers/sortedmap.js +4 -2
  114. package/dist/src/containers/sortedmap.js.map +1 -1
  115. package/dist/src/containers/sortedset.d.ts +2 -1
  116. package/dist/src/containers/sortedset.d.ts.map +1 -1
  117. package/dist/src/containers/sortedset.js +4 -2
  118. package/dist/src/containers/sortedset.js.map +1 -1
  119. package/dist/src/error.d.ts +15 -0
  120. package/dist/src/error.d.ts.map +1 -1
  121. package/dist/src/error.js +16 -0
  122. package/dist/src/error.js.map +1 -1
  123. package/dist/src/expr/array.d.ts +158 -81
  124. package/dist/src/expr/array.d.ts.map +1 -1
  125. package/dist/src/expr/array.js +68 -51
  126. package/dist/src/expr/array.js.map +1 -1
  127. package/dist/src/expr/ast.d.ts.map +1 -1
  128. package/dist/src/expr/ast.js +13 -0
  129. package/dist/src/expr/ast.js.map +1 -1
  130. package/dist/src/expr/blob.d.ts +8 -8
  131. package/dist/src/expr/blob.js +8 -8
  132. package/dist/src/expr/block.d.ts +18 -5
  133. package/dist/src/expr/block.d.ts.map +1 -1
  134. package/dist/src/expr/block.js +19 -0
  135. package/dist/src/expr/block.js.map +1 -1
  136. package/dist/src/expr/boolean.d.ts +10 -10
  137. package/dist/src/expr/boolean.js +10 -10
  138. package/dist/src/expr/datetime.d.ts +28 -28
  139. package/dist/src/expr/datetime.js +28 -28
  140. package/dist/src/expr/dict.d.ts +101 -51
  141. package/dist/src/expr/dict.d.ts.map +1 -1
  142. package/dist/src/expr/dict.js +97 -36
  143. package/dist/src/expr/dict.js.map +1 -1
  144. package/dist/src/expr/float.d.ts +23 -23
  145. package/dist/src/expr/float.js +23 -23
  146. package/dist/src/expr/integer.d.ts +17 -17
  147. package/dist/src/expr/integer.js +11 -11
  148. package/dist/src/expr/libs/array.d.ts +6 -6
  149. package/dist/src/expr/libs/array.js +6 -6
  150. package/dist/src/expr/libs/blob.d.ts +2 -2
  151. package/dist/src/expr/libs/blob.js +2 -2
  152. package/dist/src/expr/libs/datetime.d.ts +25 -25
  153. package/dist/src/expr/libs/datetime.js +25 -25
  154. package/dist/src/expr/libs/dict.d.ts +2 -2
  155. package/dist/src/expr/libs/dict.js +2 -2
  156. package/dist/src/expr/libs/float.d.ts +15 -15
  157. package/dist/src/expr/libs/float.js +15 -15
  158. package/dist/src/expr/libs/integer.d.ts +12 -12
  159. package/dist/src/expr/libs/integer.js +12 -12
  160. package/dist/src/expr/libs/set.d.ts +2 -2
  161. package/dist/src/expr/libs/set.js +2 -2
  162. package/dist/src/expr/libs/string.d.ts +4 -4
  163. package/dist/src/expr/libs/string.js +4 -4
  164. package/dist/src/expr/recursive.d.ts +22 -5
  165. package/dist/src/expr/recursive.d.ts.map +1 -1
  166. package/dist/src/expr/recursive.js +22 -5
  167. package/dist/src/expr/recursive.js.map +1 -1
  168. package/dist/src/expr/ref.d.ts +5 -5
  169. package/dist/src/expr/ref.js +5 -5
  170. package/dist/src/expr/set.d.ts +96 -51
  171. package/dist/src/expr/set.d.ts.map +1 -1
  172. package/dist/src/expr/set.js +85 -29
  173. package/dist/src/expr/set.js.map +1 -1
  174. package/dist/src/expr/string.d.ts +28 -28
  175. package/dist/src/expr/string.js +28 -28
  176. package/dist/src/expr/struct.d.ts.map +1 -1
  177. package/dist/src/expr/struct.js +2 -2
  178. package/dist/src/expr/variant.d.ts +12 -12
  179. package/dist/src/expr/variant.js +7 -7
  180. package/dist/src/function_symbols.d.ts +28 -0
  181. package/dist/src/function_symbols.d.ts.map +1 -0
  182. package/dist/src/function_symbols.js +28 -0
  183. package/dist/src/function_symbols.js.map +1 -0
  184. package/dist/src/index.d.ts +1 -0
  185. package/dist/src/index.d.ts.map +1 -1
  186. package/dist/src/index.js +1 -0
  187. package/dist/src/index.js.map +1 -1
  188. package/dist/src/location.d.ts +32 -0
  189. package/dist/src/location.d.ts.map +1 -1
  190. package/dist/src/location.js +38 -0
  191. package/dist/src/location.js.map +1 -1
  192. package/dist/src/location.spec.js +89 -1
  193. package/dist/src/location.spec.js.map +1 -1
  194. package/dist/src/patch/index.d.ts +1 -1
  195. package/dist/src/patch/index.d.ts.map +1 -1
  196. package/dist/src/patch/index.js +1 -1
  197. package/dist/src/patch/index.js.map +1 -1
  198. package/dist/src/patch/type_of_patch.d.ts +25 -1
  199. package/dist/src/patch/type_of_patch.d.ts.map +1 -1
  200. package/dist/src/patch/type_of_patch.js +33 -10
  201. package/dist/src/patch/type_of_patch.js.map +1 -1
  202. package/dist/src/platform.spec.js +19 -1
  203. package/dist/src/platform.spec.js.map +1 -1
  204. package/dist/src/runner_protocol.d.ts +357 -0
  205. package/dist/src/runner_protocol.d.ts.map +1 -0
  206. package/dist/src/runner_protocol.js +154 -0
  207. package/dist/src/runner_protocol.js.map +1 -0
  208. package/dist/src/serialization/beast2/index.d.ts +22 -5
  209. package/dist/src/serialization/beast2/index.d.ts.map +1 -1
  210. package/dist/src/serialization/beast2/index.js +13 -2
  211. package/dist/src/serialization/beast2/index.js.map +1 -1
  212. package/dist/src/serialization/beast2/index.spec.js +84 -3
  213. package/dist/src/serialization/beast2/index.spec.js.map +1 -1
  214. package/dist/src/serialization/beast2/shared.d.ts +32 -3
  215. package/dist/src/serialization/beast2/shared.d.ts.map +1 -1
  216. package/dist/src/serialization/beast2/shared.js +135 -10
  217. package/dist/src/serialization/beast2/shared.js.map +1 -1
  218. package/dist/src/serialization/beast2/v4/container.d.ts.map +1 -1
  219. package/dist/src/serialization/beast2/v4/container.js +5 -3
  220. package/dist/src/serialization/beast2/v4/container.js.map +1 -1
  221. package/dist/src/serialization/beast2/v5/aliasing.spec.d.ts +6 -0
  222. package/dist/src/serialization/beast2/v5/aliasing.spec.d.ts.map +1 -0
  223. package/dist/src/serialization/beast2/v5/aliasing.spec.js +75 -0
  224. package/dist/src/serialization/beast2/v5/aliasing.spec.js.map +1 -0
  225. package/dist/src/serialization/beast2/v5/boundary.d.ts +176 -0
  226. package/dist/src/serialization/beast2/v5/boundary.d.ts.map +1 -0
  227. package/dist/src/serialization/beast2/v5/boundary.js +297 -0
  228. package/dist/src/serialization/beast2/v5/boundary.js.map +1 -0
  229. package/dist/src/serialization/beast2/v5/boundary.spec.d.ts +6 -0
  230. package/dist/src/serialization/beast2/v5/boundary.spec.d.ts.map +1 -0
  231. package/dist/src/serialization/beast2/v5/boundary.spec.js +479 -0
  232. package/dist/src/serialization/beast2/v5/boundary.spec.js.map +1 -0
  233. package/dist/src/serialization/beast2/v5/canonical.d.ts +101 -0
  234. package/dist/src/serialization/beast2/v5/canonical.d.ts.map +1 -0
  235. package/dist/src/serialization/beast2/v5/canonical.js +436 -0
  236. package/dist/src/serialization/beast2/v5/canonical.js.map +1 -0
  237. package/dist/src/serialization/beast2/v5/canonical.spec.d.ts +6 -0
  238. package/dist/src/serialization/beast2/v5/canonical.spec.d.ts.map +1 -0
  239. package/dist/src/serialization/beast2/v5/canonical.spec.js +124 -0
  240. package/dist/src/serialization/beast2/v5/canonical.spec.js.map +1 -0
  241. package/dist/src/serialization/beast2/v5/codec.d.ts +6 -5
  242. package/dist/src/serialization/beast2/v5/codec.d.ts.map +1 -1
  243. package/dist/src/serialization/beast2/v5/codec.js +18 -3
  244. package/dist/src/serialization/beast2/v5/codec.js.map +1 -1
  245. package/dist/src/serialization/beast2/v5/deflate.d.ts +24 -2
  246. package/dist/src/serialization/beast2/v5/deflate.d.ts.map +1 -1
  247. package/dist/src/serialization/beast2/v5/deflate.js +47 -12
  248. package/dist/src/serialization/beast2/v5/deflate.js.map +1 -1
  249. package/dist/src/serialization/beast2/v5/deflate.spec.js +15 -1
  250. package/dist/src/serialization/beast2/v5/deflate.spec.js.map +1 -1
  251. package/dist/src/serialization/beast2/v5/elements.d.ts +66 -0
  252. package/dist/src/serialization/beast2/v5/elements.d.ts.map +1 -0
  253. package/dist/src/serialization/beast2/v5/elements.js +325 -0
  254. package/dist/src/serialization/beast2/v5/elements.js.map +1 -0
  255. package/dist/src/serialization/beast2/v5/elements.spec.d.ts +6 -0
  256. package/dist/src/serialization/beast2/v5/elements.spec.d.ts.map +1 -0
  257. package/dist/src/serialization/beast2/v5/elements.spec.js +161 -0
  258. package/dist/src/serialization/beast2/v5/elements.spec.js.map +1 -0
  259. package/dist/src/serialization/beast2/v5/frame-pool.d.ts +62 -21
  260. package/dist/src/serialization/beast2/v5/frame-pool.d.ts.map +1 -1
  261. package/dist/src/serialization/beast2/v5/frame-pool.js +138 -27
  262. package/dist/src/serialization/beast2/v5/frame-pool.js.map +1 -1
  263. package/dist/src/serialization/beast2/v5/frame-pool.spec.js +198 -71
  264. package/dist/src/serialization/beast2/v5/frame-pool.spec.js.map +1 -1
  265. package/dist/src/serialization/beast2/v5/frame-worker.js +25 -15
  266. package/dist/src/serialization/beast2/v5/frame-worker.js.map +1 -1
  267. package/dist/src/serialization/beast2/v5/frames.d.ts +22 -12
  268. package/dist/src/serialization/beast2/v5/frames.d.ts.map +1 -1
  269. package/dist/src/serialization/beast2/v5/frames.js +52 -27
  270. package/dist/src/serialization/beast2/v5/frames.js.map +1 -1
  271. package/dist/src/serialization/beast2/v5/geometry.d.ts +38 -1
  272. package/dist/src/serialization/beast2/v5/geometry.d.ts.map +1 -1
  273. package/dist/src/serialization/beast2/v5/geometry.js +73 -1
  274. package/dist/src/serialization/beast2/v5/geometry.js.map +1 -1
  275. package/dist/src/serialization/beast2/v5/geometry.spec.js +34 -23
  276. package/dist/src/serialization/beast2/v5/geometry.spec.js.map +1 -1
  277. package/dist/src/serialization/beast2/v5/index.spec.js +32 -28
  278. package/dist/src/serialization/beast2/v5/index.spec.js.map +1 -1
  279. package/dist/src/serialization/beast2/v5/intake.d.ts +98 -0
  280. package/dist/src/serialization/beast2/v5/intake.d.ts.map +1 -0
  281. package/dist/src/serialization/beast2/v5/intake.js +462 -0
  282. package/dist/src/serialization/beast2/v5/intake.js.map +1 -0
  283. package/dist/src/serialization/beast2/v5/intake.spec.d.ts +6 -0
  284. package/dist/src/serialization/beast2/v5/intake.spec.d.ts.map +1 -0
  285. package/dist/src/serialization/beast2/v5/intake.spec.js +202 -0
  286. package/dist/src/serialization/beast2/v5/intake.spec.js.map +1 -0
  287. package/dist/src/serialization/beast2/v5/lazy.d.ts +42 -1
  288. package/dist/src/serialization/beast2/v5/lazy.d.ts.map +1 -1
  289. package/dist/src/serialization/beast2/v5/lazy.js +143 -28
  290. package/dist/src/serialization/beast2/v5/lazy.js.map +1 -1
  291. package/dist/src/serialization/beast2/v5/lazy.spec.js +102 -24
  292. package/dist/src/serialization/beast2/v5/lazy.spec.js.map +1 -1
  293. package/dist/src/serialization/beast2/v5/manifest-writer.d.ts +110 -0
  294. package/dist/src/serialization/beast2/v5/manifest-writer.d.ts.map +1 -0
  295. package/dist/src/serialization/beast2/v5/manifest-writer.js +118 -0
  296. package/dist/src/serialization/beast2/v5/manifest-writer.js.map +1 -0
  297. package/dist/src/serialization/beast2/v5/manifest-writer.spec.d.ts +6 -0
  298. package/dist/src/serialization/beast2/v5/manifest-writer.spec.d.ts.map +1 -0
  299. package/dist/src/serialization/beast2/v5/manifest-writer.spec.js +207 -0
  300. package/dist/src/serialization/beast2/v5/manifest-writer.spec.js.map +1 -0
  301. package/dist/src/serialization/beast2/v5/manifest.d.ts +241 -0
  302. package/dist/src/serialization/beast2/v5/manifest.d.ts.map +1 -0
  303. package/dist/src/serialization/beast2/v5/manifest.js +233 -0
  304. package/dist/src/serialization/beast2/v5/manifest.js.map +1 -0
  305. package/dist/src/serialization/beast2/v5/merge.d.ts +93 -0
  306. package/dist/src/serialization/beast2/v5/merge.d.ts.map +1 -0
  307. package/dist/src/serialization/beast2/v5/merge.js +202 -0
  308. package/dist/src/serialization/beast2/v5/merge.js.map +1 -0
  309. package/dist/src/serialization/beast2/v5/merge.spec.d.ts +6 -0
  310. package/dist/src/serialization/beast2/v5/merge.spec.d.ts.map +1 -0
  311. package/dist/src/serialization/beast2/v5/merge.spec.js +118 -0
  312. package/dist/src/serialization/beast2/v5/merge.spec.js.map +1 -0
  313. package/dist/src/serialization/beast2/v5/recut.d.ts +143 -0
  314. package/dist/src/serialization/beast2/v5/recut.d.ts.map +1 -0
  315. package/dist/src/serialization/beast2/v5/recut.js +365 -0
  316. package/dist/src/serialization/beast2/v5/recut.js.map +1 -0
  317. package/dist/src/serialization/beast2/v5/recut.spec.d.ts +6 -0
  318. package/dist/src/serialization/beast2/v5/recut.spec.d.ts.map +1 -0
  319. package/dist/src/serialization/beast2/v5/recut.spec.js +215 -0
  320. package/dist/src/serialization/beast2/v5/recut.spec.js.map +1 -0
  321. package/dist/src/serialization/beast2/v5/runs.d.ts +148 -0
  322. package/dist/src/serialization/beast2/v5/runs.d.ts.map +1 -0
  323. package/dist/src/serialization/beast2/v5/runs.js +260 -0
  324. package/dist/src/serialization/beast2/v5/runs.js.map +1 -0
  325. package/dist/src/serialization/beast2/v5/runs.spec.d.ts +6 -0
  326. package/dist/src/serialization/beast2/v5/runs.spec.d.ts.map +1 -0
  327. package/dist/src/serialization/beast2/v5/runs.spec.js +182 -0
  328. package/dist/src/serialization/beast2/v5/runs.spec.js.map +1 -0
  329. package/dist/src/serialization/beast2/v5/sha256.d.ts +19 -0
  330. package/dist/src/serialization/beast2/v5/sha256.d.ts.map +1 -0
  331. package/dist/src/serialization/beast2/v5/sha256.js +103 -0
  332. package/dist/src/serialization/beast2/v5/sha256.js.map +1 -0
  333. package/dist/src/serialization/beast2/v5/sha256.spec.d.ts +6 -0
  334. package/dist/src/serialization/beast2/v5/sha256.spec.d.ts.map +1 -0
  335. package/dist/src/serialization/beast2/v5/sha256.spec.js +42 -0
  336. package/dist/src/serialization/beast2/v5/sha256.spec.js.map +1 -0
  337. package/dist/src/serialization/beast2/v5/stream.d.ts +273 -86
  338. package/dist/src/serialization/beast2/v5/stream.d.ts.map +1 -1
  339. package/dist/src/serialization/beast2/v5/stream.js +576 -244
  340. package/dist/src/serialization/beast2/v5/stream.js.map +1 -1
  341. package/dist/src/serialization/beast2/v5/sync-reader.spec.js +24 -10
  342. package/dist/src/serialization/beast2/v5/sync-reader.spec.js.map +1 -1
  343. package/dist/src/serialization/index.d.ts +1 -1
  344. package/dist/src/serialization/index.d.ts.map +1 -1
  345. package/dist/src/serialization/index.js +1 -1
  346. package/dist/src/serialization/index.js.map +1 -1
  347. package/dist/src/serialization/json.d.ts +28 -0
  348. package/dist/src/serialization/json.d.ts.map +1 -1
  349. package/dist/src/serialization/json.js +141 -30
  350. package/dist/src/serialization/json.js.map +1 -1
  351. package/dist/src/serialization/json.spec.js +47 -2
  352. package/dist/src/serialization/json.spec.js.map +1 -1
  353. package/dist/src/serialization/json_schema.d.ts +15 -11
  354. package/dist/src/serialization/json_schema.d.ts.map +1 -1
  355. package/dist/src/serialization/json_schema.js +21 -36
  356. package/dist/src/serialization/json_schema.js.map +1 -1
  357. package/dist/src/serialization/json_schema.spec.js +26 -32
  358. package/dist/src/serialization/json_schema.spec.js.map +1 -1
  359. package/dist/src/serialization/json_schema_to_type.d.ts +10 -5
  360. package/dist/src/serialization/json_schema_to_type.d.ts.map +1 -1
  361. package/dist/src/serialization/json_schema_to_type.js +13 -6
  362. package/dist/src/serialization/json_schema_to_type.js.map +1 -1
  363. package/dist/src/serialization/json_schema_to_type.spec.js +19 -0
  364. package/dist/src/serialization/json_schema_to_type.spec.js.map +1 -1
  365. package/dist/src/string_order.d.ts +36 -0
  366. package/dist/src/string_order.d.ts.map +1 -0
  367. package/dist/src/string_order.js +64 -0
  368. package/dist/src/string_order.js.map +1 -0
  369. package/dist/src/string_order.spec.d.ts +6 -0
  370. package/dist/src/string_order.spec.d.ts.map +1 -0
  371. package/dist/src/string_order.spec.js +79 -0
  372. package/dist/src/string_order.spec.js.map +1 -0
  373. package/dist/src/type_of_type.d.ts +17 -0
  374. package/dist/src/type_of_type.d.ts.map +1 -1
  375. package/dist/src/type_of_type.js +66 -0
  376. package/dist/src/type_of_type.js.map +1 -1
  377. package/dist/src/type_of_type.to_etv.spec.js +69 -1
  378. package/dist/src/type_of_type.to_etv.spec.js.map +1 -1
  379. package/package.json +1 -1
@@ -0,0 +1,576 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ import { compareFor } from "../../comparison.js";
6
+ import { call_function, FROZEN_MESSAGE, iterationLocks, lockForIteration, unlockForIteration } from "../runtime.js";
7
+ import { SortedMap } from "../../containers/sortedmap.js";
8
+ import { SortedSet } from "../../containers/sortedset.js";
9
+ import { variant } from "../../containers/variant.js";
10
+ import { EastError } from "../../error.js";
11
+ import { isFrozenValue } from "../../frozen.js";
12
+ import { printFor } from "../../serialization/east.js";
13
+ import { buildTree, treeOrder } from "./tree.js";
14
+ /** The builtins for Dicts. @internal */
15
+ export const dict_builtins = {
16
+ DictGenerate: (loc_id, source_map, _platformDef, K, _V) => {
17
+ const keyComparer = compareFor(K);
18
+ return (size, keyFn, valueFn, onConflict) => {
19
+ const result = new SortedMap([], keyComparer);
20
+ for (let i = 0n; i < size; i += 1n) {
21
+ const k = call_function(loc_id, source_map, keyFn, i);
22
+ const v = call_function(loc_id, source_map, valueFn, i);
23
+ const existing = result.get(k);
24
+ if (existing !== undefined) {
25
+ const v2 = call_function(loc_id, source_map, onConflict, existing, v, k);
26
+ result.set(k, v2);
27
+ }
28
+ else {
29
+ result.set(k, v);
30
+ }
31
+ }
32
+ return result;
33
+ };
34
+ },
35
+ DictSize: (_loc_id, _source_map, _platformDef, _K, _V) => (d) => BigInt(d.size),
36
+ DictHas: (_loc_id, _source_map, _platformDef, _K, _V) => (d, key) => d.has(key),
37
+ DictGet: (loc_id, source_map, _platformDef, K, _V) => {
38
+ const print = printFor(K);
39
+ return (d, key) => {
40
+ const result = d.get(key);
41
+ if (result === undefined) {
42
+ throw new EastError(`Dict does not contain key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
43
+ }
44
+ else {
45
+ return result;
46
+ }
47
+ };
48
+ },
49
+ DictGetOrDefault: (loc_id, source_map, _platformDef, _K, _V) => (d, key, onMissingFn) => {
50
+ const result = d.get(key);
51
+ if (result === undefined) {
52
+ return call_function(loc_id, source_map, onMissingFn, key);
53
+ }
54
+ else {
55
+ return result;
56
+ }
57
+ },
58
+ DictTryGet: (_loc_id, _source_map, _platformDef, _K, _V) => (d, key) => {
59
+ const result = d.get(key);
60
+ if (result === undefined) {
61
+ return variant("none", null);
62
+ }
63
+ else {
64
+ return variant("some", result);
65
+ }
66
+ },
67
+ DictInsert: (loc_id, source_map, _platformDef, K, _V) => {
68
+ const print = printFor(K);
69
+ return (d, key, value) => {
70
+ if (isFrozenValue(d)) {
71
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
72
+ }
73
+ if ((iterationLocks.get(d) || 0) > 0) {
74
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
75
+ }
76
+ const existing = d.get(key);
77
+ if (existing !== undefined) {
78
+ throw new EastError(`Dict already contains key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
79
+ }
80
+ else {
81
+ d.set(key, value);
82
+ }
83
+ return null;
84
+ };
85
+ },
86
+ DictGetOrInsert: (loc_id, source_map, _platformDef, _K, _V) => (d, key, onMissing) => {
87
+ if (isFrozenValue(d)) {
88
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
89
+ }
90
+ if ((iterationLocks.get(d) || 0) > 0) {
91
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
92
+ }
93
+ const existing = d.get(key);
94
+ if (existing === undefined) {
95
+ const newValue = call_function(loc_id, source_map, onMissing, key);
96
+ d.set(key, newValue);
97
+ return newValue;
98
+ }
99
+ else {
100
+ return existing;
101
+ }
102
+ },
103
+ DictInsertOrUpdate: (loc_id, source_map, _platformDef, _K, _V) => (d, key, value, onConflictFn) => {
104
+ if (isFrozenValue(d)) {
105
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
106
+ }
107
+ if ((iterationLocks.get(d) || 0) > 0) {
108
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
109
+ }
110
+ const existing = d.get(key);
111
+ if (existing !== undefined) {
112
+ const result = call_function(loc_id, source_map, onConflictFn, existing, value, key);
113
+ d.set(key, result);
114
+ }
115
+ else {
116
+ d.set(key, value);
117
+ }
118
+ return null;
119
+ },
120
+ DictUpdate: (loc_id, source_map, _platformDef, K, _V) => {
121
+ const print = printFor(K);
122
+ return (d, key, value) => {
123
+ if (isFrozenValue(d)) {
124
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
125
+ }
126
+ if (d.has(key)) {
127
+ d.set(key, value);
128
+ return null;
129
+ }
130
+ else {
131
+ throw new EastError(`Dict does not contain key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
132
+ }
133
+ };
134
+ },
135
+ DictSwap: (loc_id, source_map, _platformDef, K, _V) => {
136
+ const print = printFor(K);
137
+ return (d, key, value) => {
138
+ if (isFrozenValue(d)) {
139
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
140
+ }
141
+ let existing = d.get(key);
142
+ if (existing === undefined) {
143
+ throw new EastError(`Dict does not contain key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
144
+ }
145
+ d.set(key, value);
146
+ return existing;
147
+ };
148
+ },
149
+ DictMerge: (loc_id, source_map, _platformDef, _K, _V) => (d, key, value, mergeFn, initialFn) => {
150
+ if (isFrozenValue(d)) {
151
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
152
+ }
153
+ if ((iterationLocks.get(d) || 0) > 0) {
154
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
155
+ }
156
+ let existing = d.get(key);
157
+ if (existing === undefined) {
158
+ existing = call_function(loc_id, source_map, initialFn, key);
159
+ }
160
+ const new_value = call_function(loc_id, source_map, mergeFn, existing, value, key);
161
+ d.set(key, new_value);
162
+ return null;
163
+ },
164
+ DictDelete: (loc_id, source_map, _platformDef, K, _V) => {
165
+ const print = printFor(K);
166
+ return (d, key) => {
167
+ if (isFrozenValue(d)) {
168
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
169
+ }
170
+ if ((iterationLocks.get(d) || 0) > 0) {
171
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
172
+ }
173
+ const existed = d.delete(key);
174
+ if (!existed) {
175
+ throw new EastError(`Dict does not contain key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
176
+ }
177
+ return null;
178
+ };
179
+ },
180
+ DictTryDelete: (loc_id, source_map, _platformDef, _K, _V) => (d, key) => {
181
+ if (isFrozenValue(d)) {
182
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
183
+ }
184
+ if ((iterationLocks.get(d) || 0) > 0) {
185
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
186
+ }
187
+ return d.delete(key);
188
+ },
189
+ DictPop: (loc_id, source_map, _platformDef, K, _V) => {
190
+ const print = printFor(K);
191
+ return (d, key) => {
192
+ if (isFrozenValue(d)) {
193
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
194
+ }
195
+ if ((iterationLocks.get(d) || 0) > 0) {
196
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
197
+ }
198
+ const existing = d.get(key);
199
+ if (existing === undefined) {
200
+ throw new EastError(`Dict does not contain key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
201
+ }
202
+ else {
203
+ d.delete(key);
204
+ return existing;
205
+ }
206
+ };
207
+ },
208
+ DictClear: (loc_id, source_map, _platformDef, _K, _V) => (d) => {
209
+ if (isFrozenValue(d)) {
210
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
211
+ }
212
+ if ((iterationLocks.get(d) || 0) > 0) {
213
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
214
+ }
215
+ d.clear();
216
+ return null;
217
+ },
218
+ DictUnionInPlace: (loc_id, source_map, _platformDef, _K, _V) => (d1, d2, onConflict) => {
219
+ if (isFrozenValue(d1)) {
220
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
221
+ }
222
+ if ((iterationLocks.get(d1) || 0) > 0) {
223
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
224
+ }
225
+ d2.forEach((v2, k) => {
226
+ const v1 = d1.get(k);
227
+ if (v1 === undefined) {
228
+ d1.set(k, v2);
229
+ }
230
+ else {
231
+ const new_value = call_function(loc_id, source_map, onConflict, v1, v2, k);
232
+ d1.set(k, new_value);
233
+ }
234
+ });
235
+ return null;
236
+ },
237
+ DictMergeAll: (loc_id, source_map, _platformDef, _K, _V) => (d1, d2, mergeFn, initialFn) => {
238
+ if (isFrozenValue(d1)) {
239
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
240
+ }
241
+ if ((iterationLocks.get(d1) || 0) > 0) {
242
+ throw new EastError("Cannot modify Dict during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
243
+ }
244
+ d2.forEach((v2, k) => {
245
+ let v1 = d1.get(k);
246
+ if (v1 === undefined) {
247
+ v1 = call_function(loc_id, source_map, initialFn, k);
248
+ }
249
+ const new_value = call_function(loc_id, source_map, mergeFn, v1, v2, k);
250
+ d1.set(k, new_value);
251
+ });
252
+ return null;
253
+ },
254
+ DictKeys: (loc_id, source_map, _platformDef, K, _V) => {
255
+ const compare = compareFor(K);
256
+ return (d) => {
257
+ return new SortedSet([...d.keys()], compare);
258
+ };
259
+ },
260
+ DictGetKeys: (loc_id, source_map, _platformDef, K, _V) => {
261
+ const compare = compareFor(K);
262
+ return (d, keys, onMissing) => {
263
+ const result = new SortedMap([], compare);
264
+ for (const k of keys) {
265
+ const v = d.get(k);
266
+ if (v !== undefined) {
267
+ result.set(k, v);
268
+ }
269
+ else {
270
+ const new_v = call_function(loc_id, source_map, onMissing, k);
271
+ result.set(k, new_v);
272
+ }
273
+ }
274
+ return result;
275
+ };
276
+ },
277
+ DictForEach: (loc_id, source_map, _platformDef, _K, _V, _T2) => (d, f) => {
278
+ lockForIteration(d);
279
+ try {
280
+ d.forEach((v, k) => {
281
+ call_function(loc_id, source_map, f, v, k);
282
+ });
283
+ return null;
284
+ }
285
+ finally {
286
+ unlockForIteration(d);
287
+ }
288
+ },
289
+ DictCopy: (loc_id, source_map, _platformDef, K, _V) => {
290
+ const compare = compareFor(K);
291
+ return (d) => {
292
+ return new SortedMap([...d], compare);
293
+ };
294
+ },
295
+ DictMap: (loc_id, source_map, _platformDef, K, _V, _V2) => {
296
+ const compare = compareFor(K);
297
+ return (d, f) => {
298
+ const result = new SortedMap([], compare);
299
+ lockForIteration(d);
300
+ try {
301
+ for (const [k, v] of d) {
302
+ const v2 = call_function(loc_id, source_map, f, v, k);
303
+ result.set(k, v2);
304
+ }
305
+ return result;
306
+ }
307
+ finally {
308
+ unlockForIteration(d);
309
+ }
310
+ };
311
+ },
312
+ DictFilter: (loc_id, source_map, _platformDef, K, _V) => {
313
+ const compare = compareFor(K);
314
+ return (d, f) => {
315
+ const result = new SortedMap([], compare);
316
+ lockForIteration(d);
317
+ try {
318
+ for (const [k, v] of d) {
319
+ const keep = call_function(loc_id, source_map, f, v, k);
320
+ if (keep) {
321
+ result.set(k, v);
322
+ }
323
+ }
324
+ return result;
325
+ }
326
+ finally {
327
+ unlockForIteration(d);
328
+ }
329
+ };
330
+ },
331
+ DictFilterMap: (loc_id, source_map, _platformDef, K, _V, _V2) => {
332
+ const compare = compareFor(K);
333
+ return (d, f) => {
334
+ const result = new SortedMap([], compare);
335
+ lockForIteration(d);
336
+ try {
337
+ for (const [k, v] of d) {
338
+ const v2 = call_function(loc_id, source_map, f, v, k);
339
+ if (v2.type === "some") {
340
+ result.set(k, v2.value);
341
+ }
342
+ }
343
+ return result;
344
+ }
345
+ finally {
346
+ unlockForIteration(d);
347
+ }
348
+ };
349
+ },
350
+ DictFirstMap: (loc_id, source_map, _platformDef, _K, _V, _T2) => (d, f) => {
351
+ lockForIteration(d);
352
+ try {
353
+ for (const [k, v] of d) {
354
+ const result = call_function(loc_id, source_map, f, v, k);
355
+ if (result.type === "some") {
356
+ return result;
357
+ }
358
+ }
359
+ return variant("none", null);
360
+ }
361
+ finally {
362
+ unlockForIteration(d);
363
+ }
364
+ },
365
+ DictMapReduce: (loc_id, source_map, _platformDef, _K, _V, _T2) => (d, mapFn, reduceFn) => {
366
+ if (d.size === 0) {
367
+ throw new EastError("Cannot reduce empty dictionary with no initial value", { location: (source_map?.resolve(loc_id) ?? []) });
368
+ }
369
+ lockForIteration(d);
370
+ try {
371
+ const iterator = d[Symbol.iterator]();
372
+ const first = iterator.next().value;
373
+ let acc = call_function(loc_id, source_map, mapFn, first[1], first[0]);
374
+ for (const [k, v] of iterator) {
375
+ const mapped = call_function(loc_id, source_map, mapFn, v, k);
376
+ acc = call_function(loc_id, source_map, reduceFn, acc, mapped);
377
+ }
378
+ return acc;
379
+ }
380
+ finally {
381
+ unlockForIteration(d);
382
+ }
383
+ },
384
+ DictReduce: (loc_id, source_map, _platformDef, _K, _V, _T2) => (d, f, init) => {
385
+ let acc = init;
386
+ lockForIteration(d);
387
+ try {
388
+ for (const [k, v] of d) {
389
+ acc = call_function(loc_id, source_map, f, acc, v, k);
390
+ }
391
+ return acc;
392
+ }
393
+ finally {
394
+ unlockForIteration(d);
395
+ }
396
+ },
397
+ DictScan: (loc_id, source_map, _platformDef, _K, _V, _T2) => (d, f, init) => {
398
+ const result = [];
399
+ let acc = init;
400
+ lockForIteration(d);
401
+ try {
402
+ for (const [k, v] of d) {
403
+ acc = call_function(loc_id, source_map, f, acc, v, k);
404
+ result.push(acc);
405
+ }
406
+ return result;
407
+ }
408
+ finally {
409
+ unlockForIteration(d);
410
+ }
411
+ },
412
+ DictToArray: (loc_id, source_map, _platformDef, _K, _V, _T2) => (d, valueFn) => {
413
+ const ret = [];
414
+ lockForIteration(d);
415
+ try {
416
+ for (const [k, v] of d) {
417
+ const v2 = call_function(loc_id, source_map, valueFn, v, k);
418
+ ret.push(v2);
419
+ }
420
+ return ret;
421
+ }
422
+ finally {
423
+ unlockForIteration(d);
424
+ }
425
+ },
426
+ DictToSet: (loc_id, source_map, _platformDef, _K, _V, K2) => {
427
+ const compare = compareFor(K2);
428
+ return (d, fn) => {
429
+ const result = new SortedSet([], compare);
430
+ lockForIteration(d);
431
+ try {
432
+ for (const [k, v] of d) {
433
+ const k2 = call_function(loc_id, source_map, fn, v, k);
434
+ result.add(k2);
435
+ }
436
+ return result;
437
+ }
438
+ finally {
439
+ unlockForIteration(d);
440
+ }
441
+ };
442
+ },
443
+ DictToDict: (loc_id, source_map, _platformDef, K, _V, K2, _V2) => {
444
+ const compare = compareFor(K2);
445
+ return (d, keyFn, valueFn, onConflict) => {
446
+ const result = new SortedMap([], compare);
447
+ lockForIteration(d);
448
+ try {
449
+ for (const [k, v] of d) {
450
+ const k2 = call_function(loc_id, source_map, keyFn, v, k);
451
+ const v2 = call_function(loc_id, source_map, valueFn, v, k);
452
+ const existing = result.get(k2);
453
+ if (existing !== undefined) {
454
+ const v3 = call_function(loc_id, source_map, onConflict, existing, v2, k2);
455
+ result.set(k2, v3);
456
+ }
457
+ else {
458
+ result.set(k2, v2);
459
+ }
460
+ }
461
+ return result;
462
+ }
463
+ finally {
464
+ unlockForIteration(d);
465
+ }
466
+ };
467
+ },
468
+ DictFlattenToArray: (loc_id, source_map, _platformDef, _K, _V, _T2) => (d, fn) => {
469
+ const ret = [];
470
+ lockForIteration(d);
471
+ try {
472
+ for (const [k, v] of d.entries()) {
473
+ const subarray = call_function(loc_id, source_map, fn, v, k);
474
+ for (const item of subarray) {
475
+ ret.push(item);
476
+ }
477
+ }
478
+ return ret;
479
+ }
480
+ finally {
481
+ unlockForIteration(d);
482
+ }
483
+ },
484
+ DictFlattenToSet: (loc_id, source_map, _platformDef, _K, _V, K2) => {
485
+ const compare = compareFor(K2);
486
+ return (d, fn) => {
487
+ const result = new SortedSet([], compare);
488
+ lockForIteration(d);
489
+ try {
490
+ for (const [k, v] of d.entries()) {
491
+ const subset = call_function(loc_id, source_map, fn, v, k);
492
+ for (const k2 of subset) {
493
+ result.add(k2);
494
+ }
495
+ }
496
+ return result;
497
+ }
498
+ finally {
499
+ unlockForIteration(d);
500
+ }
501
+ };
502
+ },
503
+ DictFlattenToDict: (loc_id, source_map, _platformDef, _K, _V, K2, _V2) => {
504
+ const compare = compareFor(K2);
505
+ return (d, fn, onConflict) => {
506
+ const result = new SortedMap([], compare);
507
+ lockForIteration(d);
508
+ try {
509
+ for (const [k, v] of d.entries()) {
510
+ const subdict = call_function(loc_id, source_map, fn, v, k);
511
+ for (const [k2, v2] of subdict.entries()) {
512
+ const existing = result.get(k2);
513
+ if (existing === undefined) {
514
+ result.set(k2, v2);
515
+ }
516
+ else {
517
+ const new_v2 = call_function(loc_id, source_map, onConflict, existing, v2, k2);
518
+ result.set(k2, new_v2);
519
+ }
520
+ }
521
+ }
522
+ return result;
523
+ }
524
+ finally {
525
+ unlockForIteration(d);
526
+ }
527
+ };
528
+ },
529
+ DictGroupFold: (loc_id, source_map, _platformDef, _K, _V, K2, _T2) => {
530
+ const compare = compareFor(K2);
531
+ return (d, keyFn, init, folder) => {
532
+ const result = new SortedMap([], compare);
533
+ lockForIteration(d);
534
+ try {
535
+ for (const [k, v] of d.entries()) {
536
+ const k2 = call_function(loc_id, source_map, keyFn, v, k);
537
+ let existing = result.get(k2);
538
+ if (existing === undefined) {
539
+ existing = call_function(loc_id, source_map, init, k2);
540
+ }
541
+ const new_val = call_function(loc_id, source_map, folder, existing, v, k);
542
+ result.set(k2, new_val);
543
+ }
544
+ return result;
545
+ }
546
+ finally {
547
+ unlockForIteration(d);
548
+ }
549
+ };
550
+ },
551
+ DictToTree: (loc_id, source_map, _platformDef, K, _V, _N) => {
552
+ const compare = compareFor(K);
553
+ const print = printFor(K);
554
+ return (d, parentFn, buildFn) => {
555
+ lockForIteration(d);
556
+ try {
557
+ const entries = [...d];
558
+ const index = new SortedMap(entries.map(([k], i) => [k, i]), compare);
559
+ const parents = new Int32Array(entries.length);
560
+ for (let i = 0; i < entries.length; i++) {
561
+ const p = call_function(loc_id, source_map, parentFn, entries[i][1], entries[i][0]);
562
+ parents[i] = p.type === "some" ? (index.get(p.value) ?? -1) : -1;
563
+ }
564
+ const { order, childCounts, cycle } = treeOrder(parents);
565
+ if (cycle >= 0) {
566
+ throw new EastError(`toTree: cycle through key ${print(entries[cycle][0])}`, { location: (source_map?.resolve(loc_id) ?? []) });
567
+ }
568
+ return buildTree(order, childCounts, (i, children) => call_function(loc_id, source_map, buildFn, entries[i][1], entries[i][0], children));
569
+ }
570
+ finally {
571
+ unlockForIteration(d);
572
+ }
573
+ };
574
+ },
575
+ };
576
+ //# sourceMappingURL=dict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dict.js","sourceRoot":"","sources":["../../../../src/compile/builtins/dict.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ import type { BuiltinName } from "../../builtins.js";
6
+ import type { BuiltinEvaluator } from "../runtime.js";
7
+ /** @internal Every builtin's implementation, keyed by name. */
8
+ export declare const builtin_evaluators: Record<BuiltinName, BuiltinEvaluator>;
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/compile/builtins/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AActD,+DAA+D;AAC/D,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAapE,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { compare_builtins } from "./compare.js";
2
+ import { primitives_builtins } from "./primitives.js";
3
+ import { string_builtins } from "./string.js";
4
+ import { datetime_builtins } from "./datetime.js";
5
+ import { blob_builtins } from "./blob.js";
6
+ import { ref_builtins } from "./ref.js";
7
+ import { array_builtins } from "./array.js";
8
+ import { set_builtins } from "./set.js";
9
+ import { dict_builtins } from "./dict.js";
10
+ import { vector_builtins } from "./vector.js";
11
+ import { sparse_builtins } from "./sparse.js";
12
+ import { matrix_builtins } from "./matrix.js";
13
+ /** @internal Every builtin's implementation, keyed by name. */
14
+ export const builtin_evaluators = {
15
+ ...compare_builtins,
16
+ ...primitives_builtins,
17
+ ...string_builtins,
18
+ ...datetime_builtins,
19
+ ...blob_builtins,
20
+ ...ref_builtins,
21
+ ...array_builtins,
22
+ ...set_builtins,
23
+ ...dict_builtins,
24
+ ...vector_builtins,
25
+ ...sparse_builtins,
26
+ ...matrix_builtins,
27
+ };
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/compile/builtins/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,+DAA+D;AAC/D,MAAM,CAAC,MAAM,kBAAkB,GAA0C;IACvE,GAAG,gBAAgB;IACnB,GAAG,mBAAmB;IACtB,GAAG,eAAe;IAClB,GAAG,iBAAiB;IACpB,GAAG,aAAa;IAChB,GAAG,YAAY;IACf,GAAG,cAAc;IACjB,GAAG,YAAY;IACf,GAAG,aAAa;IAChB,GAAG,eAAe;IAClB,GAAG,eAAe;IAClB,GAAG,eAAe;CACnB,CAAC"}