@ball-lang/engine 0.2.1 → 1.3.4

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 CHANGED
@@ -57,8 +57,10 @@ const program = {
57
57
  ],
58
58
  };
59
59
 
60
+ // `run()` is async — `await` it (inside an async function, or at the
61
+ // top level of an ESM module / `--experimental-strip-types` script).
60
62
  const engine = new BallEngine(program);
61
- engine.run();
63
+ await engine.run();
62
64
  console.log(engine.getOutput()); // ["Hello, World!"]
63
65
  ```
64
66
 
@@ -69,7 +71,8 @@ import { readFileSync } from 'node:fs';
69
71
 
70
72
  const json = readFileSync('my_program.ball.json', 'utf-8');
71
73
  const engine = new BallEngine(json);
72
- engine.run();
74
+ await engine.run();
75
+ console.log(engine.getOutput());
73
76
  ```
74
77
 
75
78
  ## API reference
@@ -83,10 +86,19 @@ Creates an engine instance.
83
86
  | `program` | `object \| string` | A Ball program object or its JSON string representation. |
84
87
  | `options.stdout` | `(msg: string) => void` | Callback for `std.print` output. Defaults to collecting into an internal array. |
85
88
  | `options.stderr` | `(msg: string) => void` | Callback for error output. Defaults to no-op. |
89
+ | `options.sandbox` | `boolean` | Run in sandbox mode (blocks file I/O, env access, etc.). Default `false`. |
90
+ | `options.timeoutMs` | `number \| null` | Maximum execution time in milliseconds (`null` = unbounded). Default `null`. |
91
+ | `options.maxMemoryBytes` | `number \| null` | Maximum memory usage in bytes (`null` = unbounded). Default `null`. |
92
+ | `options.maxRecursionDepth` | `number` | Maximum recursion depth. Default `100000`. |
93
+ | `options.maxExpressionDepth` | `number` | Maximum expression nesting depth. Default `1000000`. |
94
+ | `options.maxModules` | `number` | Maximum number of modules allowed in the program. Default `1000000`. |
95
+ | `options.maxProgramSizeBytes` | `number \| null` | Maximum program JSON size in bytes (`null` = skip check). Default `null`. |
86
96
 
87
- ### `engine.run(): string[]`
97
+ See `BallEngineOptions` in `src/index.ts` for the authoritative list.
88
98
 
89
- Executes the program starting from the entry function. Returns the collected stdout output array.
99
+ ### `engine.run(): Promise<string[]>`
100
+
101
+ Executes the program starting from the entry function. The compiled engine is async internally, so `run()` returns a `Promise` — always `await` it. Resolves to the collected stdout output array.
90
102
 
91
103
  ### `engine.getOutput(): string[]`
92
104
 
@@ -94,19 +106,29 @@ Returns the stdout output collected so far (same array returned by `run()`).
94
106
 
95
107
  ## Supported standard library functions
96
108
 
