@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.
- package/README.md +1 -1
- package/dist/src/builtins.d.ts +1 -1
- package/dist/src/builtins.d.ts.map +1 -1
- package/dist/src/builtins.js +19 -0
- package/dist/src/builtins.js.map +1 -1
- package/dist/src/codegen/spellings.d.ts.map +1 -1
- package/dist/src/codegen/spellings.js +3 -0
- package/dist/src/codegen/spellings.js.map +1 -1
- package/dist/src/comparison.d.ts +54 -0
- package/dist/src/comparison.d.ts.map +1 -1
- package/dist/src/comparison.equivalent.spec.d.ts +6 -0
- package/dist/src/comparison.equivalent.spec.d.ts.map +1 -0
- package/dist/src/comparison.equivalent.spec.js +130 -0
- package/dist/src/comparison.equivalent.spec.js.map +1 -0
- package/dist/src/comparison.js +97 -25
- package/dist/src/comparison.js.map +1 -1
- package/dist/src/compile/builtins/array.d.ts +60 -0
- package/dist/src/compile/builtins/array.d.ts.map +1 -0
- package/dist/src/compile/builtins/array.js +691 -0
- package/dist/src/compile/builtins/array.js.map +1 -0
- package/dist/src/compile/builtins/blob.d.ts +18 -0
- package/dist/src/compile/builtins/blob.d.ts.map +1 -0
- package/dist/src/compile/builtins/blob.js +150 -0
- package/dist/src/compile/builtins/blob.js.map +1 -0
- package/dist/src/compile/builtins/compare.d.ts +18 -0
- package/dist/src/compile/builtins/compare.d.ts.map +1 -0
- package/dist/src/compile/builtins/compare.js +52 -0
- package/dist/src/compile/builtins/compare.js.map +1 -0
- package/dist/src/compile/builtins/datetime.d.ts +21 -0
- package/dist/src/compile/builtins/datetime.d.ts.map +1 -0
- package/dist/src/compile/builtins/datetime.js +46 -0
- package/dist/src/compile/builtins/datetime.js.map +1 -0
- package/dist/src/compile/builtins/dict.d.ts +47 -0
- package/dist/src/compile/builtins/dict.d.ts.map +1 -0
- package/dist/src/compile/builtins/dict.js +576 -0
- package/dist/src/compile/builtins/dict.js.map +1 -0
- package/dist/src/compile/builtins/index.d.ts +9 -0
- package/dist/src/compile/builtins/index.d.ts.map +1 -0
- package/dist/src/compile/builtins/index.js +28 -0
- package/dist/src/compile/builtins/index.js.map +1 -0
- package/dist/src/compile/builtins/matrix.d.ts +31 -0
- package/dist/src/compile/builtins/matrix.d.ts.map +1 -0
- package/dist/src/compile/builtins/matrix.js +310 -0
- package/dist/src/compile/builtins/matrix.js.map +1 -0
- package/dist/src/compile/builtins/primitives.d.ts +36 -0
- package/dist/src/compile/builtins/primitives.d.ts.map +1 -0
- package/dist/src/compile/builtins/primitives.js +67 -0
- package/dist/src/compile/builtins/primitives.js.map +1 -0
- package/dist/src/compile/builtins/ref.d.ts +11 -0
- package/dist/src/compile/builtins/ref.d.ts.map +1 -0
- package/dist/src/compile/builtins/ref.js +30 -0
- package/dist/src/compile/builtins/ref.js.map +1 -0
- package/dist/src/compile/builtins/set.d.ts +42 -0
- package/dist/src/compile/builtins/set.d.ts.map +1 -0
- package/dist/src/compile/builtins/set.js +410 -0
- package/dist/src/compile/builtins/set.js.map +1 -0
- package/dist/src/compile/builtins/sparse.d.ts +19 -0
- package/dist/src/compile/builtins/sparse.d.ts.map +1 -0
- package/dist/src/compile/builtins/sparse.js +143 -0
- package/dist/src/compile/builtins/sparse.js.map +1 -0
- package/dist/src/compile/builtins/string.d.ts +34 -0
- package/dist/src/compile/builtins/string.d.ts.map +1 -0
- package/dist/src/compile/builtins/string.js +238 -0
- package/dist/src/compile/builtins/string.js.map +1 -0
- package/dist/src/compile/builtins/tree.d.ts +32 -0
- package/dist/src/compile/builtins/tree.d.ts.map +1 -0
- package/dist/src/compile/builtins/tree.js +108 -0
- package/dist/src/compile/builtins/tree.js.map +1 -0
- package/dist/src/compile/builtins/vector.d.ts +44 -0
- package/dist/src/compile/builtins/vector.d.ts.map +1 -0
- package/dist/src/compile/builtins/vector.js +463 -0
- package/dist/src/compile/builtins/vector.js.map +1 -0
- package/dist/src/compile/constructors.d.ts +13 -0
- package/dist/src/compile/constructors.d.ts.map +1 -0
- package/dist/src/compile/constructors.js +179 -0
- package/dist/src/compile/constructors.js.map +1 -0
- package/dist/src/compile/control.d.ts +13 -0
- package/dist/src/compile/control.d.ts.map +1 -0
- package/dist/src/compile/control.js +513 -0
- package/dist/src/compile/control.js.map +1 -0
- package/dist/src/compile/functions.d.ts +13 -0
- package/dist/src/compile/functions.d.ts.map +1 -0
- package/dist/src/compile/functions.js +492 -0
- package/dist/src/compile/functions.js.map +1 -0
- package/dist/src/compile/ir.d.ts +19 -0
- package/dist/src/compile/ir.d.ts.map +1 -0
- package/dist/src/compile/ir.js +193 -0
- package/dist/src/compile/ir.js.map +1 -0
- package/dist/src/compile/runtime.d.ts +75 -0
- package/dist/src/compile/runtime.d.ts.map +1 -0
- package/dist/src/compile/runtime.js +114 -0
- package/dist/src/compile/runtime.js.map +1 -0
- package/dist/src/compile/type_parameters.d.ts +4 -0
- package/dist/src/compile/type_parameters.d.ts.map +1 -0
- package/dist/src/compile/type_parameters.js +55 -0
- package/dist/src/compile/type_parameters.js.map +1 -0
- package/dist/src/compile/typed_arrays.d.ts +28 -0
- package/dist/src/compile/typed_arrays.d.ts.map +1 -0
- package/dist/src/compile/typed_arrays.js +77 -0
- package/dist/src/compile/typed_arrays.js.map +1 -0
- package/dist/src/compile.d.ts +6 -41
- package/dist/src/compile.d.ts.map +1 -1
- package/dist/src/compile.js +8 -4415
- package/dist/src/compile.js.map +1 -1
- package/dist/src/compile.open_beast.spec.js +5 -4
- package/dist/src/compile.open_beast.spec.js.map +1 -1
- package/dist/src/compile.signature.spec.d.ts +6 -0
- package/dist/src/compile.signature.spec.d.ts.map +1 -0
- package/dist/src/compile.signature.spec.js +53 -0
- package/dist/src/compile.signature.spec.js.map +1 -0
- package/dist/src/containers/sortedmap.d.ts +2 -1
- package/dist/src/containers/sortedmap.d.ts.map +1 -1
- package/dist/src/containers/sortedmap.js +4 -2
- package/dist/src/containers/sortedmap.js.map +1 -1
- package/dist/src/containers/sortedset.d.ts +2 -1
- package/dist/src/containers/sortedset.d.ts.map +1 -1
- package/dist/src/containers/sortedset.js +4 -2
- package/dist/src/containers/sortedset.js.map +1 -1
- package/dist/src/error.d.ts +15 -0
- package/dist/src/error.d.ts.map +1 -1
- package/dist/src/error.js +16 -0
- package/dist/src/error.js.map +1 -1
- package/dist/src/expr/array.d.ts +158 -81
- package/dist/src/expr/array.d.ts.map +1 -1
- package/dist/src/expr/array.js +68 -51
- package/dist/src/expr/array.js.map +1 -1
- package/dist/src/expr/ast.d.ts.map +1 -1
- package/dist/src/expr/ast.js +13 -0
- package/dist/src/expr/ast.js.map +1 -1
- package/dist/src/expr/blob.d.ts +8 -8
- package/dist/src/expr/blob.js +8 -8
- package/dist/src/expr/block.d.ts +18 -5
- package/dist/src/expr/block.d.ts.map +1 -1
- package/dist/src/expr/block.js +19 -0
- package/dist/src/expr/block.js.map +1 -1
- package/dist/src/expr/boolean.d.ts +10 -10
- package/dist/src/expr/boolean.js +10 -10
- package/dist/src/expr/datetime.d.ts +28 -28
- package/dist/src/expr/datetime.js +28 -28
- package/dist/src/expr/dict.d.ts +101 -51
- package/dist/src/expr/dict.d.ts.map +1 -1
- package/dist/src/expr/dict.js +97 -36
- package/dist/src/expr/dict.js.map +1 -1
- package/dist/src/expr/float.d.ts +23 -23
- package/dist/src/expr/float.js +23 -23
- package/dist/src/expr/integer.d.ts +17 -17
- package/dist/src/expr/integer.js +11 -11
- package/dist/src/expr/libs/array.d.ts +6 -6
- package/dist/src/expr/libs/array.js +6 -6
- package/dist/src/expr/libs/blob.d.ts +2 -2
- package/dist/src/expr/libs/blob.js +2 -2
- package/dist/src/expr/libs/datetime.d.ts +25 -25
- package/dist/src/expr/libs/datetime.js +25 -25
- package/dist/src/expr/libs/dict.d.ts +2 -2
- package/dist/src/expr/libs/dict.js +2 -2
- package/dist/src/expr/libs/float.d.ts +15 -15
- package/dist/src/expr/libs/float.js +15 -15
- package/dist/src/expr/libs/integer.d.ts +12 -12
- package/dist/src/expr/libs/integer.js +12 -12
- package/dist/src/expr/libs/set.d.ts +2 -2
- package/dist/src/expr/libs/set.js +2 -2
- package/dist/src/expr/libs/string.d.ts +4 -4
- package/dist/src/expr/libs/string.js +4 -4
- package/dist/src/expr/recursive.d.ts +22 -5
- package/dist/src/expr/recursive.d.ts.map +1 -1
- package/dist/src/expr/recursive.js +22 -5
- package/dist/src/expr/recursive.js.map +1 -1
- package/dist/src/expr/ref.d.ts +5 -5
- package/dist/src/expr/ref.js +5 -5
- package/dist/src/expr/set.d.ts +96 -51
- package/dist/src/expr/set.d.ts.map +1 -1
- package/dist/src/expr/set.js +85 -29
- package/dist/src/expr/set.js.map +1 -1
- package/dist/src/expr/string.d.ts +28 -28
- package/dist/src/expr/string.js +28 -28
- package/dist/src/expr/struct.d.ts.map +1 -1
- package/dist/src/expr/struct.js +2 -2
- package/dist/src/expr/variant.d.ts +12 -12
- package/dist/src/expr/variant.js +7 -7
- package/dist/src/function_symbols.d.ts +28 -0
- package/dist/src/function_symbols.d.ts.map +1 -0
- package/dist/src/function_symbols.js +28 -0
- package/dist/src/function_symbols.js.map +1 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/location.d.ts +32 -0
- package/dist/src/location.d.ts.map +1 -1
- package/dist/src/location.js +38 -0
- package/dist/src/location.js.map +1 -1
- package/dist/src/location.spec.js +89 -1
- package/dist/src/location.spec.js.map +1 -1
- package/dist/src/patch/index.d.ts +1 -1
- package/dist/src/patch/index.d.ts.map +1 -1
- package/dist/src/patch/index.js +1 -1
- package/dist/src/patch/index.js.map +1 -1
- package/dist/src/patch/type_of_patch.d.ts +25 -1
- package/dist/src/patch/type_of_patch.d.ts.map +1 -1
- package/dist/src/patch/type_of_patch.js +33 -10
- package/dist/src/patch/type_of_patch.js.map +1 -1
- package/dist/src/platform.spec.js +19 -1
- package/dist/src/platform.spec.js.map +1 -1
- package/dist/src/runner_protocol.d.ts +357 -0
- package/dist/src/runner_protocol.d.ts.map +1 -0
- package/dist/src/runner_protocol.js +154 -0
- package/dist/src/runner_protocol.js.map +1 -0
- package/dist/src/serialization/beast2/index.d.ts +22 -5
- package/dist/src/serialization/beast2/index.d.ts.map +1 -1
- package/dist/src/serialization/beast2/index.js +13 -2
- package/dist/src/serialization/beast2/index.js.map +1 -1
- package/dist/src/serialization/beast2/index.spec.js +84 -3
- package/dist/src/serialization/beast2/index.spec.js.map +1 -1
- package/dist/src/serialization/beast2/shared.d.ts +32 -3
- package/dist/src/serialization/beast2/shared.d.ts.map +1 -1
- package/dist/src/serialization/beast2/shared.js +135 -10
- package/dist/src/serialization/beast2/shared.js.map +1 -1
- package/dist/src/serialization/beast2/v4/container.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v4/container.js +5 -3
- package/dist/src/serialization/beast2/v4/container.js.map +1 -1
- package/dist/src/serialization/beast2/v5/aliasing.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/aliasing.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/aliasing.spec.js +75 -0
- package/dist/src/serialization/beast2/v5/aliasing.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/boundary.d.ts +176 -0
- package/dist/src/serialization/beast2/v5/boundary.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/boundary.js +297 -0
- package/dist/src/serialization/beast2/v5/boundary.js.map +1 -0
- package/dist/src/serialization/beast2/v5/boundary.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/boundary.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/boundary.spec.js +479 -0
- package/dist/src/serialization/beast2/v5/boundary.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/canonical.d.ts +101 -0
- package/dist/src/serialization/beast2/v5/canonical.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/canonical.js +436 -0
- package/dist/src/serialization/beast2/v5/canonical.js.map +1 -0
- package/dist/src/serialization/beast2/v5/canonical.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/canonical.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/canonical.spec.js +124 -0
- package/dist/src/serialization/beast2/v5/canonical.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/codec.d.ts +6 -5
- package/dist/src/serialization/beast2/v5/codec.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v5/codec.js +18 -3
- package/dist/src/serialization/beast2/v5/codec.js.map +1 -1
- package/dist/src/serialization/beast2/v5/deflate.d.ts +24 -2
- package/dist/src/serialization/beast2/v5/deflate.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v5/deflate.js +47 -12
- package/dist/src/serialization/beast2/v5/deflate.js.map +1 -1
- package/dist/src/serialization/beast2/v5/deflate.spec.js +15 -1
- package/dist/src/serialization/beast2/v5/deflate.spec.js.map +1 -1
- package/dist/src/serialization/beast2/v5/elements.d.ts +66 -0
- package/dist/src/serialization/beast2/v5/elements.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/elements.js +325 -0
- package/dist/src/serialization/beast2/v5/elements.js.map +1 -0
- package/dist/src/serialization/beast2/v5/elements.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/elements.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/elements.spec.js +161 -0
- package/dist/src/serialization/beast2/v5/elements.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/frame-pool.d.ts +62 -21
- package/dist/src/serialization/beast2/v5/frame-pool.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v5/frame-pool.js +138 -27
- package/dist/src/serialization/beast2/v5/frame-pool.js.map +1 -1
- package/dist/src/serialization/beast2/v5/frame-pool.spec.js +198 -71
- package/dist/src/serialization/beast2/v5/frame-pool.spec.js.map +1 -1
- package/dist/src/serialization/beast2/v5/frame-worker.js +25 -15
- package/dist/src/serialization/beast2/v5/frame-worker.js.map +1 -1
- package/dist/src/serialization/beast2/v5/frames.d.ts +22 -12
- package/dist/src/serialization/beast2/v5/frames.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v5/frames.js +52 -27
- package/dist/src/serialization/beast2/v5/frames.js.map +1 -1
- package/dist/src/serialization/beast2/v5/geometry.d.ts +38 -1
- package/dist/src/serialization/beast2/v5/geometry.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v5/geometry.js +73 -1
- package/dist/src/serialization/beast2/v5/geometry.js.map +1 -1
- package/dist/src/serialization/beast2/v5/geometry.spec.js +34 -23
- package/dist/src/serialization/beast2/v5/geometry.spec.js.map +1 -1
- package/dist/src/serialization/beast2/v5/index.spec.js +32 -28
- package/dist/src/serialization/beast2/v5/index.spec.js.map +1 -1
- package/dist/src/serialization/beast2/v5/intake.d.ts +98 -0
- package/dist/src/serialization/beast2/v5/intake.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/intake.js +462 -0
- package/dist/src/serialization/beast2/v5/intake.js.map +1 -0
- package/dist/src/serialization/beast2/v5/intake.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/intake.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/intake.spec.js +202 -0
- package/dist/src/serialization/beast2/v5/intake.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/lazy.d.ts +42 -1
- package/dist/src/serialization/beast2/v5/lazy.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v5/lazy.js +143 -28
- package/dist/src/serialization/beast2/v5/lazy.js.map +1 -1
- package/dist/src/serialization/beast2/v5/lazy.spec.js +102 -24
- package/dist/src/serialization/beast2/v5/lazy.spec.js.map +1 -1
- package/dist/src/serialization/beast2/v5/manifest-writer.d.ts +110 -0
- package/dist/src/serialization/beast2/v5/manifest-writer.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/manifest-writer.js +118 -0
- package/dist/src/serialization/beast2/v5/manifest-writer.js.map +1 -0
- package/dist/src/serialization/beast2/v5/manifest-writer.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/manifest-writer.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/manifest-writer.spec.js +207 -0
- package/dist/src/serialization/beast2/v5/manifest-writer.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/manifest.d.ts +241 -0
- package/dist/src/serialization/beast2/v5/manifest.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/manifest.js +233 -0
- package/dist/src/serialization/beast2/v5/manifest.js.map +1 -0
- package/dist/src/serialization/beast2/v5/merge.d.ts +93 -0
- package/dist/src/serialization/beast2/v5/merge.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/merge.js +202 -0
- package/dist/src/serialization/beast2/v5/merge.js.map +1 -0
- package/dist/src/serialization/beast2/v5/merge.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/merge.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/merge.spec.js +118 -0
- package/dist/src/serialization/beast2/v5/merge.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/recut.d.ts +143 -0
- package/dist/src/serialization/beast2/v5/recut.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/recut.js +365 -0
- package/dist/src/serialization/beast2/v5/recut.js.map +1 -0
- package/dist/src/serialization/beast2/v5/recut.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/recut.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/recut.spec.js +215 -0
- package/dist/src/serialization/beast2/v5/recut.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/runs.d.ts +148 -0
- package/dist/src/serialization/beast2/v5/runs.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/runs.js +260 -0
- package/dist/src/serialization/beast2/v5/runs.js.map +1 -0
- package/dist/src/serialization/beast2/v5/runs.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/runs.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/runs.spec.js +182 -0
- package/dist/src/serialization/beast2/v5/runs.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/sha256.d.ts +19 -0
- package/dist/src/serialization/beast2/v5/sha256.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/sha256.js +103 -0
- package/dist/src/serialization/beast2/v5/sha256.js.map +1 -0
- package/dist/src/serialization/beast2/v5/sha256.spec.d.ts +6 -0
- package/dist/src/serialization/beast2/v5/sha256.spec.d.ts.map +1 -0
- package/dist/src/serialization/beast2/v5/sha256.spec.js +42 -0
- package/dist/src/serialization/beast2/v5/sha256.spec.js.map +1 -0
- package/dist/src/serialization/beast2/v5/stream.d.ts +273 -86
- package/dist/src/serialization/beast2/v5/stream.d.ts.map +1 -1
- package/dist/src/serialization/beast2/v5/stream.js +576 -244
- package/dist/src/serialization/beast2/v5/stream.js.map +1 -1
- package/dist/src/serialization/beast2/v5/sync-reader.spec.js +24 -10
- package/dist/src/serialization/beast2/v5/sync-reader.spec.js.map +1 -1
- package/dist/src/serialization/index.d.ts +1 -1
- package/dist/src/serialization/index.d.ts.map +1 -1
- package/dist/src/serialization/index.js +1 -1
- package/dist/src/serialization/index.js.map +1 -1
- package/dist/src/serialization/json.d.ts +28 -0
- package/dist/src/serialization/json.d.ts.map +1 -1
- package/dist/src/serialization/json.js +141 -30
- package/dist/src/serialization/json.js.map +1 -1
- package/dist/src/serialization/json.spec.js +47 -2
- package/dist/src/serialization/json.spec.js.map +1 -1
- package/dist/src/serialization/json_schema.d.ts +15 -11
- package/dist/src/serialization/json_schema.d.ts.map +1 -1
- package/dist/src/serialization/json_schema.js +21 -36
- package/dist/src/serialization/json_schema.js.map +1 -1
- package/dist/src/serialization/json_schema.spec.js +26 -32
- package/dist/src/serialization/json_schema.spec.js.map +1 -1
- package/dist/src/serialization/json_schema_to_type.d.ts +10 -5
- package/dist/src/serialization/json_schema_to_type.d.ts.map +1 -1
- package/dist/src/serialization/json_schema_to_type.js +13 -6
- package/dist/src/serialization/json_schema_to_type.js.map +1 -1
- package/dist/src/serialization/json_schema_to_type.spec.js +19 -0
- package/dist/src/serialization/json_schema_to_type.spec.js.map +1 -1
- package/dist/src/string_order.d.ts +36 -0
- package/dist/src/string_order.d.ts.map +1 -0
- package/dist/src/string_order.js +64 -0
- package/dist/src/string_order.js.map +1 -0
- package/dist/src/string_order.spec.d.ts +6 -0
- package/dist/src/string_order.spec.d.ts.map +1 -0
- package/dist/src/string_order.spec.js +79 -0
- package/dist/src/string_order.spec.js.map +1 -0
- package/dist/src/type_of_type.d.ts +17 -0
- package/dist/src/type_of_type.d.ts.map +1 -1
- package/dist/src/type_of_type.js +66 -0
- package/dist/src/type_of_type.js.map +1 -1
- package/dist/src/type_of_type.to_etv.spec.js +69 -1
- package/dist/src/type_of_type.to_etv.spec.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { describe, test } from "node:test";
|
|
6
6
|
import assert from "node:assert";
|
|
7
7
|
import { East } from "./expr/index.js";
|
|
8
|
-
import { IntegerType, StringType, NullType, ArrayType, FunctionType, FloatType, StructType } from "./types.js";
|
|
8
|
+
import { IntegerType, StringType, NullType, ArrayType, FunctionType, FloatType, StructType, SetType, DictType } from "./types.js";
|
|
9
9
|
import { printFor } from "./serialization/east.js";
|
|
10
10
|
describe("platform functions", () => {
|
|
11
11
|
describe("non-generic platform", () => {
|
|
@@ -171,6 +171,24 @@ describe("platform functions", () => {
|
|
|
171
171
|
assert.deepStrictEqual(result, ["hello", "hello"]);
|
|
172
172
|
});
|
|
173
173
|
});
|
|
174
|
+
describe("collection literals of async values", () => {
|
|
175
|
+
test("a Set literal holds an element an async platform function gives", async () => {
|
|
176
|
+
const later = East.asyncPlatform("later", [], IntegerType);
|
|
177
|
+
const f = East.asyncFunction([], SetType(IntegerType), ($) => {
|
|
178
|
+
$.return(new Set([later(), East.value(5n)]));
|
|
179
|
+
});
|
|
180
|
+
const result = await East.compileAsync(f, [later.implement(() => Promise.resolve(7n))])();
|
|
181
|
+
assert.deepStrictEqual([...result], [5n, 7n]);
|
|
182
|
+
});
|
|
183
|
+
test("a Dict literal holds a key and a value async platform functions give", async () => {
|
|
184
|
+
const later = East.asyncPlatform("later", [], IntegerType);
|
|
185
|
+
const f = East.asyncFunction([], DictType(IntegerType, IntegerType), ($) => {
|
|
186
|
+
$.return(new Map([[later(), later()], [East.value(5n), East.value(6n)]]));
|
|
187
|
+
});
|
|
188
|
+
const result = await East.compileAsync(f, [later.implement(() => Promise.resolve(7n))])();
|
|
189
|
+
assert.deepStrictEqual([...result], [[5n, 6n], [7n, 7n]]);
|
|
190
|
+
});
|
|
191
|
+
});
|
|
174
192
|
describe("type safety at call site", () => {
|
|
175
193
|
test("infers correct return type for generic functions", () => {
|
|
176
194
|
const wrap = East.genericPlatform("wrap", ["T"], ["T"], ArrayType("T"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.spec.js","sourceRoot":"","sources":["../../src/platform.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"platform.spec.js","sourceRoot":"","sources":["../../src/platform.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,357 @@
|
|
|
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
|
+
/**
|
|
6
|
+
* The runner protocol: the one unit of work every stock runner executes for a
|
|
7
|
+
* machine, and the result it reports.
|
|
8
|
+
*
|
|
9
|
+
* `east-node exec <unit.beast2>`, `east-c exec …` and `east-py exec …` read a
|
|
10
|
+
* {@link UnitType} blob, do its work, and write a {@link UnitResultType} blob
|
|
11
|
+
* where the unit says. A unit runs a program, writing what it produces by the
|
|
12
|
+
* kind of output it makes; merges parts of one output kind that earlier units
|
|
13
|
+
* wrote; or takes a delivered collection in, as the Writer writes it.
|
|
14
|
+
* Everything a unit needs is named by path, and a relative path is relative to
|
|
15
|
+
* the unit file, so a unit file and the files it names are a complete,
|
|
16
|
+
* replayable snapshot of the work. An intake's delivery is the one exception:
|
|
17
|
+
* it may be named by an absolute path, where it lies, since a runner only reads
|
|
18
|
+
* it and a delivery of many gigabytes is not staged beside the unit.
|
|
19
|
+
*
|
|
20
|
+
* The types live here, beside the collection layer, because every runner and
|
|
21
|
+
* the platform that schedules them read them; east-c declares the same types
|
|
22
|
+
* in C, and the conformance corpus pins that all three runners agree.
|
|
23
|
+
*/
|
|
24
|
+
import { ArrayType, FloatType, IntegerType, NullType, OptionType, StringType, StructType, VariantType, type ValueTypeOf } from "./types.js";
|
|
25
|
+
/**
|
|
26
|
+
* Where a unit's output goes, by the kind of output it is.
|
|
27
|
+
*
|
|
28
|
+
* @remarks
|
|
29
|
+
* A `value` is what a program returns. Every other kind is emitted: the
|
|
30
|
+
* program's trailing parameter is `emit`, whose signature the kind fixes — `(T)
|
|
31
|
+
* -> Null`, or `(K, V) -> Null` for a dict — and the parts it emits combine the
|
|
32
|
+
* way the kind says, whichever unit emitted them.
|
|
33
|
+
*/
|
|
34
|
+
export declare const UnitOutputType: VariantType<{
|
|
35
|
+
/** The program's result, written to this file: a collection as a manifest
|
|
36
|
+
* directory there, anything else as one blob. */
|
|
37
|
+
readonly value: StringType;
|
|
38
|
+
/** Elements emitted in order, written through the Writer as the manifest
|
|
39
|
+
* directory `<dir>/0.beast2`. */
|
|
40
|
+
readonly array: StringType;
|
|
41
|
+
/** Elements emitted in any order, written through the RunSorter as sorted
|
|
42
|
+
* runs, each the manifest directory `<dir>/<n>.beast2`, numbered from 0 in
|
|
43
|
+
* the order the runs close. Equal elements collapse. */
|
|
44
|
+
readonly set: StringType;
|
|
45
|
+
/** Entries emitted in any order, written as runs like a set's. Equal keys
|
|
46
|
+
* fold with `merge`, an IR file of a `(K, V, V) -> V` function, in the order
|
|
47
|
+
* they were emitted; without it a repeated key is refused. */
|
|
48
|
+
readonly dict: StructType<{
|
|
49
|
+
readonly dir: StringType;
|
|
50
|
+
readonly merge: OptionType<StringType>;
|
|
51
|
+
}>;
|
|
52
|
+
/** Emitted values folded with `combine`, an IR file of a `(T, T) -> T`
|
|
53
|
+
* function, starting at `zero`, a file holding a value; the result is
|
|
54
|
+
* written to `path` as a `value` is. */
|
|
55
|
+
readonly fold: StructType<{
|
|
56
|
+
readonly path: StringType;
|
|
57
|
+
readonly zero: StringType;
|
|
58
|
+
readonly combine: StringType;
|
|
59
|
+
}>;
|
|
60
|
+
}>;
|
|
61
|
+
export type UnitOutputType = typeof UnitOutputType;
|
|
62
|
+
export type UnitOutput = ValueTypeOf<typeof UnitOutputType>;
|
|
63
|
+
/** What a unit does. */
|
|
64
|
+
export declare const UnitWorkType: VariantType<{
|
|
65
|
+
/** Evaluate `program`, an IR file, on `inputs`, one file per parameter —
|
|
66
|
+
* a blob or a manifest directory — and write `output`. */
|
|
67
|
+
readonly run: StructType<{
|
|
68
|
+
readonly program: StringType;
|
|
69
|
+
readonly inputs: ArrayType<StringType>;
|
|
70
|
+
readonly output: VariantType<{
|
|
71
|
+
/** The program's result, written to this file: a collection as a manifest
|
|
72
|
+
* directory there, anything else as one blob. */
|
|
73
|
+
readonly value: StringType;
|
|
74
|
+
/** Elements emitted in order, written through the Writer as the manifest
|
|
75
|
+
* directory `<dir>/0.beast2`. */
|
|
76
|
+
readonly array: StringType;
|
|
77
|
+
/** Elements emitted in any order, written through the RunSorter as sorted
|
|
78
|
+
* runs, each the manifest directory `<dir>/<n>.beast2`, numbered from 0 in
|
|
79
|
+
* the order the runs close. Equal elements collapse. */
|
|
80
|
+
readonly set: StringType;
|
|
81
|
+
/** Entries emitted in any order, written as runs like a set's. Equal keys
|
|
82
|
+
* fold with `merge`, an IR file of a `(K, V, V) -> V` function, in the order
|
|
83
|
+
* they were emitted; without it a repeated key is refused. */
|
|
84
|
+
readonly dict: StructType<{
|
|
85
|
+
readonly dir: StringType;
|
|
86
|
+
readonly merge: OptionType<StringType>;
|
|
87
|
+
}>;
|
|
88
|
+
/** Emitted values folded with `combine`, an IR file of a `(T, T) -> T`
|
|
89
|
+
* function, starting at `zero`, a file holding a value; the result is
|
|
90
|
+
* written to `path` as a `value` is. */
|
|
91
|
+
readonly fold: StructType<{
|
|
92
|
+
readonly path: StringType;
|
|
93
|
+
readonly zero: StringType;
|
|
94
|
+
readonly combine: StringType;
|
|
95
|
+
}>;
|
|
96
|
+
}>;
|
|
97
|
+
}>;
|
|
98
|
+
/**
|
|
99
|
+
* Assemble `parts` of one output kind into one: sorted set or dict runs
|
|
100
|
+
* merged into one run, `<dir>/0.beast2`, with a key that several parts hold
|
|
101
|
+
* collapsed or folded in part order; or fold partials folded in order,
|
|
102
|
+
* starting at `zero`. `range` is a file holding `{from: Option<K>, to:
|
|
103
|
+
* Option<K>}` over the parts' key type, and limits the merge to the keys in
|
|
104
|
+
* `[from, to)`. An array's parts never need a unit, and a value has none.
|
|
105
|
+
*/
|
|
106
|
+
readonly merge: StructType<{
|
|
107
|
+
readonly parts: ArrayType<StringType>;
|
|
108
|
+
readonly range: OptionType<StringType>;
|
|
109
|
+
readonly output: VariantType<{
|
|
110
|
+
/** The program's result, written to this file: a collection as a manifest
|
|
111
|
+
* directory there, anything else as one blob. */
|
|
112
|
+
readonly value: StringType;
|
|
113
|
+
/** Elements emitted in order, written through the Writer as the manifest
|
|
114
|
+
* directory `<dir>/0.beast2`. */
|
|
115
|
+
readonly array: StringType;
|
|
116
|
+
/** Elements emitted in any order, written through the RunSorter as sorted
|
|
117
|
+
* runs, each the manifest directory `<dir>/<n>.beast2`, numbered from 0 in
|
|
118
|
+
* the order the runs close. Equal elements collapse. */
|
|
119
|
+
readonly set: StringType;
|
|
120
|
+
/** Entries emitted in any order, written as runs like a set's. Equal keys
|
|
121
|
+
* fold with `merge`, an IR file of a `(K, V, V) -> V` function, in the order
|
|
122
|
+
* they were emitted; without it a repeated key is refused. */
|
|
123
|
+
readonly dict: StructType<{
|
|
124
|
+
readonly dir: StringType;
|
|
125
|
+
readonly merge: OptionType<StringType>;
|
|
126
|
+
}>;
|
|
127
|
+
/** Emitted values folded with `combine`, an IR file of a `(T, T) -> T`
|
|
128
|
+
* function, starting at `zero`, a file holding a value; the result is
|
|
129
|
+
* written to `path` as a `value` is. */
|
|
130
|
+
readonly fold: StructType<{
|
|
131
|
+
readonly path: StringType;
|
|
132
|
+
readonly zero: StringType;
|
|
133
|
+
readonly combine: StringType;
|
|
134
|
+
}>;
|
|
135
|
+
}>;
|
|
136
|
+
}>;
|
|
137
|
+
/**
|
|
138
|
+
* Take in `input`, a delivered beast2 file of an Array, Set or Dict — named
|
|
139
|
+
* where it lies, by an absolute path or one relative to the unit — as the
|
|
140
|
+
* Writer writes it: the manifest directory `output`. `type` is a file holding
|
|
141
|
+
* the declared type, an `EastTypeValue` blob, which the delivery's header
|
|
142
|
+
* must name. `segments` limits the unit to the delivery's segments `[from,
|
|
143
|
+
* to)`, by its index, for a piece of a large one. Rows are read a segment at
|
|
144
|
+
* a time, and each segment is either the Writer's bytes, carried as they
|
|
145
|
+
* stand, or read and written again.
|
|
146
|
+
*/
|
|
147
|
+
readonly intake: StructType<{
|
|
148
|
+
readonly input: StringType;
|
|
149
|
+
readonly type: StringType;
|
|
150
|
+
readonly segments: OptionType<StructType<{
|
|
151
|
+
readonly from: IntegerType;
|
|
152
|
+
readonly to: IntegerType;
|
|
153
|
+
}>>;
|
|
154
|
+
readonly output: StringType;
|
|
155
|
+
}>;
|
|
156
|
+
}>;
|
|
157
|
+
export type UnitWorkType = typeof UnitWorkType;
|
|
158
|
+
export type UnitWork = ValueTypeOf<typeof UnitWorkType>;
|
|
159
|
+
/**
|
|
160
|
+
* A unit of work for a runner: what `exec` reads.
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```ts
|
|
164
|
+
* const unit: Unit = {
|
|
165
|
+
* work: variant("run", {
|
|
166
|
+
* program: "program.beast2",
|
|
167
|
+
* inputs: ["sales.beast2"],
|
|
168
|
+
* output: variant("dict", { dir: "out", merge: some("add.beast2") }),
|
|
169
|
+
* }),
|
|
170
|
+
* platforms: [],
|
|
171
|
+
* threads: 1n,
|
|
172
|
+
* result: "result.beast2",
|
|
173
|
+
* };
|
|
174
|
+
* writeFileSync("unit.beast2", encodeBeast2For(UnitType)(unit));
|
|
175
|
+
* // east-node exec unit.beast2
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
178
|
+
export declare const UnitType: StructType<{
|
|
179
|
+
/** The work. */
|
|
180
|
+
readonly work: VariantType<{
|
|
181
|
+
/** Evaluate `program`, an IR file, on `inputs`, one file per parameter —
|
|
182
|
+
* a blob or a manifest directory — and write `output`. */
|
|
183
|
+
readonly run: StructType<{
|
|
184
|
+
readonly program: StringType;
|
|
185
|
+
readonly inputs: ArrayType<StringType>;
|
|
186
|
+
readonly output: VariantType<{
|
|
187
|
+
/** The program's result, written to this file: a collection as a manifest
|
|
188
|
+
* directory there, anything else as one blob. */
|
|
189
|
+
readonly value: StringType;
|
|
190
|
+
/** Elements emitted in order, written through the Writer as the manifest
|
|
191
|
+
* directory `<dir>/0.beast2`. */
|
|
192
|
+
readonly array: StringType;
|
|
193
|
+
/** Elements emitted in any order, written through the RunSorter as sorted
|
|
194
|
+
* runs, each the manifest directory `<dir>/<n>.beast2`, numbered from 0 in
|
|
195
|
+
* the order the runs close. Equal elements collapse. */
|
|
196
|
+
readonly set: StringType;
|
|
197
|
+
/** Entries emitted in any order, written as runs like a set's. Equal keys
|
|
198
|
+
* fold with `merge`, an IR file of a `(K, V, V) -> V` function, in the order
|
|
199
|
+
* they were emitted; without it a repeated key is refused. */
|
|
200
|
+
readonly dict: StructType<{
|
|
201
|
+
readonly dir: StringType;
|
|
202
|
+
readonly merge: OptionType<StringType>;
|
|
203
|
+
}>;
|
|
204
|
+
/** Emitted values folded with `combine`, an IR file of a `(T, T) -> T`
|
|
205
|
+
* function, starting at `zero`, a file holding a value; the result is
|
|
206
|
+
* written to `path` as a `value` is. */
|
|
207
|
+
readonly fold: StructType<{
|
|
208
|
+
readonly path: StringType;
|
|
209
|
+
readonly zero: StringType;
|
|
210
|
+
readonly combine: StringType;
|
|
211
|
+
}>;
|
|
212
|
+
}>;
|
|
213
|
+
}>;
|
|
214
|
+
/**
|
|
215
|
+
* Assemble `parts` of one output kind into one: sorted set or dict runs
|
|
216
|
+
* merged into one run, `<dir>/0.beast2`, with a key that several parts hold
|
|
217
|
+
* collapsed or folded in part order; or fold partials folded in order,
|
|
218
|
+
* starting at `zero`. `range` is a file holding `{from: Option<K>, to:
|
|
219
|
+
* Option<K>}` over the parts' key type, and limits the merge to the keys in
|
|
220
|
+
* `[from, to)`. An array's parts never need a unit, and a value has none.
|
|
221
|
+
*/
|
|
222
|
+
readonly merge: StructType<{
|
|
223
|
+
readonly parts: ArrayType<StringType>;
|
|
224
|
+
readonly range: OptionType<StringType>;
|
|
225
|
+
readonly output: VariantType<{
|
|
226
|
+
/** The program's result, written to this file: a collection as a manifest
|
|
227
|
+
* directory there, anything else as one blob. */
|
|
228
|
+
readonly value: StringType;
|
|
229
|
+
/** Elements emitted in order, written through the Writer as the manifest
|
|
230
|
+
* directory `<dir>/0.beast2`. */
|
|
231
|
+
readonly array: StringType;
|
|
232
|
+
/** Elements emitted in any order, written through the RunSorter as sorted
|
|
233
|
+
* runs, each the manifest directory `<dir>/<n>.beast2`, numbered from 0 in
|
|
234
|
+
* the order the runs close. Equal elements collapse. */
|
|
235
|
+
readonly set: StringType;
|
|
236
|
+
/** Entries emitted in any order, written as runs like a set's. Equal keys
|
|
237
|
+
* fold with `merge`, an IR file of a `(K, V, V) -> V` function, in the order
|
|
238
|
+
* they were emitted; without it a repeated key is refused. */
|
|
239
|
+
readonly dict: StructType<{
|
|
240
|
+
readonly dir: StringType;
|
|
241
|
+
readonly merge: OptionType<StringType>;
|
|
242
|
+
}>;
|
|
243
|
+
/** Emitted values folded with `combine`, an IR file of a `(T, T) -> T`
|
|
244
|
+
* function, starting at `zero`, a file holding a value; the result is
|
|
245
|
+
* written to `path` as a `value` is. */
|
|
246
|
+
readonly fold: StructType<{
|
|
247
|
+
readonly path: StringType;
|
|
248
|
+
readonly zero: StringType;
|
|
249
|
+
readonly combine: StringType;
|
|
250
|
+
}>;
|
|
251
|
+
}>;
|
|
252
|
+
}>;
|
|
253
|
+
/**
|
|
254
|
+
* Take in `input`, a delivered beast2 file of an Array, Set or Dict — named
|
|
255
|
+
* where it lies, by an absolute path or one relative to the unit — as the
|
|
256
|
+
* Writer writes it: the manifest directory `output`. `type` is a file holding
|
|
257
|
+
* the declared type, an `EastTypeValue` blob, which the delivery's header
|
|
258
|
+
* must name. `segments` limits the unit to the delivery's segments `[from,
|
|
259
|
+
* to)`, by its index, for a piece of a large one. Rows are read a segment at
|
|
260
|
+
* a time, and each segment is either the Writer's bytes, carried as they
|
|
261
|
+
* stand, or read and written again.
|
|
262
|
+
*/
|
|
263
|
+
readonly intake: StructType<{
|
|
264
|
+
readonly input: StringType;
|
|
265
|
+
readonly type: StringType;
|
|
266
|
+
readonly segments: OptionType<StructType<{
|
|
267
|
+
readonly from: IntegerType;
|
|
268
|
+
readonly to: IntegerType;
|
|
269
|
+
}>>;
|
|
270
|
+
readonly output: StringType;
|
|
271
|
+
}>;
|
|
272
|
+
}>;
|
|
273
|
+
/** The platform packages the program's platform calls need, named as the
|
|
274
|
+
* runner that executes the unit names them. */
|
|
275
|
+
readonly platforms: ArrayType<StringType>;
|
|
276
|
+
/** The threads the runner may use, its own pools included: one frames every
|
|
277
|
+
* output inline. */
|
|
278
|
+
readonly threads: IntegerType;
|
|
279
|
+
/** Where the runner writes its {@link UnitResultType}. */
|
|
280
|
+
readonly result: StringType;
|
|
281
|
+
}>;
|
|
282
|
+
export type UnitType = typeof UnitType;
|
|
283
|
+
export type Unit = ValueTypeOf<typeof UnitType>;
|
|
284
|
+
/** How a unit ended. */
|
|
285
|
+
export declare const UnitOutcomeType: VariantType<{
|
|
286
|
+
/** Every output was written. */
|
|
287
|
+
readonly ok: NullType;
|
|
288
|
+
/** The unit failed: its message, and its source locations innermost first,
|
|
289
|
+
* as the program's source map gives them — empty when no East code was
|
|
290
|
+
* running. */
|
|
291
|
+
readonly failed: StructType<{
|
|
292
|
+
readonly message: StringType;
|
|
293
|
+
readonly locations: ArrayType<StructType<{
|
|
294
|
+
readonly filename: StringType;
|
|
295
|
+
readonly line: IntegerType;
|
|
296
|
+
readonly column: IntegerType;
|
|
297
|
+
}>>;
|
|
298
|
+
}>;
|
|
299
|
+
}>;
|
|
300
|
+
export type UnitOutcomeType = typeof UnitOutcomeType;
|
|
301
|
+
export type UnitOutcome = ValueTypeOf<typeof UnitOutcomeType>;
|
|
302
|
+
/** Where a unit's time went, in milliseconds. */
|
|
303
|
+
export declare const UnitTimingsType: StructType<{
|
|
304
|
+
/** Loading the program, the platforms and the inputs. */
|
|
305
|
+
readonly load: FloatType;
|
|
306
|
+
/** Compiling the program and the functions its output folds with. */
|
|
307
|
+
readonly compile: FloatType;
|
|
308
|
+
/** Running the program, or merging the parts. */
|
|
309
|
+
readonly execute: FloatType;
|
|
310
|
+
/** Finishing the output. */
|
|
311
|
+
readonly output: FloatType;
|
|
312
|
+
}>;
|
|
313
|
+
export type UnitTimingsType = typeof UnitTimingsType;
|
|
314
|
+
export type UnitTimings = ValueTypeOf<typeof UnitTimingsType>;
|
|
315
|
+
/**
|
|
316
|
+
* What a runner reports for a unit, written where the unit's `result` says.
|
|
317
|
+
*
|
|
318
|
+
* @remarks
|
|
319
|
+
* The runner exits 0 when the outcome is `ok` and 1 when it records a failure;
|
|
320
|
+
* any other exit, or no result, is a crash. Two runners agree on a unit when
|
|
321
|
+
* their outcomes are equal: `peakBytes` and `timings` are measurements.
|
|
322
|
+
*/
|
|
323
|
+
export declare const UnitResultType: StructType<{
|
|
324
|
+
/** How the unit ended. */
|
|
325
|
+
readonly outcome: VariantType<{
|
|
326
|
+
/** Every output was written. */
|
|
327
|
+
readonly ok: NullType;
|
|
328
|
+
/** The unit failed: its message, and its source locations innermost first,
|
|
329
|
+
* as the program's source map gives them — empty when no East code was
|
|
330
|
+
* running. */
|
|
331
|
+
readonly failed: StructType<{
|
|
332
|
+
readonly message: StringType;
|
|
333
|
+
readonly locations: ArrayType<StructType<{
|
|
334
|
+
readonly filename: StringType;
|
|
335
|
+
readonly line: IntegerType;
|
|
336
|
+
readonly column: IntegerType;
|
|
337
|
+
}>>;
|
|
338
|
+
}>;
|
|
339
|
+
}>;
|
|
340
|
+
/** The process's peak resident memory: VmHWM on Linux, `ru_maxrss`
|
|
341
|
+
* elsewhere. */
|
|
342
|
+
readonly peakBytes: IntegerType;
|
|
343
|
+
/** Where the time went. */
|
|
344
|
+
readonly timings: StructType<{
|
|
345
|
+
/** Loading the program, the platforms and the inputs. */
|
|
346
|
+
readonly load: FloatType;
|
|
347
|
+
/** Compiling the program and the functions its output folds with. */
|
|
348
|
+
readonly compile: FloatType;
|
|
349
|
+
/** Running the program, or merging the parts. */
|
|
350
|
+
readonly execute: FloatType;
|
|
351
|
+
/** Finishing the output. */
|
|
352
|
+
readonly output: FloatType;
|
|
353
|
+
}>;
|
|
354
|
+
}>;
|
|
355
|
+
export type UnitResultType = typeof UnitResultType;
|
|
356
|
+
export type UnitResult = ValueTypeOf<typeof UnitResultType>;
|
|
357
|
+
//# sourceMappingURL=runner_protocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner_protocol.d.ts","sourceRoot":"","sources":["../../src/runner_protocol.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAG5I;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;IACzB;sDACkD;;IAElD;sCACkC;;IAElC;;6DAEyD;;IAEzD;;mEAE+D;;;;;IAE/D;;6CAEyC;;;;;;EAEzC,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC;AACnD,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,wBAAwB;AACxB,eAAO,MAAM,YAAY;IACvB;+DAC2D;;;;;YAzB3D;8DACkD;;YAElD;8CACkC;;YAElC;;qEAEyD;;YAEzD;;2EAE+D;;;;;YAE/D;;qDAEyC;;;;;;;;IAWzC;;;;;;;OAOG;;;;;YAlCH;8DACkD;;YAElD;8CACkC;;YAElC;;qEAEyD;;YAEzD;;2EAE+D;;;;;YAE/D;;qDAEyC;;;;;;;;IAoBzC;;;;;;;;;OASG;;;;;;;;;;EAOH,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC;AAC/C,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,QAAQ;IACnB,gBAAgB;;QApDhB;mEAC2D;;;;;gBAzB3D;kEACkD;;gBAElD;kDACkC;;gBAElC;;yEAEyD;;gBAEzD;;+EAE+D;;;;;gBAE/D;;yDAEyC;;;;;;;;QAWzC;;;;;;;WAOG;;;;;gBAlCH;kEACkD;;gBAElD;kDACkC;;gBAElC;;yEAEyD;;gBAEzD;;+EAE+D;;;;;gBAE/D;;yDAEyC;;;;;;;;QAoBzC;;;;;;;;;WASG;;;;;;;;;;;IAiCH;oDACgD;;IAEhD;yBACqB;;IAErB,0DAA0D;;EAE1D,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC;AACvC,MAAM,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD,wBAAwB;AACxB,eAAO,MAAM,eAAe;IAC1B,gCAAgC;;IAEhC;;mBAEe;;;;;;;;;EAEf,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC;AACrD,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,iDAAiD;AACjD,eAAO,MAAM,eAAe;IAC1B,yDAAyD;;IAEzD,qEAAqE;;IAErE,iDAAiD;;IAEjD,4BAA4B;;EAE5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC;AACrD,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc;IACzB,0BAA0B;;QAjC1B,gCAAgC;;QAEhC;;uBAEe;;;;;;;;;;IA+Bf;qBACiB;;IAEjB,2BAA2B;;QA1B3B,yDAAyD;;QAEzD,qEAAqE;;QAErE,iDAAiD;;QAEjD,4BAA4B;;;EAsB5B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC;AACnD,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -0,0 +1,154 @@
|
|
|
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
|
+
/**
|
|
6
|
+
* The runner protocol: the one unit of work every stock runner executes for a
|
|
7
|
+
* machine, and the result it reports.
|
|
8
|
+
*
|
|
9
|
+
* `east-node exec <unit.beast2>`, `east-c exec …` and `east-py exec …` read a
|
|
10
|
+
* {@link UnitType} blob, do its work, and write a {@link UnitResultType} blob
|
|
11
|
+
* where the unit says. A unit runs a program, writing what it produces by the
|
|
12
|
+
* kind of output it makes; merges parts of one output kind that earlier units
|
|
13
|
+
* wrote; or takes a delivered collection in, as the Writer writes it.
|
|
14
|
+
* Everything a unit needs is named by path, and a relative path is relative to
|
|
15
|
+
* the unit file, so a unit file and the files it names are a complete,
|
|
16
|
+
* replayable snapshot of the work. An intake's delivery is the one exception:
|
|
17
|
+
* it may be named by an absolute path, where it lies, since a runner only reads
|
|
18
|
+
* it and a delivery of many gigabytes is not staged beside the unit.
|
|
19
|
+
*
|
|
20
|
+
* The types live here, beside the collection layer, because every runner and
|
|
21
|
+
* the platform that schedules them read them; east-c declares the same types
|
|
22
|
+
* in C, and the conformance corpus pins that all three runners agree.
|
|
23
|
+
*/
|
|
24
|
+
import { ArrayType, FloatType, IntegerType, NullType, OptionType, StringType, StructType, VariantType } from "./types.js";
|
|
25
|
+
import { LocationType } from "./ir.js";
|
|
26
|
+
/**
|
|
27
|
+
* Where a unit's output goes, by the kind of output it is.
|
|
28
|
+
*
|
|
29
|
+
* @remarks
|
|
30
|
+
* A `value` is what a program returns. Every other kind is emitted: the
|
|
31
|
+
* program's trailing parameter is `emit`, whose signature the kind fixes — `(T)
|
|
32
|
+
* -> Null`, or `(K, V) -> Null` for a dict — and the parts it emits combine the
|
|
33
|
+
* way the kind says, whichever unit emitted them.
|
|
34
|
+
*/
|
|
35
|
+
export const UnitOutputType = VariantType({
|
|
36
|
+
/** The program's result, written to this file: a collection as a manifest
|
|
37
|
+
* directory there, anything else as one blob. */
|
|
38
|
+
value: StringType,
|
|
39
|
+
/** Elements emitted in order, written through the Writer as the manifest
|
|
40
|
+
* directory `<dir>/0.beast2`. */
|
|
41
|
+
array: StringType,
|
|
42
|
+
/** Elements emitted in any order, written through the RunSorter as sorted
|
|
43
|
+
* runs, each the manifest directory `<dir>/<n>.beast2`, numbered from 0 in
|
|
44
|
+
* the order the runs close. Equal elements collapse. */
|
|
45
|
+
set: StringType,
|
|
46
|
+
/** Entries emitted in any order, written as runs like a set's. Equal keys
|
|
47
|
+
* fold with `merge`, an IR file of a `(K, V, V) -> V` function, in the order
|
|
48
|
+
* they were emitted; without it a repeated key is refused. */
|
|
49
|
+
dict: StructType({ dir: StringType, merge: OptionType(StringType) }),
|
|
50
|
+
/** Emitted values folded with `combine`, an IR file of a `(T, T) -> T`
|
|
51
|
+
* function, starting at `zero`, a file holding a value; the result is
|
|
52
|
+
* written to `path` as a `value` is. */
|
|
53
|
+
fold: StructType({ path: StringType, zero: StringType, combine: StringType }),
|
|
54
|
+
});
|
|
55
|
+
/** What a unit does. */
|
|
56
|
+
export const UnitWorkType = VariantType({
|
|
57
|
+
/** Evaluate `program`, an IR file, on `inputs`, one file per parameter —
|
|
58
|
+
* a blob or a manifest directory — and write `output`. */
|
|
59
|
+
run: StructType({ program: StringType, inputs: ArrayType(StringType), output: UnitOutputType }),
|
|
60
|
+
/**
|
|
61
|
+
* Assemble `parts` of one output kind into one: sorted set or dict runs
|
|
62
|
+
* merged into one run, `<dir>/0.beast2`, with a key that several parts hold
|
|
63
|
+
* collapsed or folded in part order; or fold partials folded in order,
|
|
64
|
+
* starting at `zero`. `range` is a file holding `{from: Option<K>, to:
|
|
65
|
+
* Option<K>}` over the parts' key type, and limits the merge to the keys in
|
|
66
|
+
* `[from, to)`. An array's parts never need a unit, and a value has none.
|
|
67
|
+
*/
|
|
68
|
+
merge: StructType({ parts: ArrayType(StringType), range: OptionType(StringType), output: UnitOutputType }),
|
|
69
|
+
/**
|
|
70
|
+
* Take in `input`, a delivered beast2 file of an Array, Set or Dict — named
|
|
71
|
+
* where it lies, by an absolute path or one relative to the unit — as the
|
|
72
|
+
* Writer writes it: the manifest directory `output`. `type` is a file holding
|
|
73
|
+
* the declared type, an `EastTypeValue` blob, which the delivery's header
|
|
74
|
+
* must name. `segments` limits the unit to the delivery's segments `[from,
|
|
75
|
+
* to)`, by its index, for a piece of a large one. Rows are read a segment at
|
|
76
|
+
* a time, and each segment is either the Writer's bytes, carried as they
|
|
77
|
+
* stand, or read and written again.
|
|
78
|
+
*/
|
|
79
|
+
intake: StructType({
|
|
80
|
+
input: StringType,
|
|
81
|
+
type: StringType,
|
|
82
|
+
segments: OptionType(StructType({ from: IntegerType, to: IntegerType })),
|
|
83
|
+
output: StringType,
|
|
84
|
+
}),
|
|
85
|
+
});
|
|
86
|
+
/**
|
|
87
|
+
* A unit of work for a runner: what `exec` reads.
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```ts
|
|
91
|
+
* const unit: Unit = {
|
|
92
|
+
* work: variant("run", {
|
|
93
|
+
* program: "program.beast2",
|
|
94
|
+
* inputs: ["sales.beast2"],
|
|
95
|
+
* output: variant("dict", { dir: "out", merge: some("add.beast2") }),
|
|
96
|
+
* }),
|
|
97
|
+
* platforms: [],
|
|
98
|
+
* threads: 1n,
|
|
99
|
+
* result: "result.beast2",
|
|
100
|
+
* };
|
|
101
|
+
* writeFileSync("unit.beast2", encodeBeast2For(UnitType)(unit));
|
|
102
|
+
* // east-node exec unit.beast2
|
|
103
|
+
* ```
|
|
104
|
+
*/
|
|
105
|
+
export const UnitType = StructType({
|
|
106
|
+
/** The work. */
|
|
107
|
+
work: UnitWorkType,
|
|
108
|
+
/** The platform packages the program's platform calls need, named as the
|
|
109
|
+
* runner that executes the unit names them. */
|
|
110
|
+
platforms: ArrayType(StringType),
|
|
111
|
+
/** The threads the runner may use, its own pools included: one frames every
|
|
112
|
+
* output inline. */
|
|
113
|
+
threads: IntegerType,
|
|
114
|
+
/** Where the runner writes its {@link UnitResultType}. */
|
|
115
|
+
result: StringType,
|
|
116
|
+
});
|
|
117
|
+
/** How a unit ended. */
|
|
118
|
+
export const UnitOutcomeType = VariantType({
|
|
119
|
+
/** Every output was written. */
|
|
120
|
+
ok: NullType,
|
|
121
|
+
/** The unit failed: its message, and its source locations innermost first,
|
|
122
|
+
* as the program's source map gives them — empty when no East code was
|
|
123
|
+
* running. */
|
|
124
|
+
failed: StructType({ message: StringType, locations: ArrayType(LocationType) }),
|
|
125
|
+
});
|
|
126
|
+
/** Where a unit's time went, in milliseconds. */
|
|
127
|
+
export const UnitTimingsType = StructType({
|
|
128
|
+
/** Loading the program, the platforms and the inputs. */
|
|
129
|
+
load: FloatType,
|
|
130
|
+
/** Compiling the program and the functions its output folds with. */
|
|
131
|
+
compile: FloatType,
|
|
132
|
+
/** Running the program, or merging the parts. */
|
|
133
|
+
execute: FloatType,
|
|
134
|
+
/** Finishing the output. */
|
|
135
|
+
output: FloatType,
|
|
136
|
+
});
|
|
137
|
+
/**
|
|
138
|
+
* What a runner reports for a unit, written where the unit's `result` says.
|
|
139
|
+
*
|
|
140
|
+
* @remarks
|
|
141
|
+
* The runner exits 0 when the outcome is `ok` and 1 when it records a failure;
|
|
142
|
+
* any other exit, or no result, is a crash. Two runners agree on a unit when
|
|
143
|
+
* their outcomes are equal: `peakBytes` and `timings` are measurements.
|
|
144
|
+
*/
|
|
145
|
+
export const UnitResultType = StructType({
|
|
146
|
+
/** How the unit ended. */
|
|
147
|
+
outcome: UnitOutcomeType,
|
|
148
|
+
/** The process's peak resident memory: VmHWM on Linux, `ru_maxrss`
|
|
149
|
+
* elsewhere. */
|
|
150
|
+
peakBytes: IntegerType,
|
|
151
|
+
/** Where the time went. */
|
|
152
|
+
timings: UnitTimingsType,
|
|
153
|
+
});
|
|
154
|
+
//# sourceMappingURL=runner_protocol.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner_protocol.js","sourceRoot":"","sources":["../../src/runner_protocol.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;AAC5I,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;IACxC;sDACkD;IAClD,KAAK,EAAE,UAAU;IACjB;sCACkC;IAClC,KAAK,EAAE,UAAU;IACjB;;6DAEyD;IACzD,GAAG,EAAE,UAAU;IACf;;mEAE+D;IAC/D,IAAI,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;IACpE;;6CAEyC;IACzC,IAAI,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;CAC9E,CAAC,CAAC;AAIH,wBAAwB;AACxB,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC;IACtC;+DAC2D;IAC3D,GAAG,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAC/F;;;;;;;OAOG;IACH,KAAK,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAC1G;;;;;;;;;OASG;IACH,MAAM,EAAE,UAAU,CAAC;QACjB,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACxE,MAAM,EAAE,UAAU;KACnB,CAAC;CACH,CAAC,CAAC;AAIH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;IACjC,gBAAgB;IAChB,IAAI,EAAE,YAAY;IAClB;oDACgD;IAChD,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC;IAChC;yBACqB;IACrB,OAAO,EAAE,WAAW;IACpB,0DAA0D;IAC1D,MAAM,EAAE,UAAU;CACnB,CAAC,CAAC;AAIH,wBAAwB;AACxB,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;IACzC,gCAAgC;IAChC,EAAE,EAAE,QAAQ;IACZ;;mBAEe;IACf,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;CAChF,CAAC,CAAC;AAIH,iDAAiD;AACjD,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACxC,yDAAyD;IACzD,IAAI,EAAE,SAAS;IACf,qEAAqE;IACrE,OAAO,EAAE,SAAS;IAClB,iDAAiD;IACjD,OAAO,EAAE,SAAS;IAClB,4BAA4B;IAC5B,MAAM,EAAE,SAAS;CAClB,CAAC,CAAC;AAIH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACvC,0BAA0B;IAC1B,OAAO,EAAE,eAAe;IACxB;qBACiB;IACjB,SAAS,EAAE,WAAW;IACtB,2BAA2B;IAC3B,OAAO,EAAE,eAAe;CACzB,CAAC,CAAC"}
|