@elaraai/east 1.0.78 → 1.0.80

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 (276) hide show
  1. package/README.md +1 -1
  2. package/dist/src/comparison.d.ts.map +1 -1
  3. package/dist/src/comparison.js +4 -5
  4. package/dist/src/comparison.js.map +1 -1
  5. package/dist/src/compile/builtins/array.d.ts +59 -0
  6. package/dist/src/compile/builtins/array.d.ts.map +1 -0
  7. package/dist/src/compile/builtins/array.js +656 -0
  8. package/dist/src/compile/builtins/array.js.map +1 -0
  9. package/dist/src/compile/builtins/blob.d.ts +18 -0
  10. package/dist/src/compile/builtins/blob.d.ts.map +1 -0
  11. package/dist/src/compile/builtins/blob.js +150 -0
  12. package/dist/src/compile/builtins/blob.js.map +1 -0
  13. package/dist/src/compile/builtins/compare.d.ts +18 -0
  14. package/dist/src/compile/builtins/compare.d.ts.map +1 -0
  15. package/dist/src/compile/builtins/compare.js +52 -0
  16. package/dist/src/compile/builtins/compare.js.map +1 -0
  17. package/dist/src/compile/builtins/datetime.d.ts +21 -0
  18. package/dist/src/compile/builtins/datetime.d.ts.map +1 -0
  19. package/dist/src/compile/builtins/datetime.js +46 -0
  20. package/dist/src/compile/builtins/datetime.js.map +1 -0
  21. package/dist/src/compile/builtins/dict.d.ts +46 -0
  22. package/dist/src/compile/builtins/dict.d.ts.map +1 -0
  23. package/dist/src/compile/builtins/dict.js +551 -0
  24. package/dist/src/compile/builtins/dict.js.map +1 -0
  25. package/dist/src/compile/builtins/index.d.ts +9 -0
  26. package/dist/src/compile/builtins/index.d.ts.map +1 -0
  27. package/dist/src/compile/builtins/index.js +28 -0
  28. package/dist/src/compile/builtins/index.js.map +1 -0
  29. package/dist/src/compile/builtins/matrix.d.ts +31 -0
  30. package/dist/src/compile/builtins/matrix.d.ts.map +1 -0
  31. package/dist/src/compile/builtins/matrix.js +310 -0
  32. package/dist/src/compile/builtins/matrix.js.map +1 -0
  33. package/dist/src/compile/builtins/primitives.d.ts +36 -0
  34. package/dist/src/compile/builtins/primitives.d.ts.map +1 -0
  35. package/dist/src/compile/builtins/primitives.js +67 -0
  36. package/dist/src/compile/builtins/primitives.js.map +1 -0
  37. package/dist/src/compile/builtins/ref.d.ts +11 -0
  38. package/dist/src/compile/builtins/ref.d.ts.map +1 -0
  39. package/dist/src/compile/builtins/ref.js +30 -0
  40. package/dist/src/compile/builtins/ref.js.map +1 -0
  41. package/dist/src/compile/builtins/set.d.ts +41 -0
  42. package/dist/src/compile/builtins/set.d.ts.map +1 -0
  43. package/dist/src/compile/builtins/set.js +385 -0
  44. package/dist/src/compile/builtins/set.js.map +1 -0
  45. package/dist/src/compile/builtins/sparse.d.ts +19 -0
  46. package/dist/src/compile/builtins/sparse.d.ts.map +1 -0
  47. package/dist/src/compile/builtins/sparse.js +143 -0
  48. package/dist/src/compile/builtins/sparse.js.map +1 -0
  49. package/dist/src/compile/builtins/string.d.ts +34 -0
  50. package/dist/src/compile/builtins/string.d.ts.map +1 -0
  51. package/dist/src/compile/builtins/string.js +238 -0
  52. package/dist/src/compile/builtins/string.js.map +1 -0
  53. package/dist/src/compile/builtins/vector.d.ts +44 -0
  54. package/dist/src/compile/builtins/vector.d.ts.map +1 -0
  55. package/dist/src/compile/builtins/vector.js +463 -0
  56. package/dist/src/compile/builtins/vector.js.map +1 -0
  57. package/dist/src/compile/constructors.d.ts +13 -0
  58. package/dist/src/compile/constructors.d.ts.map +1 -0
  59. package/dist/src/compile/constructors.js +179 -0
  60. package/dist/src/compile/constructors.js.map +1 -0
  61. package/dist/src/compile/control.d.ts +13 -0
  62. package/dist/src/compile/control.d.ts.map +1 -0
  63. package/dist/src/compile/control.js +513 -0
  64. package/dist/src/compile/control.js.map +1 -0
  65. package/dist/src/compile/functions.d.ts +13 -0
  66. package/dist/src/compile/functions.d.ts.map +1 -0
  67. package/dist/src/compile/functions.js +492 -0
  68. package/dist/src/compile/functions.js.map +1 -0
  69. package/dist/src/compile/ir.d.ts +19 -0
  70. package/dist/src/compile/ir.d.ts.map +1 -0
  71. package/dist/src/compile/ir.js +193 -0
  72. package/dist/src/compile/ir.js.map +1 -0
  73. package/dist/src/compile/runtime.d.ts +78 -0
  74. package/dist/src/compile/runtime.d.ts.map +1 -0
  75. package/dist/src/compile/runtime.js +111 -0
  76. package/dist/src/compile/runtime.js.map +1 -0
  77. package/dist/src/compile/type_parameters.d.ts +4 -0
  78. package/dist/src/compile/type_parameters.d.ts.map +1 -0
  79. package/dist/src/compile/type_parameters.js +55 -0
  80. package/dist/src/compile/type_parameters.js.map +1 -0
  81. package/dist/src/compile/typed_arrays.d.ts +28 -0
  82. package/dist/src/compile/typed_arrays.d.ts.map +1 -0
  83. package/dist/src/compile/typed_arrays.js +77 -0
  84. package/dist/src/compile/typed_arrays.js.map +1 -0
  85. package/dist/src/compile.d.ts +6 -41
  86. package/dist/src/compile.d.ts.map +1 -1
  87. package/dist/src/compile.js +8 -4415
  88. package/dist/src/compile.js.map +1 -1
  89. package/dist/src/compile.open_beast.spec.js +5 -4
  90. package/dist/src/compile.open_beast.spec.js.map +1 -1
  91. package/dist/src/containers/sortedmap.d.ts +2 -1
  92. package/dist/src/containers/sortedmap.d.ts.map +1 -1
  93. package/dist/src/containers/sortedmap.js +4 -2
  94. package/dist/src/containers/sortedmap.js.map +1 -1
  95. package/dist/src/containers/sortedset.d.ts +2 -1
  96. package/dist/src/containers/sortedset.d.ts.map +1 -1
  97. package/dist/src/containers/sortedset.js +4 -2
  98. package/dist/src/containers/sortedset.js.map +1 -1
  99. package/dist/src/error.d.ts +15 -0
  100. package/dist/src/error.d.ts.map +1 -1
  101. package/dist/src/error.js +16 -0
  102. package/dist/src/error.js.map +1 -1
  103. package/dist/src/index.d.ts +1 -0
  104. package/dist/src/index.d.ts.map +1 -1
  105. package/dist/src/index.js +1 -0
  106. package/dist/src/index.js.map +1 -1
  107. package/dist/src/patch/index.d.ts +1 -1
  108. package/dist/src/patch/index.d.ts.map +1 -1
  109. package/dist/src/patch/index.js +1 -1
  110. package/dist/src/patch/index.js.map +1 -1
  111. package/dist/src/patch/type_of_patch.d.ts +25 -1
  112. package/dist/src/patch/type_of_patch.d.ts.map +1 -1
  113. package/dist/src/patch/type_of_patch.js +33 -10
  114. package/dist/src/patch/type_of_patch.js.map +1 -1
  115. package/dist/src/platform.spec.js +19 -1
  116. package/dist/src/platform.spec.js.map +1 -1
  117. package/dist/src/runner_protocol.d.ts +316 -0
  118. package/dist/src/runner_protocol.d.ts.map +1 -0
  119. package/dist/src/runner_protocol.js +135 -0
  120. package/dist/src/runner_protocol.js.map +1 -0
  121. package/dist/src/serialization/beast2/index.d.ts +21 -5
  122. package/dist/src/serialization/beast2/index.d.ts.map +1 -1
  123. package/dist/src/serialization/beast2/index.js +12 -2
  124. package/dist/src/serialization/beast2/index.js.map +1 -1
  125. package/dist/src/serialization/beast2/index.spec.js +84 -3
  126. package/dist/src/serialization/beast2/index.spec.js.map +1 -1
  127. package/dist/src/serialization/beast2/shared.d.ts +32 -3
  128. package/dist/src/serialization/beast2/shared.d.ts.map +1 -1
  129. package/dist/src/serialization/beast2/shared.js +135 -10
  130. package/dist/src/serialization/beast2/shared.js.map +1 -1
  131. package/dist/src/serialization/beast2/v4/container.d.ts.map +1 -1
  132. package/dist/src/serialization/beast2/v4/container.js +5 -3
  133. package/dist/src/serialization/beast2/v4/container.js.map +1 -1
  134. package/dist/src/serialization/beast2/v5/aliasing.spec.d.ts +6 -0
  135. package/dist/src/serialization/beast2/v5/aliasing.spec.d.ts.map +1 -0
  136. package/dist/src/serialization/beast2/v5/aliasing.spec.js +75 -0
  137. package/dist/src/serialization/beast2/v5/aliasing.spec.js.map +1 -0
  138. package/dist/src/serialization/beast2/v5/boundary.d.ts +176 -0
  139. package/dist/src/serialization/beast2/v5/boundary.d.ts.map +1 -0
  140. package/dist/src/serialization/beast2/v5/boundary.js +297 -0
  141. package/dist/src/serialization/beast2/v5/boundary.js.map +1 -0
  142. package/dist/src/serialization/beast2/v5/boundary.spec.d.ts +6 -0
  143. package/dist/src/serialization/beast2/v5/boundary.spec.d.ts.map +1 -0
  144. package/dist/src/serialization/beast2/v5/boundary.spec.js +479 -0
  145. package/dist/src/serialization/beast2/v5/boundary.spec.js.map +1 -0
  146. package/dist/src/serialization/beast2/v5/codec.d.ts +6 -5
  147. package/dist/src/serialization/beast2/v5/codec.d.ts.map +1 -1
  148. package/dist/src/serialization/beast2/v5/codec.js +18 -3
  149. package/dist/src/serialization/beast2/v5/codec.js.map +1 -1
  150. package/dist/src/serialization/beast2/v5/deflate.d.ts +24 -2
  151. package/dist/src/serialization/beast2/v5/deflate.d.ts.map +1 -1
  152. package/dist/src/serialization/beast2/v5/deflate.js +47 -12
  153. package/dist/src/serialization/beast2/v5/deflate.js.map +1 -1
  154. package/dist/src/serialization/beast2/v5/deflate.spec.js +15 -1
  155. package/dist/src/serialization/beast2/v5/deflate.spec.js.map +1 -1
  156. package/dist/src/serialization/beast2/v5/elements.d.ts +64 -0
  157. package/dist/src/serialization/beast2/v5/elements.d.ts.map +1 -0
  158. package/dist/src/serialization/beast2/v5/elements.js +320 -0
  159. package/dist/src/serialization/beast2/v5/elements.js.map +1 -0
  160. package/dist/src/serialization/beast2/v5/elements.spec.d.ts +6 -0
  161. package/dist/src/serialization/beast2/v5/elements.spec.d.ts.map +1 -0
  162. package/dist/src/serialization/beast2/v5/elements.spec.js +161 -0
  163. package/dist/src/serialization/beast2/v5/elements.spec.js.map +1 -0
  164. package/dist/src/serialization/beast2/v5/frame-pool.d.ts +62 -21
  165. package/dist/src/serialization/beast2/v5/frame-pool.d.ts.map +1 -1
  166. package/dist/src/serialization/beast2/v5/frame-pool.js +138 -27
  167. package/dist/src/serialization/beast2/v5/frame-pool.js.map +1 -1
  168. package/dist/src/serialization/beast2/v5/frame-pool.spec.js +198 -71
  169. package/dist/src/serialization/beast2/v5/frame-pool.spec.js.map +1 -1
  170. package/dist/src/serialization/beast2/v5/frame-worker.js +25 -15
  171. package/dist/src/serialization/beast2/v5/frame-worker.js.map +1 -1
  172. package/dist/src/serialization/beast2/v5/frames.d.ts +22 -12
  173. package/dist/src/serialization/beast2/v5/frames.d.ts.map +1 -1
  174. package/dist/src/serialization/beast2/v5/frames.js +52 -27
  175. package/dist/src/serialization/beast2/v5/frames.js.map +1 -1
  176. package/dist/src/serialization/beast2/v5/geometry.d.ts +38 -1
  177. package/dist/src/serialization/beast2/v5/geometry.d.ts.map +1 -1
  178. package/dist/src/serialization/beast2/v5/geometry.js +73 -1
  179. package/dist/src/serialization/beast2/v5/geometry.js.map +1 -1
  180. package/dist/src/serialization/beast2/v5/geometry.spec.js +34 -23
  181. package/dist/src/serialization/beast2/v5/geometry.spec.js.map +1 -1
  182. package/dist/src/serialization/beast2/v5/index.spec.js +32 -28
  183. package/dist/src/serialization/beast2/v5/index.spec.js.map +1 -1
  184. package/dist/src/serialization/beast2/v5/lazy.d.ts +42 -1
  185. package/dist/src/serialization/beast2/v5/lazy.d.ts.map +1 -1
  186. package/dist/src/serialization/beast2/v5/lazy.js +143 -28
  187. package/dist/src/serialization/beast2/v5/lazy.js.map +1 -1
  188. package/dist/src/serialization/beast2/v5/lazy.spec.js +102 -24
  189. package/dist/src/serialization/beast2/v5/lazy.spec.js.map +1 -1
  190. package/dist/src/serialization/beast2/v5/manifest-writer.d.ts +110 -0
  191. package/dist/src/serialization/beast2/v5/manifest-writer.d.ts.map +1 -0
  192. package/dist/src/serialization/beast2/v5/manifest-writer.js +118 -0
  193. package/dist/src/serialization/beast2/v5/manifest-writer.js.map +1 -0
  194. package/dist/src/serialization/beast2/v5/manifest-writer.spec.d.ts +6 -0
  195. package/dist/src/serialization/beast2/v5/manifest-writer.spec.d.ts.map +1 -0
  196. package/dist/src/serialization/beast2/v5/manifest-writer.spec.js +207 -0
  197. package/dist/src/serialization/beast2/v5/manifest-writer.spec.js.map +1 -0
  198. package/dist/src/serialization/beast2/v5/manifest.d.ts +241 -0
  199. package/dist/src/serialization/beast2/v5/manifest.d.ts.map +1 -0
  200. package/dist/src/serialization/beast2/v5/manifest.js +233 -0
  201. package/dist/src/serialization/beast2/v5/manifest.js.map +1 -0
  202. package/dist/src/serialization/beast2/v5/merge.d.ts +93 -0
  203. package/dist/src/serialization/beast2/v5/merge.d.ts.map +1 -0
  204. package/dist/src/serialization/beast2/v5/merge.js +202 -0
  205. package/dist/src/serialization/beast2/v5/merge.js.map +1 -0
  206. package/dist/src/serialization/beast2/v5/merge.spec.d.ts +6 -0
  207. package/dist/src/serialization/beast2/v5/merge.spec.d.ts.map +1 -0
  208. package/dist/src/serialization/beast2/v5/merge.spec.js +118 -0
  209. package/dist/src/serialization/beast2/v5/merge.spec.js.map +1 -0
  210. package/dist/src/serialization/beast2/v5/recut.d.ts +143 -0
  211. package/dist/src/serialization/beast2/v5/recut.d.ts.map +1 -0
  212. package/dist/src/serialization/beast2/v5/recut.js +365 -0
  213. package/dist/src/serialization/beast2/v5/recut.js.map +1 -0
  214. package/dist/src/serialization/beast2/v5/recut.spec.d.ts +6 -0
  215. package/dist/src/serialization/beast2/v5/recut.spec.d.ts.map +1 -0
  216. package/dist/src/serialization/beast2/v5/recut.spec.js +215 -0
  217. package/dist/src/serialization/beast2/v5/recut.spec.js.map +1 -0
  218. package/dist/src/serialization/beast2/v5/runs.d.ts +148 -0
  219. package/dist/src/serialization/beast2/v5/runs.d.ts.map +1 -0
  220. package/dist/src/serialization/beast2/v5/runs.js +260 -0
  221. package/dist/src/serialization/beast2/v5/runs.js.map +1 -0
  222. package/dist/src/serialization/beast2/v5/runs.spec.d.ts +6 -0
  223. package/dist/src/serialization/beast2/v5/runs.spec.d.ts.map +1 -0
  224. package/dist/src/serialization/beast2/v5/runs.spec.js +182 -0
  225. package/dist/src/serialization/beast2/v5/runs.spec.js.map +1 -0
  226. package/dist/src/serialization/beast2/v5/sha256.d.ts +19 -0
  227. package/dist/src/serialization/beast2/v5/sha256.d.ts.map +1 -0
  228. package/dist/src/serialization/beast2/v5/sha256.js +103 -0
  229. package/dist/src/serialization/beast2/v5/sha256.js.map +1 -0
  230. package/dist/src/serialization/beast2/v5/sha256.spec.d.ts +6 -0
  231. package/dist/src/serialization/beast2/v5/sha256.spec.d.ts.map +1 -0
  232. package/dist/src/serialization/beast2/v5/sha256.spec.js +42 -0
  233. package/dist/src/serialization/beast2/v5/sha256.spec.js.map +1 -0
  234. package/dist/src/serialization/beast2/v5/stream.d.ts +273 -86
  235. package/dist/src/serialization/beast2/v5/stream.d.ts.map +1 -1
  236. package/dist/src/serialization/beast2/v5/stream.js +576 -244
  237. package/dist/src/serialization/beast2/v5/stream.js.map +1 -1
  238. package/dist/src/serialization/beast2/v5/sync-reader.spec.js +24 -10
  239. package/dist/src/serialization/beast2/v5/sync-reader.spec.js.map +1 -1
  240. package/dist/src/serialization/index.d.ts +1 -1
  241. package/dist/src/serialization/index.d.ts.map +1 -1
  242. package/dist/src/serialization/index.js +1 -1
  243. package/dist/src/serialization/index.js.map +1 -1
  244. package/dist/src/serialization/json.d.ts +28 -0
  245. package/dist/src/serialization/json.d.ts.map +1 -1
  246. package/dist/src/serialization/json.js +141 -30
  247. package/dist/src/serialization/json.js.map +1 -1
  248. package/dist/src/serialization/json.spec.js +47 -2
  249. package/dist/src/serialization/json.spec.js.map +1 -1
  250. package/dist/src/serialization/json_schema.d.ts +15 -11
  251. package/dist/src/serialization/json_schema.d.ts.map +1 -1
  252. package/dist/src/serialization/json_schema.js +21 -36
  253. package/dist/src/serialization/json_schema.js.map +1 -1
  254. package/dist/src/serialization/json_schema.spec.js +26 -32
  255. package/dist/src/serialization/json_schema.spec.js.map +1 -1
  256. package/dist/src/serialization/json_schema_to_type.d.ts +10 -5
  257. package/dist/src/serialization/json_schema_to_type.d.ts.map +1 -1
  258. package/dist/src/serialization/json_schema_to_type.js +13 -6
  259. package/dist/src/serialization/json_schema_to_type.js.map +1 -1
  260. package/dist/src/serialization/json_schema_to_type.spec.js +19 -0
  261. package/dist/src/serialization/json_schema_to_type.spec.js.map +1 -1
  262. package/dist/src/string_order.d.ts +36 -0
  263. package/dist/src/string_order.d.ts.map +1 -0
  264. package/dist/src/string_order.js +64 -0
  265. package/dist/src/string_order.js.map +1 -0
  266. package/dist/src/string_order.spec.d.ts +6 -0
  267. package/dist/src/string_order.spec.d.ts.map +1 -0
  268. package/dist/src/string_order.spec.js +79 -0
  269. package/dist/src/string_order.spec.js.map +1 -0
  270. package/dist/src/type_of_type.d.ts +17 -0
  271. package/dist/src/type_of_type.d.ts.map +1 -1
  272. package/dist/src/type_of_type.js +66 -0
  273. package/dist/src/type_of_type.js.map +1 -1
  274. package/dist/src/type_of_type.to_etv.spec.js +69 -1
  275. package/dist/src/type_of_type.to_etv.spec.js.map +1 -1
  276. package/package.json +1 -1