97
- The engine implements the Ball `std` module (~70 functions) covering arithmetic, comparison, logic, bitwise ops, string manipulation, math, control flow (`if`, `for`, `while`, `for_in`, `switch`, `try`), collections, and I/O. See the [Ball repository](https://github.com/ball-lang/ball) for the full specification.
109
+ The engine implements the universal Ball `std` module (arithmetic, comparison, logic, bitwise ops, string manipulation, math, control flow `if`, `for`, `while`, `for_in`, `switch`, `try`, etc.) plus the `std_collections`, `std_io`, and `std_memory` modules. The exact function set is whatever the self-hosted `dart/self_host/engine.ball.json` implements; see the [Ball repository](https://github.com/ball-lang/ball) (`CLAUDE.md` → Standard library modules) for the authoritative list.
98
110
 
99
111
  ## Usage without a build step
100
112
 
101
- If you are using Node.js >= 22.6.0, you can import the TypeScript source directly:
113
+ The published package's `exports` map exposes only the main entry (`@ball-lang/engine` the
114
+ prebuilt `dist/index.js`), so always import from the bare package specifier — subpath imports
115
+ such as `@ball-lang/engine/src/index.ts` are blocked by Node's package encapsulation
116
+ (`ERR_PACKAGE_PATH_NOT_EXPORTED`):
117
+
118
+ ```ts
119
+ import { BallEngine } from '@ball-lang/engine';
120
+ ```
121
+
122
+ If you are using Node.js >= 22.6.0, you can run a `.ts` consumer script directly with
123
+ `--experimental-strip-types`; the import above still resolves to the prebuilt entry:
102
124
 
103
125
  ```bash
104
126
  node --experimental-strip-types your_script.ts
105
127
  ```
106
128
 
107
- ```ts
108
- import { BallEngine } from '@ball-lang/engine/src/index.ts';
109
- ```
129
+ To consume the raw TypeScript source instead, work from a checkout of the
130
+ [Ball repository](https://github.com/ball-lang/ball) and import `ts/engine/src/index.ts` by
131
+ relative path.
110
132
 
111
133
  ## License
112
134
 
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Self-describing ball-file envelope helpers (engine-local copy).
3
+ *
4
+ * A ball file on disk (`.ball.json`) is the proto3-JSON representation of a
5
+ * `google.protobuf.Any` wrapping exactly one top-level message — a `Program`
6
+ * or `Module`. The contained type is carried by the Any type URL, which in
7
+ * proto3 JSON is the `@type` field:
8
+ * `{"@type": "type.googleapis.com/ball.v1.Program", <message fields…>}`.
9
+ *
10
+ * The engine operates on the raw proto3-JSON tree (not a decoded protobuf-es
11
+ * Message), so unwrapping here just validates `@type` and strips it, returning
12
+ * the message body unchanged. This is the canonical
13
+ * `@ball-lang/shared`/`dart/shared/lib/ball_file.dart` behavior; it lives here
14
+ * too because `@ball-lang/engine` has no dependency on `@ball-lang/shared`.
15
+ */
16
+ /**
17
+ * If `json` is a self-describing Any envelope (`@type` present), validate the
18
+ * type URL and return the message body with `@type` stripped. If it is a plain
19
+ * object without `@type` (an already-unwrapped Program/Module passed by a
20
+ * caller), return it unchanged.
21
+ *
22
+ * Throws if `@type` is present but unrecognized.
23
+ */
24
+ export declare function unwrapBallFile(json: any): any;
25
+ //# sourceMappingURL=ball_file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ball_file.d.ts","sourceRoot":"","sources":["../src/ball_file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AASH;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,CAkB7C"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Self-describing ball-file envelope helpers (engine-local copy).
3
+ *
4
+ * A ball file on disk (`.ball.json`) is the proto3-JSON representation of a
5
+ * `google.protobuf.Any` wrapping exactly one top-level message — a `Program`
6
+ * or `Module`. The contained type is carried by the Any type URL, which in
7
+ * proto3 JSON is the `@type` field:
8
+ * `{"@type": "type.googleapis.com/ball.v1.Program", <message fields…>}`.
9
+ *
10
+ * The engine operates on the raw proto3-JSON tree (not a decoded protobuf-es
11
+ * Message), so unwrapping here just validates `@type` and strips it, returning
12
+ * the message body unchanged. This is the canonical
13
+ * `@ball-lang/shared`/`dart/shared/lib/ball_file.dart` behavior; it lives here
14
+ * too because `@ball-lang/engine` has no dependency on `@ball-lang/shared`.
15
+ */
16
+ function isProgramUrl(url) {
17
+ return url.endsWith('/ball.v1.Program');
18
+ }
19
+ function isModuleUrl(url) {
20
+ return url.endsWith('/ball.v1.Module');
21
+ }
22
+ /**
23
+ * If `json` is a self-describing Any envelope (`@type` present), validate the
24
+ * type URL and return the message body with `@type` stripped. If it is a plain
25
+ * object without `@type` (an already-unwrapped Program/Module passed by a
26
+ * caller), return it unchanged.
27
+ *
28
+ * Throws if `@type` is present but unrecognized.
29
+ */
30
+ export function unwrapBallFile(json) {
31
+ if (json === null || typeof json !== 'object' || Array.isArray(json)) {
32
+ return json;
33
+ }
34
+ const type = json['@type'];
35
+ if (type === undefined) {
36
+ // Already unwrapped — keep supporting bare Program/Module objects.
37
+ return json;
38
+ }
39
+ if (typeof type !== 'string' || (!isProgramUrl(type) && !isModuleUrl(type))) {
40
+ throw new Error(`unknown ball file @type: ${JSON.stringify(type)}`);
41
+ }
42
+ const body = {};
43
+ for (const [k, v] of Object.entries(json)) {
44
+ if (k === '@type')
45
+ continue;
46
+ body[k] = v;
47
+ }
48
+ return body;
49
+ }
50
+ //# sourceMappingURL=ball_file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ball_file.js","sourceRoot":"","sources":["../src/ball_file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,SAAS,YAAY,CAAC,GAAW;IAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAC1C,CAAC;AACD,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,IAAS;IACtC,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,mEAAmE;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,CAAC,KAAK,OAAO;YAAE,SAAS;QAC5B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,319 @@
1
+ declare class BallValue {
2
+ }
3
+ export type BallCallable = any;
4
+ export declare class BallEngine {
5
+ readonly program: Program;
6
+ readonly _types: Map<string, google.DescriptorProto>;
7
+ readonly _functions: Map<string, FunctionDefinition>;
8
+ readonly _getters: any;
9
+ readonly _setters: any;
10
+ readonly _getters: Map<string, FunctionDefinition>;
11
+ readonly _setters: Map<string, FunctionDefinition>;
12
+ readonly _globalScope: _Scope;
13
+ stdout: any;
14
+ _currentModule: string;
15
+ _activeGeneratorScope: _Scope;
16
+ readonly _paramCache: Map<string, Array<string>>;
17
+ readonly _callCache: Map<string, any>;
18
+ readonly _typeMethodDispatch: Map<string, any>;
19
+ readonly _instanceMethodCache: Map<string, any>;
20
+ readonly _topLevelRefs: Map<string, any>;
21
+ readonly _staticFieldRefs: Map<string, any>;
22
+ readonly _enumValues: Map<string, Map<string, any>>;
23
+ readonly _constructors: Map<string, any>;
24
+ _callCounts: Map<string, number>;
25
+ readonly maxRecursionDepth: number;
26
+ readonly timeoutMs: number;
27
+ readonly maxMemoryBytes: number;
28
+ readonly maxModules: number;
29
+ readonly maxExpressionDepth: number;
30
+ readonly maxProgramSizeBytes: number;
31
+ readonly sandbox: boolean;
32
+ _memoryUsedBytes: number;
33
+ _expressionDepth: number;
34
+ _executionStartMs: number;
35
+ _recursionDepth: number;
36
+ readonly moduleHandlers: Array<BallModuleHandler>;
37
+ readonly _random: math.Random;
38
+ stderr: any;
39
+ stdinReader: any;
40
+ _envGet: any;
41
+ _args: Array<string>;
42
+ _nextMutexId: number;
43
+ _activeException: any;
44
+ readonly _resolver: ModuleResolver;
45
+ readonly _initialized: Promise<void>;
46
+ constructor(program: any, stdout: any, stderr: any, stdinReader: any, envGet: any, args: any, enableProfiling: any, maxRecursionDepth: any, timeoutMs: any, maxMemoryBytes: any, maxModules: any, maxExpressionDepth: any, maxProgramSizeBytes: any, sandbox: any, moduleHandlers: any, resolver: any);
47
+ _consumeGeneratorFlow(result: any): any;
48
+ profilingReport(): any;
49
+ callFunction(module: any, function_: any, input: any): any;
50
+ _validateProgramLimits(): any;
51
+ _validateStaticExpressionDepth(): any;
52
+ _validateExpressionDepth(root: any): any;
53
+ _checkExpressionDepth(): any;
54
+ _exitExpression(): any;
55
+ _buildLookupTables(): any;
56
+ static _typeMethodKey(typePrefix: any, methodName: any): any;
57
+ _registerFunctionDispatchTables(module: any, func: any): any;
58
+ _resolveInstanceMethodDispatch(typeName: any, methodName: any): any;
59
+ _lookupTypeMethodWithInheritance(typeName: any, methodName: any): any;
60
+ _initTopLevelVariables(): Promise<any>;
61
+ run(): Promise<any>;
62
+ _checkExecutionTimeout(): any;
63
+ _trackStringAllocation(value: any): any;
64
+ _trackByteListAllocation(value: any): any;
65
+ _trackMemoryAllocation(bytes: any): any;
66
+ _asMap(v: any): any;
67
+ _callFunction(moduleName: any, func: any, input: any): Promise<any>;
68
+ _callObjectConstructor(moduleName: any, func: any, input: any): Promise<any>;
69
+ _applyConstructorInitializers(func: any, targetFields: any, resolvedParams: any, onlyIfAbsent: any): any;
70
+ _buildConstructorInstance(moduleName: any, func: any, input: any): Promise<any>;
71
+ _invokeSuperConstructor(childCtor: any, superclass: any, resolvedParams: any): Promise<any>;
72
+ _lookupConstructor(name: any): any;
73
+ _parseSuperArgs(argsStr: any): any;
74
+ _extractParamsMeta(metadata: any): any;
75
+ _extractParams(metadata: any): any;
76
+ _rawTypeDefCache: any;
77
+ _fieldDefaultsCache: any;
78
+ _findRawTypeDef(typeName: any): any;
79
+ _getFieldDefaults(typeName: any): any;
80
+ __buildCtorInstance(moduleName: any, func: any, input: any): Promise<any>;
81
+ __extractParamsMeta(metadata: any): any[];
82
+ _resolveAndCallFunction(module: any, function_: any, input: any): Promise<any>;
83
+ _tryLazyResolve(moduleName: any): Promise<any>;
84
+ _indexModule(module: any): any;
85
+ _asList(v: any): any;
86
+ static _extractMetadataTypeArgs(msg: any): any;
87
+ static _typeRefValueToString(v: any): any;
88
+ _evalExpression(expr: any, scope: any): Promise<any>;
89
+ _unwrapFuture(value: any): any;
90
+ _evalCall(call: any, scope: any): Promise<any>;
91
+ _evalLiteral(lit: any, scope: any): Promise<any>;
92
+ _evalListLiteral(listVal: any, scope: any): Promise<any>;
93
+ _evalCollectionIf(call: any, scope: any, result: any): Promise<any>;
94
+ _evalCollectionFor(call: any, scope: any, result: any): Promise<any>;
95
+ _addCollectionElement(expr: any, scope: any, result: any): Promise<any>;
96
+ _spliceSpread(call: any, scope: any, result: any, nullAware: any): Promise<any>;
97
+ _evalLazyMapCreate(call: any, scope: any): Promise<any>;
98
+ _addMapEntryExpr(entryExpr: any, scope: any, result: any): Promise<any>;
99
+ _putMapEntryValue(val: any, result: any): Promise<any>;
100
+ _addMapCollectionElement(expr: any, scope: any, result: any): Promise<any>;
101
+ _evalMapCollectionIf(call: any, scope: any, result: any): Promise<any>;
102
+ _evalMapCollectionFor(call: any, scope: any, result: any): Promise<any>;
103
+ _spliceMapSpread(call: any, scope: any, result: any, nullAware: any): Promise<any>;
104
+ _evalReference(ref: any, scope: any): Promise<any>;
105
+ _evalFieldAccess(access: any, scope: any): Promise<any>;
106
+ _tryGetterDispatch(object: any, fieldName: any): Promise<any>;
107
+ _isGetter(func: any): any;
108
+ _isSetter(func: any): any;
109
+ _trySetterDispatch(object: any, fieldName: any, value: any): Promise<any>;
110
+ _writeBackingField(object: any, fieldName: any, assignedValue: any): any;
111
+ _syncFieldToSelf(scope: any, fieldName: any, val: any): any;
112
+ _evalMessageCreation(msg: any, scope: any): Promise<any>;
113
+ _findTypeDef(typeName: any): any;
114
+ _initFieldDefaults(typeName: any, fields: any): any;
115
+ _parseInitializer(init: any): any;
116
+ _getMetaString(typeDef: any, key: any): any;
117
+ _collectAllFieldNames(typeName: any): any;
118
+ _buildSuperObject(superclass: any, childFields: any): any;
119
+ _resolveTypeMethods(typeName: any): any;
120
+ _resolveTypeMethodsWithInheritance(typeName: any): any;
121
+ _evalBlock(block: any, scope: any): Promise<any>;
122
+ _evalStatement(stmt: any, scope: any): Promise<any>;
123
+ _evalLambda(func: any, scope: any): any;
124
+ _cfAsMap(v: any): any;
125
+ _lazyFields(call: any): any;
126
+ _evalLazyIf(call: any, scope: any): Promise<any>;
127
+ _evalLazyFor(call: any, scope: any): Promise<any>;
128
+ _evalForInit(initExpr: any, forScope: any, loopVars: any): Promise<any>;
129
+ _evalSimpleInitExpr(rawVal: any, scope: any): any;
130
+ _evalLazyForIn(call: any, scope: any): Promise<any>;
131
+ _evalLazyWhile(call: any, scope: any): Promise<any>;
132
+ _evalLazyDoWhile(call: any, scope: any): Promise<any>;
133
+ _evalLazySwitch(call: any, scope: any): Promise<any>;
134
+ _evalLazySwitchExpr(call: any, scope: any): Promise<any>;
135
+ _caseIsDefault(fields: any): any;
136
+ _scopeWithPatternBindings(parent: any, bindings: any): any;
137
+ _matchesSwitchCasePattern(subjectVal: any, fields: any, bindings: any, scope: any): Promise<any>;
138
+ _stringLiteral(expr: any): any;
139
+ _ballEquals(a: any, b: any): any;
140
+ _matchSwitchPattern(subject: any, pattern: any): any;
141
+ _evalLazyTry(call: any, scope: any): Promise<any>;
142
+ _evalShortCircuitAnd(call: any, scope: any): Promise<any>;
143
+ _evalShortCircuitOr(call: any, scope: any): Promise<any>;
144
+ _evalReturn(call: any, scope: any): Promise<any>;
145
+ _evalBreak(call: any, scope: any): Promise<any>;
146
+ _evalContinue(call: any, scope: any): Promise<any>;
147
+ _cfWritebackInstance(objExpr: any, obj: any, map: any, scope: any): any;
148
+ _cfWritebackIndexed(targetExpr: any, container: any, scope: any): any;
149
+ _evalAssign(call: any, scope: any): Promise<any>;
150
+ _evalNullAwareAssign(target: any, value: any, scope: any): Promise<any>;
151
+ _evalIncDec(call: any, scope: any): Promise<any>;
152
+ _applyCompoundOp(op: any, current: any, val: any): any;
153
+ _numOp(a: any, b: any, op: any): any;
154
+ _intOp(a: any, b: any, op: any): any;
155
+ _evalLabeled(call: any, scope: any): Promise<any>;
156
+ _extractLoopFromBody(expr: any): any;
157
+ _evalLabeledLoop(loopCall: any, label: any, scope: any): Promise<any>;
158
+ _evalLabeledFor(call: any, label: any, scope: any): Promise<any>;
159
+ _evalLabeledForIn(call: any, label: any, scope: any): Promise<any>;
160
+ _evalLabeledWhile(call: any, label: any, scope: any): Promise<any>;
161
+ _evalLabeledDoWhile(call: any, label: any, scope: any): Promise<any>;
162
+ _evalGoto(call: any, scope: any): Promise<any>;
163
+ _evalLabel(call: any, scope: any): Promise<any>;
164
+ _evalLazyCascade(call: any, scope: any): Promise<any>;
165
+ _evalAwaitFor(call: any, scope: any): any;
166
+ _evalYield(call: any, scope: any): Promise<any>;
167
+ _evalYieldEach(call: any, scope: any): Promise<any>;
168
+ _dispatchBuiltinInstanceMethod(self: any, method: any, input: any): Promise<any>;
169
+ _stdAsMap(v: any): any;
170
+ _stdAsList(v: any): any;
171
+ _tryOperatorOverride(function_: any, input: any): Promise<any>;
172
+ _dispatchBuiltinClassMethod(className: any, method: any, args: any): Promise<any>;
173
+ _callBaseFunction(module: any, function_: any, input: any): Promise<any>;
174
+ _buildStdDispatch(): any;
175
+ _trackListCopy(list: any): any;
176
+ _resolveMethod(typeName: any, methodName: any): any;
177
+ _getMixins(typeName: any): any;
178
+ _stdPrint(input: any): Promise<any>;
179
+ _ballToStringAsync(v: any): Promise<any>;
180
+ _stdIf(input: any): any;
181
+ _stdIndex(input: any): any;
182
+ _stdCascade(input: any): any;
183
+ _stdNullAwareCascade(input: any): any;
184
+ _stdListGenerate(input: any): Promise<any>;
185
+ _stdListFilled(input: any): any;
186
+ _stdInvoke(input: any): Promise<any>;
187
+ _stdNullAwareAccess(input: any): any;
188
+ _stdNullAwareCall(input: any): any;
189
+ _stdTypeCheck(input: any): any;
190
+ _typeMatches(value: any, type: any): any;
191
+ _objectTypeMatches(value: any, type: any): any;
192
+ _typeNameMatches(objType: any, checkType: any): any;
193
+ _splitTypeArgs(str: any): any;
194
+ _stdMapCreate(input: any): Promise<any>;
195
+ _stdSetCreate(input: any): any;
196
+ _collectionMisuse(_: any): any;
197
+ _stdRecord(input: any): any;
198
+ _stdSwitchExpr(input: any): Promise<any>;
199
+ _matchPattern(value: any, pattern: any, bindings: any): any;
200
+ _matchStringPattern(value: any, pattern: any, bindings: any): any;
201
+ _matchStructuredPattern(value: any, pattern: any, bindings: any): any;
202
+ _patternKind(pattern: any): any;
203
+ _patternFields(fields: any): any;
204
+ _matchRelationalPattern(value: any, operator: any, operand: any): any;
205
+ _matchesObjectType(value: any, patternType: any): any;
206
+ _ballToStringSimple(v: any): any;
207
+ _matchesTypePattern(value: any, pattern: any): any;
208
+ _stdAssert(input: any): any;
209
+ _stdAdd(input: any): any;
210
+ _repeatString(s: any, count: any): any;
211
+ _stdBinary(input: any, op: any): any;
212
+ _stdBinaryInt(input: any, op: any): any;
213
+ _stdBinaryDouble(input: any, op: any): any;
214
+ _stdBinaryComp(input: any, op: any): any;
215
+ _stdBinaryBool(input: any, op: any): any;
216
+ _stdBinaryAny(input: any, op: any): any;
217
+ _stdUnaryNum(input: any, op: any): any;
218
+ _stdNot(input: any): any;
219
+ _stdConcat(input: any): any;
220
+ _stdLength(input: any): any;
221
+ _stdConvert(input: any, converter: any): any;
222
+ _extractBinaryArgs(input: any): any;
223
+ _extractUnaryArg(input: any): any;
224
+ _extractField(input: any, name: any): any;
225
+ _stringFieldVal(fields: any, name: any): any;
226
+ _toInt(v: any): any;
227
+ _toDouble(v: any): any;
228
+ _toNum(v: any): any;
229
+ _toIterable(v: any): any;
230
+ _toBool(v: any): any;
231
+ _stdStringSubstring(input: any): any;
232
+ _stdStringCharAt(input: any): any;
233
+ _stdStringCharCodeAt(input: any): any;
234
+ _stdStringReplace(input: any, all: any): any;
235
+ _stdRegexReplace(input: any, all: any): any;
236
+ _stdStringRepeat(input: any): any;
237
+ _stdStringPad(input: any, left: any): any;
238
+ _stdMathUnary(input: any, op: any): any;
239
+ _stdMathBinary(input: any, op: any): any;
240
+ _stdMathClamp(input: any): any;
241
+ _jsonEncode(value: any): any;
242
+ _jsonDecode(text: any): any;
243
+ _toJsonSafe(v: any): any;
244
+ _utf8Encode(s: any): any;
245
+ _utf8Decode(bytes: any): any;
246
+ _base64Encode(bytes: any): any;
247
+ _base64Decode(s: any): any;
248
+ _checkSandbox(op: any): any;
249
+ _stdFileRead(input: any): any;
250
+ _stdFileReadBytes(input: any): any;
251
+ _stdFileWrite(input: any): any;
252
+ _stdFileWriteBytes(input: any): any;
253
+ _stdFileAppend(input: any): any;
254
+ _stdFileExists(input: any): any;
255
+ _stdFileDelete(input: any): any;
256
+ _stdDirList(input: any): any;
257
+ _stdDirCreate(input: any): any;
258
+ _stdDirExists(input: any): any;
259
+ }
260
+ export declare class _FlowSignal extends BallValue {
261
+ readonly kind: string;
262
+ readonly label: string;
263
+ readonly value: any;
264
+ constructor(kind: any, label: any, value: any);
265
+ }
266
+ export declare class _Scope {
267
+ readonly _bindings: Map<string, any>;
268
+ readonly _parent: _Scope;
269
+ constructor(_parent: any);
270
+ lookup(name: any): any;
271
+ bind(name: any, value: any): any;
272
+ has(name: any): any;
273
+ set(name: any, value: any): any;
274
+ child(): any;
275
+ }
276
+ export declare class BallRuntimeError {
277
+ readonly message: string;
278
+ constructor(message: any);
279
+ toString(): any;
280
+ }
281
+ export declare class BallGenerator extends BallValue {
282
+ readonly values: Array<any>;
283
+ completed: boolean;
284
+ yield_(value: any): any;
285
+ yieldAll(items: any): any;
286
+ toString(): any;
287
+ }
288
+ export declare class BallException extends BallValue {
289
+ readonly typeName: string;
290
+ readonly value: any;
291
+ constructor(typeName: any, value: any);
292
+ toString(): any;
293
+ }
294
+ export declare class _ExitSignal extends BallValue {
295
+ readonly code: number;
296
+ constructor(code: any);
297
+ }
298
+ export declare abstract class BallModuleHandler {
299
+ handles(module: any): any;
300
+ call(function_: any, input: any, engine: any): any;
301
+ init(engine: any): any;
302
+ }
303
+ export declare class StdModuleHandler extends BallModuleHandler {
304
+ readonly _dispatch: any;
305
+ readonly _composedDispatch: any;
306
+ readonly _allowlist: Array<string>;
307
+ readonly _tombstones: Array<string>;
308
+ constructor();
309
+ get registeredFunctions(): any;
310
+ static subset(functions: any): any;
311
+ handles(module: any): any;
312
+ init(engine: any): any;
313
+ register(function_: any, handler: any): any;
314
+ registerComposer(function_: any, handler: any): any;
315
+ unregister(function_: any): any;
316
+ call(function_: any, input: any, engine: any): any;
317
+ }
318
+ export {};
319
+ //# sourceMappingURL=compiled_engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiled_engine.d.ts","sourceRoot":"","sources":["../src/compiled_engine.ts"],"names":[],"mappings":"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"}