@elaraai/east 0.0.1-beta.0
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/LICENSE.md +682 -0
- package/README.md +276 -0
- package/dist/src/analyze.d.ts +95 -0
- package/dist/src/analyze.d.ts.map +1 -0
- package/dist/src/analyze.js +1110 -0
- package/dist/src/analyze.js.map +1 -0
- package/dist/src/ast.d.ts +263 -0
- package/dist/src/ast.d.ts.map +1 -0
- package/dist/src/ast.js +151 -0
- package/dist/src/ast.js.map +1 -0
- package/dist/src/ast_to_ir.d.ts +24 -0
- package/dist/src/ast_to_ir.d.ts.map +1 -0
- package/dist/src/ast_to_ir.js +834 -0
- package/dist/src/ast_to_ir.js.map +1 -0
- package/dist/src/builtins.d.ts +18 -0
- package/dist/src/builtins.d.ts.map +1 -0
- package/dist/src/builtins.js +1105 -0
- package/dist/src/builtins.js.map +1 -0
- package/dist/src/comparison.d.ts +28 -0
- package/dist/src/comparison.d.ts.map +1 -0
- package/dist/src/comparison.js +1017 -0
- package/dist/src/comparison.js.map +1 -0
- package/dist/src/compile.d.ts +22 -0
- package/dist/src/compile.d.ts.map +1 -0
- package/dist/src/compile.js +3260 -0
- package/dist/src/compile.js.map +1 -0
- package/dist/src/containers/ref.d.ts +106 -0
- package/dist/src/containers/ref.d.ts.map +1 -0
- package/dist/src/containers/ref.js +100 -0
- package/dist/src/containers/ref.js.map +1 -0
- package/dist/src/containers/sortedmap.d.ts +165 -0
- package/dist/src/containers/sortedmap.d.ts.map +1 -0
- package/dist/src/containers/sortedmap.js +237 -0
- package/dist/src/containers/sortedmap.js.map +1 -0
- package/dist/src/containers/sortedset.d.ts +185 -0
- package/dist/src/containers/sortedset.d.ts.map +1 -0
- package/dist/src/containers/sortedset.js +312 -0
- package/dist/src/containers/sortedset.js.map +1 -0
- package/dist/src/containers/variant.d.ts +131 -0
- package/dist/src/containers/variant.d.ts.map +1 -0
- package/dist/src/containers/variant.js +68 -0
- package/dist/src/containers/variant.js.map +1 -0
- package/dist/src/datetime_format/parse.d.ts +50 -0
- package/dist/src/datetime_format/parse.d.ts.map +1 -0
- package/dist/src/datetime_format/parse.js +908 -0
- package/dist/src/datetime_format/parse.js.map +1 -0
- package/dist/src/datetime_format/print.d.ts +35 -0
- package/dist/src/datetime_format/print.d.ts.map +1 -0
- package/dist/src/datetime_format/print.js +157 -0
- package/dist/src/datetime_format/print.js.map +1 -0
- package/dist/src/datetime_format/tokenize.d.ts +76 -0
- package/dist/src/datetime_format/tokenize.d.ts.map +1 -0
- package/dist/src/datetime_format/tokenize.js +271 -0
- package/dist/src/datetime_format/tokenize.js.map +1 -0
- package/dist/src/datetime_format/types.d.ts +99 -0
- package/dist/src/datetime_format/types.d.ts.map +1 -0
- package/dist/src/datetime_format/types.js +103 -0
- package/dist/src/datetime_format/types.js.map +1 -0
- package/dist/src/datetime_format/validate.d.ts +51 -0
- package/dist/src/datetime_format/validate.d.ts.map +1 -0
- package/dist/src/datetime_format/validate.js +208 -0
- package/dist/src/datetime_format/validate.js.map +1 -0
- package/dist/src/default.d.ts +21 -0
- package/dist/src/default.d.ts.map +1 -0
- package/dist/src/default.js +82 -0
- package/dist/src/default.js.map +1 -0
- package/dist/src/eastir.d.ts +33 -0
- package/dist/src/eastir.d.ts.map +1 -0
- package/dist/src/eastir.js +92 -0
- package/dist/src/eastir.js.map +1 -0
- package/dist/src/error.d.ts +13 -0
- package/dist/src/error.d.ts.map +1 -0
- package/dist/src/error.js +8 -0
- package/dist/src/error.js.map +1 -0
- package/dist/src/expr/array.d.ts +1711 -0
- package/dist/src/expr/array.d.ts.map +1 -0
- package/dist/src/expr/array.js +1805 -0
- package/dist/src/expr/array.js.map +1 -0
- package/dist/src/expr/ast.d.ts +17 -0
- package/dist/src/expr/ast.d.ts.map +1 -0
- package/dist/src/expr/ast.js +302 -0
- package/dist/src/expr/ast.js.map +1 -0
- package/dist/src/expr/blob.d.ts +141 -0
- package/dist/src/expr/blob.d.ts.map +1 -0
- package/dist/src/expr/blob.js +198 -0
- package/dist/src/expr/blob.js.map +1 -0
- package/dist/src/expr/block.d.ts +201 -0
- package/dist/src/expr/block.d.ts.map +1 -0
- package/dist/src/expr/block.js +1505 -0
- package/dist/src/expr/block.js.map +1 -0
- package/dist/src/expr/boolean.d.ts +207 -0
- package/dist/src/expr/boolean.d.ts.map +1 -0
- package/dist/src/expr/boolean.js +261 -0
- package/dist/src/expr/boolean.js.map +1 -0
- package/dist/src/expr/datetime.d.ts +544 -0
- package/dist/src/expr/datetime.d.ts.map +1 -0
- package/dist/src/expr/datetime.js +980 -0
- package/dist/src/expr/datetime.js.map +1 -0
- package/dist/src/expr/dict.d.ts +1242 -0
- package/dist/src/expr/dict.d.ts.map +1 -0
- package/dist/src/expr/dict.js +1492 -0
- package/dist/src/expr/dict.js.map +1 -0
- package/dist/src/expr/expr.d.ts +95 -0
- package/dist/src/expr/expr.d.ts.map +1 -0
- package/dist/src/expr/expr.js +171 -0
- package/dist/src/expr/expr.js.map +1 -0
- package/dist/src/expr/float.d.ts +357 -0
- package/dist/src/expr/float.d.ts.map +1 -0
- package/dist/src/expr/float.js +637 -0
- package/dist/src/expr/float.js.map +1 -0
- package/dist/src/expr/function.d.ts +46 -0
- package/dist/src/expr/function.d.ts.map +1 -0
- package/dist/src/expr/function.js +58 -0
- package/dist/src/expr/function.js.map +1 -0
- package/dist/src/expr/index.d.ts +450 -0
- package/dist/src/expr/index.d.ts.map +1 -0
- package/dist/src/expr/index.js +423 -0
- package/dist/src/expr/index.js.map +1 -0
- package/dist/src/expr/integer.d.ts +256 -0
- package/dist/src/expr/integer.d.ts.map +1 -0
- package/dist/src/expr/integer.js +311 -0
- package/dist/src/expr/integer.js.map +1 -0
- package/dist/src/expr/libs/array.d.ts +106 -0
- package/dist/src/expr/libs/array.d.ts.map +1 -0
- package/dist/src/expr/libs/array.js +140 -0
- package/dist/src/expr/libs/array.js.map +1 -0
- package/dist/src/expr/libs/blob.d.ts +42 -0
- package/dist/src/expr/libs/blob.d.ts.map +1 -0
- package/dist/src/expr/libs/blob.js +70 -0
- package/dist/src/expr/libs/blob.js.map +1 -0
- package/dist/src/expr/libs/datetime.d.ts +479 -0
- package/dist/src/expr/libs/datetime.d.ts.map +1 -0
- package/dist/src/expr/libs/datetime.js +624 -0
- package/dist/src/expr/libs/datetime.js.map +1 -0
- package/dist/src/expr/libs/dict.d.ts +66 -0
- package/dist/src/expr/libs/dict.d.ts.map +1 -0
- package/dist/src/expr/libs/dict.js +77 -0
- package/dist/src/expr/libs/dict.js.map +1 -0
- package/dist/src/expr/libs/float.d.ts +299 -0
- package/dist/src/expr/libs/float.d.ts.map +1 -0
- package/dist/src/expr/libs/float.js +564 -0
- package/dist/src/expr/libs/float.js.map +1 -0
- package/dist/src/expr/libs/integer.d.ts +228 -0
- package/dist/src/expr/libs/integer.d.ts.map +1 -0
- package/dist/src/expr/libs/integer.js +398 -0
- package/dist/src/expr/libs/integer.js.map +1 -0
- package/dist/src/expr/libs/set.d.ts +59 -0
- package/dist/src/expr/libs/set.d.ts.map +1 -0
- package/dist/src/expr/libs/set.js +69 -0
- package/dist/src/expr/libs/set.js.map +1 -0
- package/dist/src/expr/libs/string.d.ts +71 -0
- package/dist/src/expr/libs/string.d.ts.map +1 -0
- package/dist/src/expr/libs/string.js +75 -0
- package/dist/src/expr/libs/string.js.map +1 -0
- package/dist/src/expr/never.d.ts +15 -0
- package/dist/src/expr/never.d.ts.map +1 -0
- package/dist/src/expr/never.js +12 -0
- package/dist/src/expr/never.js.map +1 -0
- package/dist/src/expr/null.d.ts +15 -0
- package/dist/src/expr/null.d.ts.map +1 -0
- package/dist/src/expr/null.js +12 -0
- package/dist/src/expr/null.js.map +1 -0
- package/dist/src/expr/ref.d.ts +103 -0
- package/dist/src/expr/ref.d.ts.map +1 -0
- package/dist/src/expr/ref.js +131 -0
- package/dist/src/expr/ref.js.map +1 -0
- package/dist/src/expr/regex_validation.d.ts +25 -0
- package/dist/src/expr/regex_validation.d.ts.map +1 -0
- package/dist/src/expr/regex_validation.js +130 -0
- package/dist/src/expr/regex_validation.js.map +1 -0
- package/dist/src/expr/set.d.ts +1071 -0
- package/dist/src/expr/set.d.ts.map +1 -0
- package/dist/src/expr/set.js +1137 -0
- package/dist/src/expr/set.js.map +1 -0
- package/dist/src/expr/string.d.ts +414 -0
- package/dist/src/expr/string.d.ts.map +1 -0
- package/dist/src/expr/string.js +683 -0
- package/dist/src/expr/string.js.map +1 -0
- package/dist/src/expr/struct.d.ts +48 -0
- package/dist/src/expr/struct.d.ts.map +1 -0
- package/dist/src/expr/struct.js +65 -0
- package/dist/src/expr/struct.js.map +1 -0
- package/dist/src/expr/types.d.ts +68 -0
- package/dist/src/expr/types.d.ts.map +1 -0
- package/dist/src/expr/types.js +6 -0
- package/dist/src/expr/types.js.map +1 -0
- package/dist/src/expr/variant.d.ts +137 -0
- package/dist/src/expr/variant.d.ts.map +1 -0
- package/dist/src/expr/variant.js +105 -0
- package/dist/src/expr/variant.js.map +1 -0
- package/dist/src/fuzz.d.ts +80 -0
- package/dist/src/fuzz.d.ts.map +1 -0
- package/dist/src/fuzz.js +300 -0
- package/dist/src/fuzz.js.map +1 -0
- package/dist/src/index.d.ts +21 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +21 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/internal.d.ts +36 -0
- package/dist/src/internal.d.ts.map +1 -0
- package/dist/src/internal.js +11 -0
- package/dist/src/internal.js.map +1 -0
- package/dist/src/ir.d.ts +1571 -0
- package/dist/src/ir.d.ts.map +1 -0
- package/dist/src/ir.js +56 -0
- package/dist/src/ir.js.map +1 -0
- package/dist/src/location.d.ts +48 -0
- package/dist/src/location.d.ts.map +1 -0
- package/dist/src/location.js +62 -0
- package/dist/src/location.js.map +1 -0
- package/dist/src/platform.d.ts +21 -0
- package/dist/src/platform.d.ts.map +1 -0
- package/dist/src/platform.js +8 -0
- package/dist/src/platform.js.map +1 -0
- package/dist/src/serialization/beast.d.ts +39 -0
- package/dist/src/serialization/beast.d.ts.map +1 -0
- package/dist/src/serialization/beast.js +555 -0
- package/dist/src/serialization/beast.js.map +1 -0
- package/dist/src/serialization/beast2-stream.d.ts +38 -0
- package/dist/src/serialization/beast2-stream.d.ts.map +1 -0
- package/dist/src/serialization/beast2-stream.js +665 -0
- package/dist/src/serialization/beast2-stream.js.map +1 -0
- package/dist/src/serialization/beast2.d.ts +41 -0
- package/dist/src/serialization/beast2.d.ts.map +1 -0
- package/dist/src/serialization/beast2.js +489 -0
- package/dist/src/serialization/beast2.js.map +1 -0
- package/dist/src/serialization/binary-utils.d.ts +151 -0
- package/dist/src/serialization/binary-utils.d.ts.map +1 -0
- package/dist/src/serialization/binary-utils.js +929 -0
- package/dist/src/serialization/binary-utils.js.map +1 -0
- package/dist/src/serialization/east.d.ts +84 -0
- package/dist/src/serialization/east.d.ts.map +1 -0
- package/dist/src/serialization/east.js +1802 -0
- package/dist/src/serialization/east.js.map +1 -0
- package/dist/src/serialization/index.d.ts +11 -0
- package/dist/src/serialization/index.d.ts.map +1 -0
- package/dist/src/serialization/index.js +12 -0
- package/dist/src/serialization/index.js.map +1 -0
- package/dist/src/serialization/json.d.ts +36 -0
- package/dist/src/serialization/json.d.ts.map +1 -0
- package/dist/src/serialization/json.js +849 -0
- package/dist/src/serialization/json.js.map +1 -0
- package/dist/src/type_of_type.d.ts +115 -0
- package/dist/src/type_of_type.d.ts.map +1 -0
- package/dist/src/type_of_type.js +362 -0
- package/dist/src/type_of_type.js.map +1 -0
- package/dist/src/types.d.ts +648 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +1631 -0
- package/dist/src/types.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparison.js","sourceRoot":"","sources":["../../src/comparison.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type IR } from "./ir.js";
|
|
2
|
+
import { isTypeValueEqual, type EastTypeValue } from "./type_of_type.js";
|
|
3
|
+
import type { AnalyzedIR } from "./analyze.js";
|
|
4
|
+
export { isTypeValueEqual };
|
|
5
|
+
export declare const printTypeValue: (type: EastTypeValue) => string;
|
|
6
|
+
/** @internal An exception throw for the purpose of early function return */
|
|
7
|
+
export declare class ReturnException {
|
|
8
|
+
value: any;
|
|
9
|
+
constructor(value: any);
|
|
10
|
+
}
|
|
11
|
+
/** Compile `IR` into a JavaScript function using a closure-compiler technique.
|
|
12
|
+
* This should execute faster than a simple tree-walking interpreter, but slower than hand-written Javascript.
|
|
13
|
+
*
|
|
14
|
+
* A "context" of the current variables in scope is given. For toplevel function IR, provide `{}`.
|
|
15
|
+
* A "platform" is provided with JavaScript functions to perform effects, like logging. If no effects are needed, simply provide `{}`.
|
|
16
|
+
*
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
export declare function compile_internal(ir: AnalyzedIR, ctx: Record<string, EastTypeValue>, platform: Record<string, (...args: any[]) => any>, asyncPlatformFns: Set<string>, fresh_ctx?: boolean, compilingNodes?: Set<IR>): (ctx: Record<string, any>) => any;
|
|
20
|
+
/** @internal */
|
|
21
|
+
export declare function applyTypeParameters(t: EastTypeValue | string, params: Map<string, EastTypeValue>): EastTypeValue;
|
|
22
|
+
//# sourceMappingURL=compile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/compile.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,EAAE,EAA0C,MAAM,SAAS,CAAC;AAY1E,OAAO,EAAqB,gBAAgB,EAAmC,KAAK,aAAa,EAA+I,MAAM,mBAAmB,CAAC;AAC1Q,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,eAAO,MAAM,cAAc,EAAkC,CAAC,IAAI,EAAE,aAAa,KAAK,MAAM,CAAC;AAoB7F,4EAA4E;AAC5E,qBAAa,eAAe;IACP,KAAK,EAAE,GAAG;gBAAV,KAAK,EAAE,GAAG;CAC9B;AAYD;;;;;;;EAOE;AACF,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,SAAS,GAAE,OAAc,EAAE,cAAc,GAAE,GAAG,CAAC,EAAE,CAAa,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAexQ;AA26FD,gBAAgB;AAChB,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,aAAa,CA6BhH"}
|