@@ -0,0 +1,385 @@
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
+ /** The builtins for Sets. @internal */
14
+ export const set_builtins = {
15
+ SetGenerate: (loc_id, source_map, _platformDef, K) => {
16
+ const keyComparer = compareFor(K);
17
+ return (size, keyFn, onConflict) => {
18
+ const result = new SortedSet([], keyComparer);
19
+ for (let i = 0n; i < size; i += 1n) {
20
+ const k = call_function(loc_id, source_map, keyFn, i);
21
+ if (result.has(k)) {
22
+ call_function(loc_id, source_map, onConflict, k);
23
+ }
24
+ else {
25
+ result.add(k);
26
+ }
27
+ }
28
+ return result;
29
+ };
30
+ },
31
+ SetSize: (_loc_id, _source_map, _platformDef, _K) => (s) => BigInt(s.size),
32
+ SetHas: (_loc_id, _source_map, _platformDef, _K) => (s, key) => s.has(key),
33
+ SetInsert: (loc_id, source_map, _platformDef, K) => {
34
+ const print = printFor(K);
35
+ return (s, key) => {
36
+ if (isFrozenValue(s)) {
37
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
38
+ }
39
+ if ((iterationLocks.get(s) || 0) > 0) {
40
+ throw new EastError("Cannot modify Set during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
41
+ }
42
+ const size_before = s.size;
43
+ s.add(key);
44
+ if (s.size === size_before) {
45
+ throw new EastError(`Set already contains key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
46
+ }
47
+ return null;
48
+ };
49
+ },
50
+ SetTryInsert: (loc_id, source_map, _platformDef, _K) => (s, key) => {
51
+ if (isFrozenValue(s)) {
52
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
53
+ }
54
+ if ((iterationLocks.get(s) || 0) > 0) {
55
+ throw new EastError("Cannot modify Set during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
56
+ }
57
+ const size_before = s.size;
58
+ s.add(key);
59
+ return s.size > size_before;
60
+ },
61
+ SetDelete: (loc_id, source_map, _platformDef, K) => {
62
+ const print = printFor(K);
63
+ return (s, key) => {
64
+ if (isFrozenValue(s)) {
65
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
66
+ }
67
+ if ((iterationLocks.get(s) || 0) > 0) {
68
+ throw new EastError("Cannot modify Set during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
69
+ }
70
+ if (!s.delete(key)) {
71
+ throw new EastError(`Set does not contain key ${print(key)}`, { location: (source_map?.resolve(loc_id) ?? []) });
72
+ }
73
+ return null;
74
+ };
75
+ },
76
+ SetTryDelete: (loc_id, source_map, _platformDef, _K) => (s, key) => {
77
+ if (isFrozenValue(s)) {
78
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
79
+ }
80
+ if ((iterationLocks.get(s) || 0) > 0) {
81
+ throw new EastError("Cannot modify Set during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
82
+ }
83
+ return s.delete(key);
84
+ },
85
+ SetClear: (loc_id, source_map, _platformDef, _K) => (s) => {
86
+ if (isFrozenValue(s)) {
87
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
88
+ }
89
+ if ((iterationLocks.get(s) || 0) > 0) {
90
+ throw new EastError("Cannot modify Set during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
91
+ }
92
+ s.clear();
93
+ return null;
94
+ },
95
+ SetUnionInPlace: (loc_id, source_map, _platformDef, _K) => (s1, s2) => {
96
+ if (isFrozenValue(s1)) {
97
+ throw new EastError(FROZEN_MESSAGE, { location: (source_map?.resolve(loc_id) ?? []) });
98
+ }
99
+ if ((iterationLocks.get(s1) || 0) > 0) {
100
+ throw new EastError("Cannot modify Set during iteration", { location: (source_map?.resolve(loc_id) ?? []) });
101
+ }
102
+ s2.forEach(v => s1.add(v));
103
+ return null;
104
+ },
105
+ SetUnion: (_loc_id, _source_map, _platformDef, _K) => (s1, s2) => s1.union(s2),
106
+ SetIntersect: (_loc_id, _source_map, _platformDef, _K) => (s1, s2) => s1.intersection(s2),
107
+ SetDiff: (_loc_id, _source_map, _platformDef, _K) => (s1, s2) => s1.difference(s2),
108
+ SetSymDiff: (_loc_id, _source_map, _platformDef, _K) => (s1, s2) => s1.symmetricDifference(s2),
109
+ SetIsSubset: (_loc_id, _source_map, _platformDef, _K) => (s1, s2) => s1.isSubsetOf(s2),
110
+ SetIsDisjoint: (_loc_id, _source_map, _platformDef, _K) => (s1, s2) => s1.isDisjointFrom(s2),
111
+ SetCopy: (loc_id, source_map, _platformDef, K) => {
112
+ const compare = compareFor(K);
113
+ return (s) => {
114
+ return new SortedSet([...s], compare);
115
+ };
116
+ },
117
+ SetForEach: (loc_id, source_map, _platformDef, _K, _T2) => (s, f) => {
118
+ lockForIteration(s);
119
+ try {
120
+ s.forEach(x => {
121
+ call_function(loc_id, source_map, f, x);
122
+ });
123
+ return null;
124
+ }
125
+ finally {
126
+ unlockForIteration(s);
127
+ }
128
+ },
129
+ SetFilter: (loc_id, source_map, _platformDef, K) => {
130
+ const compare = compareFor(K);
131
+ return (s, f) => {
132
+ const result = new SortedSet([], compare);
133
+ lockForIteration(s);
134
+ try {
135
+ s.forEach(x => {
136
+ const keep = call_function(loc_id, source_map, f, x);
137
+ if (keep) {
138
+ result.add(x);
139
+ }
140
+ });
141
+ return result;
142
+ }
143
+ finally {
144
+ unlockForIteration(s);
145
+ }
146
+ };
147
+ },
148
+ SetFilterMap: (loc_id, source_map, _platformDef, K, _V2) => {
149
+ const compare = compareFor(K);
150
+ return (s, f) => {
151
+ const result = new SortedMap([], compare);
152
+ lockForIteration(s);
153
+ try {
154
+ s.forEach(k => {
155
+ const v2 = call_function(loc_id, source_map, f, k);
156
+ if (v2.type === "some") {
157
+ result.set(k, v2.value);
158
+ }
159
+ });
160
+ return result;
161
+ }
162
+ finally {
163
+ unlockForIteration(s);
164
+ }
165
+ };
166
+ },
167
+ SetFirstMap: (loc_id, source_map, _platformDef, _K, _T2) => (s, f) => {
168
+ lockForIteration(s);
169
+ try {
170
+ for (const k of s) {
171
+ const v = call_function(loc_id, source_map, f, k);
172
+ if (v.type === "some") {
173
+ return v;
174
+ }
175
+ }
176
+ return variant("none", null);
177
+ }
178
+ finally {
179
+ unlockForIteration(s);
180
+ }
181
+ },
182
+ SetMapReduce: (loc_id, source_map, _platformDef, _K, _T2) => (s, mapFn, reduceFn) => {
183
+ if (s.size === 0) {
184
+ throw new EastError("Cannot reduce empty set with no initial value", { location: (source_map?.resolve(loc_id) ?? []) });
185
+ }
186
+ lockForIteration(s);
187
+ try {
188
+ const iterator = s[Symbol.iterator]();
189
+ const first = iterator.next().value;
190
+ let acc = call_function(loc_id, source_map, mapFn, first);
191
+ for (const k of iterator) {
192
+ const mapped = call_function(loc_id, source_map, mapFn, k);
193
+ acc = call_function(loc_id, source_map, reduceFn, acc, mapped);
194
+ }
195
+ return acc;
196
+ }
197
+ finally {
198
+ unlockForIteration(s);
199
+ }
200
+ },
201
+ SetMap: (loc_id, source_map, _platformDef, K, _T2) => {
202
+ const compare = compareFor(K);
203
+ return (s, f) => {
204
+ const result = new SortedMap([], compare);
205
+ lockForIteration(s);
206
+ try {
207
+ s.forEach(x => {
208
+ const v = call_function(loc_id, source_map, f, x);
209
+ result.set(x, v);
210
+ });
211
+ return result;
212
+ }
213
+ finally {
214
+ unlockForIteration(s);
215
+ }
216
+ };
217
+ },
218
+ SetReduce: (loc_id, source_map, _platformDef, _K, _T2) => (s, f, init) => {
219
+ let acc = init;
220
+ lockForIteration(s);
221
+ try {
222
+ for (const x of s) {
223
+ acc = call_function(loc_id, source_map, f, acc, x);
224
+ }
225
+ return acc;
226
+ }
227
+ finally {
228
+ unlockForIteration(s);
229
+ }
230
+ },
231
+ SetScan: (loc_id, source_map, _platformDef, _K, _T2) => (s, f, init) => {
232
+ const result = [];
233
+ let acc = init;
234
+ lockForIteration(s);
235
+ try {
236
+ for (const x of s) {
237
+ acc = call_function(loc_id, source_map, f, acc, x);
238
+ result.push(acc);
239
+ }
240
+ return result;
241
+ }
242
+ finally {
243
+ unlockForIteration(s);
244
+ }
245
+ },
246
+ SetToArray: (loc_id, source_map, _platformDef, _K, _T2) => (s, valueFn) => {
247
+ const ret = [];
248
+ lockForIteration(s);
249
+ try {
250
+ for (const k of s) {
251
+ const v = call_function(loc_id, source_map, valueFn, k);
252
+ ret.push(v);
253
+ }
254
+ return ret;
255
+ }
256
+ finally {
257
+ unlockForIteration(s);
258
+ }
259
+ },
260
+ SetToSet: (loc_id, source_map, _platformDef, K, K2) => {
261
+ const compare = compareFor(K2);
262
+ return (s, f) => {
263
+ const result = new SortedSet([], compare);
264
+ lockForIteration(s);
265
+ try {
266
+ for (const x of s) {
267
+ const v = call_function(loc_id, source_map, f, x);
268
+ result.add(v);
269
+ }
270
+ ;
271
+ return result;
272
+ }
273
+ finally {
274
+ unlockForIteration(s);
275
+ }
276
+ };
277
+ },
278
+ SetToDict: (loc_id, source_map, _platformDef, K, K2, _V2) => {
279
+ const compare = compareFor(K2);
280
+ return (s, keyFn, valueFn, onConflict) => {
281
+ const result = new SortedMap([], compare);
282
+ lockForIteration(s);
283
+ try {
284
+ for (const k of s) {
285
+ const k2 = call_function(loc_id, source_map, keyFn, k);
286
+ let v2 = call_function(loc_id, source_map, valueFn, k);
287
+ const existing = result.get(k2);
288
+ if (existing !== undefined) {
289
+ v2 = call_function(loc_id, source_map, onConflict, existing, v2, k2);
290
+ result.set(k2, v2);
291
+ }
292
+ else {
293
+ result.set(k2, v2);
294
+ }
295
+ }
296
+ return result;
297
+ }
298
+ finally {
299
+ unlockForIteration(s);
300
+ }
301
+ };
302
+ },
303
+ SetFlattenToArray: (loc_id, source_map, _platformDef, _K, _T2) => (s, fn) => {
304
+ const ret = [];
305
+ lockForIteration(s);
306
+ try {
307
+ for (const k of s) {
308
+ const subarray = call_function(loc_id, source_map, fn, k);
309
+ ret.push(...subarray);
310
+ }
311
+ return ret;
312
+ }
313
+ finally {
314
+ unlockForIteration(s);
315
+ }
316
+ },
317
+ SetFlattenToSet: (loc_id, source_map, _platformDef, _K, K2) => {
318
+ const compare = compareFor(K2);
319
+ return (s, fn) => {
320
+ const result = new SortedSet([], compare);
321
+ lockForIteration(s);
322
+ try {
323
+ for (const k of s) {
324
+ const subset = call_function(loc_id, source_map, fn, k);
325
+ for (const k2 of subset) {
326
+ result.add(k2);
327
+ }
328
+ }
329
+ return result;
330
+ }
331
+ finally {
332
+ unlockForIteration(s);
333
+ }
334
+ };
335
+ },
336
+ SetFlattenToDict: (loc_id, source_map, _platformDef, _K, K2, _V2) => {
337
+ const compare = compareFor(K2);
338
+ return (s, fn, onConflict) => {
339
+ const result = new SortedMap([], compare);
340
+ lockForIteration(s);
341
+ try {
342
+ for (const k of s) {
343
+ const subdict = call_function(loc_id, source_map, fn, k);
344
+ for (const [k2, v2] of subdict.entries()) {
345
+ const existing = result.get(k2);
346
+ if (existing === undefined) {
347
+ result.set(k2, v2);
348
+ }
349
+ else {
350
+ const new_v2 = call_function(loc_id, source_map, onConflict, existing, v2, k2);
351
+ result.set(k2, new_v2);
352
+ }
353
+ }
354
+ }
355
+ return result;
356
+ }
357
+ finally {
358
+ unlockForIteration(s);
359
+ }
360
+ };
361
+ },
362
+ SetGroupFold: (loc_id, source_map, _platformDef, _K, K2, _T2) => {
363
+ const compare = compareFor(K2);
364
+ return (s, keyFn, init, folder) => {
365
+ const result = new SortedMap([], compare);
366
+ lockForIteration(s);
367
+ try {
368
+ for (const k of s) {
369
+ const k2 = call_function(loc_id, source_map, keyFn, k);
370
+ let existing = result.get(k2);
371
+ if (existing === undefined) {
372
+ existing = call_function(loc_id, source_map, init, k2);
373
+ }
374
+ const new_val = call_function(loc_id, source_map, folder, existing, k);
375
+ result.set(k2, new_val);
376
+ }
377
+ return result;
378
+ }
379
+ finally {
380
+ unlockForIteration(s);
381
+ }
382
+ };
383
+ },
384
+ };
385
+ //# sourceMappingURL=set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../src/compile/builtins/set.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { SourceMap } from "../../location.js";
2
+ import type { PlatformFunction } from "../../platform.js";
3
+ import type { EastTypeValue } from "../../type_of_type.js";
4
+ /** The builtins for sparse accumulators over Vectors. @internal */
5
+ export declare const sparse_builtins: {
6
+ SparseAxpy: (loc_id: bigint, source_map: SourceMap | null, _platformDef: PlatformFunction[], T: EastTypeValue) => (ixA: BigInt64Array, vA: Float64Array | BigInt64Array, ixB: BigInt64Array, vB: Float64Array | BigInt64Array, alpha: any) => {
7
+ ix: BigInt64Array<ArrayBuffer>;
8
+ v: Float64Array<ArrayBuffer> | BigInt64Array<ArrayBuffer>;
9
+ };
10
+ SparseFromPairs: (loc_id: bigint, source_map: SourceMap | null, _platformDef: PlatformFunction[], T: EastTypeValue) => (ix: BigInt64Array, v: Float64Array | BigInt64Array) => {
11
+ ix: BigInt64Array<ArrayBuffer>;
12
+ v: Float64Array<ArrayBuffer> | BigInt64Array<ArrayBuffer>;
13
+ };
14
+ SparseFilterGt: (loc_id: bigint, source_map: SourceMap | null, _platformDef: PlatformFunction[], T: EastTypeValue) => (ix: BigInt64Array, v: Float64Array | BigInt64Array, threshold: any) => {
15
+ ix: BigInt64Array<ArrayBuffer>;
16
+ v: Float64Array<ArrayBuffer> | BigInt64Array<ArrayBuffer>;
17
+ };
18
+ };
19
+ //# sourceMappingURL=sparse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sparse.d.ts","sourceRoot":"","sources":["../../../../src/compile/builtins/sparse.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,mEAAmE;AACnE,eAAO,MAAM,eAAe;yBAKL,MAAM,cAAc,SAAS,GAAG,IAAI,gBAAgB,gBAAgB,EAAE,KAAK,aAAa,WAE9F,aAAa,MAAM,YAAY,GAAG,aAAa,OAAO,aAAa,MAAM,YAAY,GAAG,aAAa,SAAS,GAAG;;;;8BAoDtG,MAAM,cAAc,SAAS,GAAG,IAAI,gBAAgB,gBAAgB,EAAE,KAAK,aAAa,UAEpG,aAAa,KAAK,YAAY,GAAG,aAAa;;;;6BAqCnC,MAAM,cAAc,SAAS,GAAG,IAAI,gBAAgB,gBAAgB,EAAE,KAAK,aAAa,UAGnG,aAAa,KAAK,YAAY,GAAG,aAAa,aAAa,GAAG;;;;CAmBjD,CAAC"}
@@ -0,0 +1,143 @@
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 { greaterFor } from "../../comparison.js";
6
+ import { requireNumericElem, requireSparse, wrapI64 } from "../typed_arrays.js";
7
+ import { EastError } from "../../error.js";
8
+ /** The builtins for sparse accumulators over Vectors. @internal */
9
+ export const sparse_builtins = {
10
+ // Sparse accumulators: parallel (ix, v) with strictly ascending ix.
11
+ // Entries absent from a side are structurally absent, not explicit zeros:
12
+ // an A-only entry passes through unscaled, a B-only entry contributes
13
+ // alpha*vB even when alpha is NaN or infinite.
14
+ SparseAxpy: (loc_id, source_map, _platformDef, T) => {
15
+ const elem = requireNumericElem("SparseAxpy", T, loc_id, source_map);
16
+ return (ixA, vA, ixB, vB, alpha) => {
17
+ requireSparse(ixA, vA, loc_id, source_map);
18
+ requireSparse(ixB, vB, loc_id, source_map);
19
+ let count = 0;
20
+ let i = 0;
21
+ let j = 0;
22
+ while (i < ixA.length && j < ixB.length) {
23
+ const a = ixA[i];
24
+ const b = ixB[j];
25
+ if (a < b)
26
+ i++;
27
+ else if (b < a)
28
+ j++;
29
+ else {
30
+ i++;
31
+ j++;
32
+ }
33
+ count++;
34
+ }
35
+ count += (ixA.length - i) + (ixB.length - j);
36
+ const outIx = new BigInt64Array(count);
37
+ const outV = elem === "Float" ? new Float64Array(count) : new BigInt64Array(count);
38
+ i = 0;
39
+ j = 0;
40
+ let k = 0;
41
+ while (i < ixA.length && j < ixB.length) {
42
+ const a = ixA[i];
43
+ const b = ixB[j];
44
+ if (a < b) {
45
+ outIx[k] = a;
46
+ outV[k] = vA[i];
47
+ i++;
48
+ }
49
+ else if (b < a) {
50
+ outIx[k] = b;
51
+ outV[k] = elem === "Float" ? alpha * vB[j] : wrapI64(alpha * vB[j]);
52
+ j++;
53
+ }
54
+ else {
55
+ outIx[k] = a;
56
+ outV[k] = elem === "Float"
57
+ ? vA[i] + alpha * vB[j]
58
+ : wrapI64(vA[i] + wrapI64(alpha * vB[j]));
59
+ i++;
60
+ j++;
61
+ }
62
+ k++;
63
+ }
64
+ for (; i < ixA.length; i++, k++) {
65
+ outIx[k] = ixA[i];
66
+ outV[k] = vA[i];
67
+ }
68
+ for (; j < ixB.length; j++, k++) {
69
+ outIx[k] = ixB[j];
70
+ outV[k] = elem === "Float" ? alpha * vB[j] : wrapI64(alpha * vB[j]);
71
+ }
72
+ return { ix: outIx, v: outV };
73
+ };
74
+ },
75
+ SparseFromPairs: (loc_id, source_map, _platformDef, T) => {
76
+ const elem = requireNumericElem("SparseFromPairs", T, loc_id, source_map);
77
+ return (ix, v) => {
78
+ if (ix.length !== v.length) {
79
+ throw new EastError(`Sparse index and value lengths differ (${ix.length} vs ${v.length})`, { location: (source_map?.resolve(loc_id) ?? []) });
80
+ }
81
+ // Stable: order by (index, original position) so equal indices
82
+ // accumulate in input order and the float result is deterministic.
83
+ const order = new Array(ix.length);
84
+ for (let i = 0; i < ix.length; i++)
85
+ order[i] = i;
86
+ order.sort((p, q) => {
87
+ const a = ix[p];
88
+ const b = ix[q];
89
+ if (a < b)
90
+ return -1;
91
+ if (a > b)
92
+ return 1;
93
+ return p - q;
94
+ });
95
+ let count = 0;
96
+ for (let i = 0; i < order.length; i++) {
97
+ if (i === 0 || ix[order[i]] !== ix[order[i - 1]])
98
+ count++;
99
+ }
100
+ const outIx = new BigInt64Array(count);
101
+ const outV = elem === "Float" ? new Float64Array(count) : new BigInt64Array(count);
102
+ let k = -1;
103
+ for (let i = 0; i < order.length; i++) {
104
+ const p = order[i];
105
+ if (i === 0 || ix[p] !== outIx[k]) {
106
+ k++;
107
+ outIx[k] = ix[p];
108
+ outV[k] = v[p];
109
+ }
110
+ else {
111
+ outV[k] = elem === "Float"
112
+ ? (outV[k]) + v[p]
113
+ : wrapI64((outV[k]) + v[p]);
114
+ }
115
+ }
116
+ return { ix: outIx, v: outV };
117
+ };
118
+ },
119
+ SparseFilterGt: (loc_id, source_map, _platformDef, T) => {
120
+ const elem = requireNumericElem("SparseFilterGt", T, loc_id, source_map);
121
+ const greater = greaterFor(T);
122
+ return (ix, v, threshold) => {
123
+ requireSparse(ix, v, loc_id, source_map);
124
+ let count = 0;
125
+ for (let i = 0; i < v.length; i++) {
126
+ if (greater(v[i], threshold))
127
+ count++;
128
+ }
129
+ const outIx = new BigInt64Array(count);
130
+ const outV = elem === "Float" ? new Float64Array(count) : new BigInt64Array(count);
131
+ let k = 0;
132
+ for (let i = 0; i < v.length; i++) {
133
+ if (greater(v[i], threshold)) {
134
+ outIx[k] = ix[i];
135
+ outV[k] = v[i];
136
+ k++;
137
+ }
138
+ }
139
+ return { ix: outIx, v: outV };
140
+ };
141
+ },
142
+ };
143
+ //# sourceMappingURL=sparse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sparse.js","sourceRoot":"","sources":["../../../../src/compile/builtins/sparse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { SourceMap } from "../../location.js";
2
+ import type { PlatformFunction } from "../../platform.js";
3
+ import type { EastTypeValue } from "../../type_of_type.js";
4
+ /** The builtins for Strings: printing, parsing, regular expressions and JSON. @internal */
5
+ export declare const string_builtins: {
6
+ Print: (loc_id: bigint, source_map: SourceMap | null, _platformDef: PlatformFunction[], T: EastTypeValue) => (value: any, ctx?: {
7
+ refs: Map<any, string[]>;
8
+ currentPath: string[];
9
+ }) => string;
10
+ Parse: (loc_id: bigint, source_map: SourceMap | null, _platformDef: PlatformFunction[], T: EastTypeValue) => (x: string) => any;
11
+ StringConcat: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, y: string) => string;
12
+ StringRepeat: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, y: bigint) => string;
13
+ StringLength: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => bigint;
14
+ StringSubstring: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, from: bigint, to: bigint) => string;
15
+ StringUpperCase: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => string;
16
+ StringLowerCase: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => string;
17
+ StringSplit: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, delimiter: string) => string[];
18
+ StringTrim: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => string;
19
+ StringTrimStart: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => string;
20
+ StringTrimEnd: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => string;
21
+ StringStartsWith: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, prefix: string) => boolean;
22
+ StringEndsWith: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, suffix: string) => boolean;
23
+ StringContains: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, substring: string) => boolean;
24
+ StringIndexOf: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, substring: string) => bigint;
25
+ StringReplace: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string, searchValue: string, replaceValue: string) => string;
26
+ RegexContains: (_loc_id: bigint, _source_map: SourceMap | null) => (text: string, pattern: string, flags: string) => boolean;
27
+ RegexIndexOf: (_loc_id: bigint, _source_map: SourceMap | null) => (text: string, pattern: string, flags: string) => bigint;
28
+ RegexReplace: (loc_id: bigint, source_map: SourceMap | null) => (text: string, pattern: string, flags: string, replacement: string) => string;
29
+ StringEncodeUtf8: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => NodeJS.NonSharedUint8Array;
30
+ StringEncodeUtf16: (_loc_id: bigint, _source_map: SourceMap | null) => (x: string) => Uint8Array<ArrayBufferLike>;
31
+ StringParseJSON: (loc_id: bigint, source_map: SourceMap | null, _platformDef: PlatformFunction[], type: EastTypeValue) => (x: string) => any;
32
+ StringPrintJSON: (loc_id: bigint, source_map: SourceMap | null, _platformDef: PlatformFunction[], type: EastTypeValue) => (x: any) => string;
33
+ };
34
+ //# sourceMappingURL=string.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../../src/compile/builtins/string.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAI1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,2FAA2F;AAC3F,eAAO,MAAM,eAAe;oBACV,MAAM,cAAc,SAAS,GAAG,IAAI,gBAAgB,gBAAgB,EAAE,KAAK,aAAa;;;;oBAGxF,MAAM,cAAc,SAAS,GAAG,IAAI,gBAAgB,gBAAgB,EAAE,KAAK,aAAa,SAE3F,MAAM;4BASK,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,KAAK,MAAM;4BAC/D,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,KAAK,MAAM;4BAC/D,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM;+BAKjD,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,QAAQ,MAAM,MAAM,MAAM;+BAsC9E,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM;+BACpD,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM;2BACxD,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,aAAa,MAAM;0BAYxE,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM;+BAC/C,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM;6BACtD,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM;gCACjD,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,UAAU,MAAM;8BACtE,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,UAAU,MAAM;8BACpE,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,aAAa,MAAM;6BACxE,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,aAAa,MAAM;6BAmBvE,MAAM,eAAe,SAAS,GAAG,IAAI,SAAS,MAAM,eAAe,MAAM,gBAAgB,MAAM;6BAI/F,MAAM,eAAe,SAAS,GAAG,IAAI,YAAY,MAAM,WAAW,MAAM,SAAS,MAAM;4BAIxF,MAAM,eAAe,SAAS,GAAG,IAAI,YAAY,MAAM,WAAW,MAAM,SAAS,MAAM;2BAiBxF,MAAM,cAAc,SAAS,GAAG,IAAI,YAAY,MAAM,WAAW,MAAM,SAAS,MAAM,eAAe,MAAM;gCAwDtG,MAAM,eAAe,SAAS,GAAG,IAAI,SAGpD,MAAM;iCAIU,MAAM,eAAe,SAAS,GAAG,IAAI,SAErD,MAAM;8BAWO,MAAM,cAAc,SAAS,GAAG,IAAI,gBAAgB,gBAAgB,EAAE,QAAQ,aAAa,SAExG,MAAM;8BAcO,MAAM,cAAc,SAAS,GAAG,IAAI,gBAAgB,gBAAgB,EAAE,QAAQ,aAAa,SAExG,GAAG;CAEW,CAAC"}