@rcrsr/rill 0.8.6 → 0.9.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/dist/ast-nodes.d.ts +189 -49
- package/dist/ast-nodes.d.ts.map +1 -1
- package/dist/ast-unions.d.ts +1 -1
- package/dist/ast-unions.d.ts.map +1 -1
- package/dist/constants.d.ts +14 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +29 -0
- package/dist/constants.js.map +1 -0
- package/dist/error-classes.d.ts +3 -1
- package/dist/error-classes.d.ts.map +1 -1
- package/dist/error-classes.js +11 -5
- package/dist/error-classes.js.map +1 -1
- package/dist/error-registry.d.ts.map +1 -1
- package/dist/error-registry.js +293 -9
- package/dist/error-registry.js.map +1 -1
- package/dist/ext/crypto/index.d.ts +2 -1
- package/dist/ext/crypto/index.d.ts.map +1 -1
- package/dist/ext/crypto/index.js +7 -0
- package/dist/ext/crypto/index.js.map +1 -1
- package/dist/ext/exec/index.d.ts +2 -1
- package/dist/ext/exec/index.d.ts.map +1 -1
- package/dist/ext/exec/index.js +6 -0
- package/dist/ext/exec/index.js.map +1 -1
- package/dist/ext/fetch/index.d.ts +2 -1
- package/dist/ext/fetch/index.d.ts.map +1 -1
- package/dist/ext/fetch/index.js +6 -0
- package/dist/ext/fetch/index.js.map +1 -1
- package/dist/ext/fs/index.d.ts +2 -1
- package/dist/ext/fs/index.d.ts.map +1 -1
- package/dist/ext/fs/index.js +3 -0
- package/dist/ext/fs/index.js.map +1 -1
- package/dist/ext/kv/index.d.ts +2 -1
- package/dist/ext/kv/index.d.ts.map +1 -1
- package/dist/ext/kv/index.js +5 -1
- package/dist/ext/kv/index.js.map +1 -1
- package/dist/generated/introspection-data.d.ts +1 -1
- package/dist/generated/introspection-data.d.ts.map +1 -1
- package/dist/generated/introspection-data.js +194 -185
- package/dist/generated/introspection-data.js.map +1 -1
- package/dist/generated/version-data.d.ts +1 -1
- package/dist/generated/version-data.js +3 -3
- package/dist/highlight-map.d.ts.map +1 -1
- package/dist/highlight-map.js +8 -2
- package/dist/highlight-map.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/lexer/operators.d.ts.map +1 -1
- package/dist/lexer/operators.js +0 -2
- package/dist/lexer/operators.js.map +1 -1
- package/dist/lexer/readers.d.ts +18 -1
- package/dist/lexer/readers.d.ts.map +1 -1
- package/dist/lexer/readers.js +55 -0
- package/dist/lexer/readers.js.map +1 -1
- package/dist/parser/helpers.d.ts +8 -13
- package/dist/parser/helpers.d.ts.map +1 -1
- package/dist/parser/helpers.js +42 -35
- package/dist/parser/helpers.js.map +1 -1
- package/dist/parser/index.d.ts +1 -0
- package/dist/parser/index.d.ts.map +1 -1
- package/dist/parser/index.js +1 -0
- package/dist/parser/index.js.map +1 -1
- package/dist/parser/parser-collect.d.ts.map +1 -1
- package/dist/parser/parser-collect.js +34 -5
- package/dist/parser/parser-collect.js.map +1 -1
- package/dist/parser/parser-control.d.ts.map +1 -1
- package/dist/parser/parser-control.js +9 -0
- package/dist/parser/parser-control.js.map +1 -1
- package/dist/parser/parser-expr.d.ts +3 -1
- package/dist/parser/parser-expr.d.ts.map +1 -1
- package/dist/parser/parser-expr.js +377 -100
- package/dist/parser/parser-expr.js.map +1 -1
- package/dist/parser/parser-extract.d.ts +3 -5
- package/dist/parser/parser-extract.d.ts.map +1 -1
- package/dist/parser/parser-extract.js +37 -69
- package/dist/parser/parser-extract.js.map +1 -1
- package/dist/parser/parser-functions.d.ts +2 -2
- package/dist/parser/parser-functions.d.ts.map +1 -1
- package/dist/parser/parser-functions.js +112 -36
- package/dist/parser/parser-functions.js.map +1 -1
- package/dist/parser/parser-literals.d.ts +4 -3
- package/dist/parser/parser-literals.d.ts.map +1 -1
- package/dist/parser/parser-literals.js +257 -42
- package/dist/parser/parser-literals.js.map +1 -1
- package/dist/parser/parser-script.d.ts.map +1 -1
- package/dist/parser/parser-script.js +25 -12
- package/dist/parser/parser-script.js.map +1 -1
- package/dist/parser/parser-shape.d.ts +13 -0
- package/dist/parser/parser-shape.d.ts.map +1 -0
- package/dist/parser/parser-shape.js +72 -0
- package/dist/parser/parser-shape.js.map +1 -0
- package/dist/parser/parser-types.d.ts +21 -0
- package/dist/parser/parser-types.d.ts.map +1 -0
- package/dist/parser/parser-types.js +30 -0
- package/dist/parser/parser-types.js.map +1 -0
- package/dist/parser/parser-variables.d.ts.map +1 -1
- package/dist/parser/parser-variables.js +10 -1
- package/dist/parser/parser-variables.js.map +1 -1
- package/dist/runtime/core/callable.d.ts +23 -20
- package/dist/runtime/core/callable.d.ts.map +1 -1
- package/dist/runtime/core/callable.js +26 -24
- package/dist/runtime/core/callable.js.map +1 -1
- package/dist/runtime/core/context.d.ts.map +1 -1
- package/dist/runtime/core/context.js +8 -8
- package/dist/runtime/core/context.js.map +1 -1
- package/dist/runtime/core/equals.d.ts.map +1 -1
- package/dist/runtime/core/equals.js +142 -30
- package/dist/runtime/core/equals.js.map +1 -1
- package/dist/runtime/core/eval/base.d.ts +2 -2
- package/dist/runtime/core/eval/base.d.ts.map +1 -1
- package/dist/runtime/core/eval/evaluator.d.ts.map +1 -1
- package/dist/runtime/core/eval/evaluator.js +3 -1
- package/dist/runtime/core/eval/evaluator.js.map +1 -1
- package/dist/runtime/core/eval/index.d.ts +16 -1
- package/dist/runtime/core/eval/index.d.ts.map +1 -1
- package/dist/runtime/core/eval/index.js +22 -2
- package/dist/runtime/core/eval/index.js.map +1 -1
- package/dist/runtime/core/eval/mixins/annotations.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/annotations.js +14 -8
- package/dist/runtime/core/eval/mixins/annotations.js.map +1 -1
- package/dist/runtime/core/eval/mixins/closures.d.ts +0 -2
- package/dist/runtime/core/eval/mixins/closures.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/closures.js +286 -105
- package/dist/runtime/core/eval/mixins/closures.js.map +1 -1
- package/dist/runtime/core/eval/mixins/collections.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/collections.js +65 -25
- package/dist/runtime/core/eval/mixins/collections.js.map +1 -1
- package/dist/runtime/core/eval/mixins/control-flow.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/control-flow.js +21 -17
- package/dist/runtime/core/eval/mixins/control-flow.js.map +1 -1
- package/dist/runtime/core/eval/mixins/conversion.d.ts +30 -0
- package/dist/runtime/core/eval/mixins/conversion.d.ts.map +1 -0
- package/dist/runtime/core/eval/mixins/conversion.js +203 -0
- package/dist/runtime/core/eval/mixins/conversion.js.map +1 -0
- package/dist/runtime/core/eval/mixins/core.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/core.js +101 -32
- package/dist/runtime/core/eval/mixins/core.js.map +1 -1
- package/dist/runtime/core/eval/mixins/extraction.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/extraction.js +136 -30
- package/dist/runtime/core/eval/mixins/extraction.js.map +1 -1
- package/dist/runtime/core/eval/mixins/list-dispatch.d.ts +17 -0
- package/dist/runtime/core/eval/mixins/list-dispatch.d.ts.map +1 -0
- package/dist/runtime/core/eval/mixins/list-dispatch.js +97 -0
- package/dist/runtime/core/eval/mixins/list-dispatch.js.map +1 -0
- package/dist/runtime/core/eval/mixins/literals.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/literals.js +64 -82
- package/dist/runtime/core/eval/mixins/literals.js.map +1 -1
- package/dist/runtime/core/eval/mixins/types.d.ts +4 -0
- package/dist/runtime/core/eval/mixins/types.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/types.js +202 -3
- package/dist/runtime/core/eval/mixins/types.js.map +1 -1
- package/dist/runtime/core/eval/mixins/variables.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/variables.js +42 -7
- package/dist/runtime/core/eval/mixins/variables.js.map +1 -1
- package/dist/runtime/core/execute.d.ts.map +1 -1
- package/dist/runtime/core/execute.js +2 -15
- package/dist/runtime/core/execute.js.map +1 -1
- package/dist/runtime/core/field-descriptor.d.ts +29 -0
- package/dist/runtime/core/field-descriptor.d.ts.map +1 -0
- package/dist/runtime/core/field-descriptor.js +27 -0
- package/dist/runtime/core/field-descriptor.js.map +1 -0
- package/dist/runtime/core/types.d.ts +15 -6
- package/dist/runtime/core/types.d.ts.map +1 -1
- package/dist/runtime/core/types.js.map +1 -1
- package/dist/runtime/core/values.d.ts +107 -9
- package/dist/runtime/core/values.d.ts.map +1 -1
- package/dist/runtime/core/values.js +453 -43
- package/dist/runtime/core/values.js.map +1 -1
- package/dist/runtime/ext/builtins.d.ts.map +1 -1
- package/dist/runtime/ext/builtins.js +47 -107
- package/dist/runtime/ext/builtins.js.map +1 -1
- package/dist/runtime/ext/extensions.d.ts +21 -2
- package/dist/runtime/ext/extensions.d.ts.map +1 -1
- package/dist/runtime/ext/extensions.js.map +1 -1
- package/dist/runtime/index.d.ts +6 -4
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +7 -2
- package/dist/runtime/index.js.map +1 -1
- package/dist/token-types.d.ts +7 -2
- package/dist/token-types.d.ts.map +1 -1
- package/dist/token-types.js +9 -2
- package/dist/token-types.js.map +1 -1
- package/dist/value-types.d.ts +19 -1
- package/dist/value-types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
* - Invoke operations
|
|
9
9
|
* - Pipe invocations
|
|
10
10
|
* - Property access on piped values
|
|
11
|
-
* - Closure chains
|
|
12
11
|
*
|
|
13
12
|
* Interface requirements (from spec):
|
|
14
13
|
* - invokeCallable(callable, args, location) -> Promise<RillValue>
|
|
@@ -20,7 +19,6 @@
|
|
|
20
19
|
* - evaluatePipeInvoke(node, input) -> Promise<RillValue>
|
|
21
20
|
* - evaluateMethod(node, receiver) -> Promise<RillValue>
|
|
22
21
|
* - evaluateInvoke(node, receiver) -> Promise<RillValue>
|
|
23
|
-
* - evaluateClosureChain(node, input) -> Promise<RillValue>
|
|
24
22
|
*
|
|
25
23
|
* Error Handling:
|
|
26
24
|
* - Undefined functions throw RuntimeError(RUNTIME_UNDEFINED_FUNCTION) [EC-18]
|
|
@@ -46,9 +44,9 @@
|
|
|
46
44
|
* @internal
|
|
47
45
|
*/
|
|
48
46
|
import { RuntimeError } from '../../../../types.js';
|
|
49
|
-
import { isCallable, isScriptCallable, isApplicationCallable, isDict, validateCallableArgs, } from '../../callable.js';
|
|
47
|
+
import { isCallable, isScriptCallable, isApplicationCallable, isDict, validateCallableArgs, paramsToStructuralType, } from '../../callable.js';
|
|
50
48
|
import { getVariable, pushCallFrame, popCallFrame } from '../../context.js';
|
|
51
|
-
import { inferType, isTuple } from '../../values.js';
|
|
49
|
+
import { inferType, isTypeValue, isTuple, isOrdered, inferStructuralType, } from '../../values.js';
|
|
52
50
|
/**
|
|
53
51
|
* ClosuresMixin implementation.
|
|
54
52
|
*
|
|
@@ -70,14 +68,13 @@ import { inferType, isTuple } from '../../values.js';
|
|
|
70
68
|
* - evaluatePipeInvoke(node, input) -> Promise<RillValue>
|
|
71
69
|
* - evaluateMethod(node, receiver) -> Promise<RillValue>
|
|
72
70
|
* - evaluateInvoke(node, receiver) -> Promise<RillValue>
|
|
73
|
-
* - evaluateClosureChain(node, input) -> Promise<RillValue>
|
|
74
71
|
* - evaluateArgs(argExprs) -> Promise<RillValue[]> (helper)
|
|
75
72
|
* - invokeFnCallable(callable, args, location) -> Promise<RillValue> (helper)
|
|
76
73
|
* - invokeScriptCallable(callable, args, location) -> Promise<RillValue> (helper)
|
|
77
|
-
* - invokeScriptCallableWithArgs(callable, tuple, location) -> Promise<RillValue> (helper)
|
|
78
74
|
* - createCallableContext(callable) -> RuntimeContext (helper)
|
|
79
75
|
* - validateParamType(param, value, location) -> void (helper)
|
|
80
76
|
* - inferTypeFromDefault(defaultValue) -> RillTypeName | null (helper)
|
|
77
|
+
* - bindArgsToParams(argNodes, callable, callLocation) -> Promise<BoundArgs> (helper)
|
|
81
78
|
*/
|
|
82
79
|
function createClosuresMixin(Base) {
|
|
83
80
|
return class ClosuresEvaluator extends Base {
|
|
@@ -89,8 +86,9 @@ function createClosuresMixin(Base) {
|
|
|
89
86
|
const savedPipeValue = this.ctx.pipeValue;
|
|
90
87
|
const args = [];
|
|
91
88
|
for (const arg of argExprs) {
|
|
89
|
+
const expr = arg.type === 'SpreadArg' ? arg.expression : arg;
|
|
92
90
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
93
|
-
args.push(await this.evaluateExpression(
|
|
91
|
+
args.push(await this.evaluateExpression(expr));
|
|
94
92
|
}
|
|
95
93
|
this.ctx.pipeValue = savedPipeValue;
|
|
96
94
|
return args;
|
|
@@ -189,6 +187,8 @@ function createClosuresMixin(Base) {
|
|
|
189
187
|
*/
|
|
190
188
|
validateParamType(param, value, callLocation) {
|
|
191
189
|
const expectedType = param.typeName ?? this.inferTypeFromDefault(param.defaultValue);
|
|
190
|
+
if (expectedType === 'any')
|
|
191
|
+
return;
|
|
192
192
|
if (expectedType !== null) {
|
|
193
193
|
const valueType = inferType(value);
|
|
194
194
|
if (valueType !== expectedType) {
|
|
@@ -201,10 +201,6 @@ function createClosuresMixin(Base) {
|
|
|
201
201
|
* Handles parameter binding, default values, and type checking.
|
|
202
202
|
*/
|
|
203
203
|
async invokeScriptCallable(callable, args, callLocation) {
|
|
204
|
-
const firstArg = args[0];
|
|
205
|
-
if (args.length === 1 && firstArg !== undefined && isTuple(firstArg)) {
|
|
206
|
-
return this.invokeScriptCallableWithArgs(callable, firstArg, callLocation);
|
|
207
|
-
}
|
|
208
204
|
const callableCtx = this.createCallableContext(callable);
|
|
209
205
|
// Validate excess arguments (EC-8)
|
|
210
206
|
if (args.length > callable.params.length) {
|
|
@@ -234,73 +230,14 @@ function createClosuresMixin(Base) {
|
|
|
234
230
|
this.ctx = callableCtx;
|
|
235
231
|
try {
|
|
236
232
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
/**
|
|
244
|
-
* Invoke script callable with tuple arguments (named or positional).
|
|
245
|
-
* Handles *[...] and *[name: val] argument unpacking.
|
|
246
|
-
*/
|
|
247
|
-
async invokeScriptCallableWithArgs(closure, tupleValue, callLocation) {
|
|
248
|
-
const closureCtx = this.createCallableContext(closure);
|
|
249
|
-
const hasNumericKeys = [...tupleValue.entries.keys()].some((k) => typeof k === 'number');
|
|
250
|
-
const hasStringKeys = [...tupleValue.entries.keys()].some((k) => typeof k === 'string');
|
|
251
|
-
if (hasNumericKeys && hasStringKeys) {
|
|
252
|
-
throw new RuntimeError('RILL-R001', 'Tuple cannot mix positional (numeric) and named (string) keys', callLocation);
|
|
253
|
-
}
|
|
254
|
-
const boundParams = new Set();
|
|
255
|
-
if (hasNumericKeys) {
|
|
256
|
-
for (const [key, value] of tupleValue.entries) {
|
|
257
|
-
const position = key;
|
|
258
|
-
const param = closure.params[position];
|
|
259
|
-
if (param === undefined) {
|
|
260
|
-
throw new RuntimeError('RILL-R001', `Extra argument at position ${position} (closure has ${closure.params.length} params)`, callLocation, { position, paramCount: closure.params.length });
|
|
261
|
-
}
|
|
262
|
-
this.validateParamType(param, value, callLocation);
|
|
263
|
-
closureCtx.variables.set(param.name, value);
|
|
264
|
-
boundParams.add(param.name);
|
|
233
|
+
const result = await this.evaluateBodyExpression(callable.body);
|
|
234
|
+
// IR-4: Assert return value against declared returnShape (AC-14, AC-15, AC-16)
|
|
235
|
+
if (callable.returnShape !== undefined) {
|
|
236
|
+
// EC-4: Type assertion — value must match the declared scalar type
|
|
237
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
238
|
+
this.assertType(result, callable.returnShape.typeName, callLocation);
|
|
265
239
|
}
|
|
266
|
-
|
|
267
|
-
else if (hasStringKeys) {
|
|
268
|
-
const paramNames = new Set(closure.params.map((p) => p.name));
|
|
269
|
-
for (const [key, value] of tupleValue.entries) {
|
|
270
|
-
const name = key;
|
|
271
|
-
if (!paramNames.has(name)) {
|
|
272
|
-
throw new RuntimeError('RILL-R001', `Unknown argument '${name}' (valid params: ${[...paramNames].join(', ')})`, callLocation, { argName: name, validParams: [...paramNames] });
|
|
273
|
-
}
|
|
274
|
-
const param = closure.params.find((p) => p.name === name);
|
|
275
|
-
this.validateParamType(param, value, callLocation);
|
|
276
|
-
closureCtx.variables.set(name, value);
|
|
277
|
-
// Block-closures have param named '$': sync with pipeValue for bare $ references
|
|
278
|
-
if (name === '$') {
|
|
279
|
-
closureCtx.pipeValue = value;
|
|
280
|
-
}
|
|
281
|
-
boundParams.add(name);
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
for (const param of closure.params) {
|
|
285
|
-
if (!boundParams.has(param.name)) {
|
|
286
|
-
if (param.defaultValue !== null) {
|
|
287
|
-
closureCtx.variables.set(param.name, param.defaultValue);
|
|
288
|
-
// Block-closures have param named '$': sync with pipeValue for bare $ references
|
|
289
|
-
if (param.name === '$') {
|
|
290
|
-
closureCtx.pipeValue = param.defaultValue;
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
else {
|
|
294
|
-
throw new RuntimeError('RILL-R001', `Missing argument '${param.name}' (no default value)`, callLocation, { paramName: param.name });
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
// Switch context to callable context
|
|
299
|
-
const savedCtx = this.ctx;
|
|
300
|
-
this.ctx = closureCtx;
|
|
301
|
-
try {
|
|
302
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
303
|
-
return await this.evaluateBodyExpression(closure.body);
|
|
240
|
+
return result;
|
|
304
241
|
}
|
|
305
242
|
finally {
|
|
306
243
|
this.ctx = savedCtx;
|
|
@@ -316,6 +253,32 @@ function createClosuresMixin(Base) {
|
|
|
316
253
|
if (!fn) {
|
|
317
254
|
throw new RuntimeError('RILL-R006', `Unknown function: ${node.name}`, this.getNodeLocation(node), { functionName: node.name });
|
|
318
255
|
}
|
|
256
|
+
// EC-10/EC-11: spread-aware path for host calls
|
|
257
|
+
const hasSpread = node.args.some((a) => a.type === 'SpreadArg');
|
|
258
|
+
if (hasSpread) {
|
|
259
|
+
if (typeof fn === 'function') {
|
|
260
|
+
// EC-10: raw built-in (RuntimeCallable) — spread not supported
|
|
261
|
+
throw new RuntimeError('RILL-R001', `Spread not supported for built-in function '${node.name}'`, this.getNodeLocation(node), { functionName: node.name });
|
|
262
|
+
}
|
|
263
|
+
// EC-11: ApplicationCallable — bindArgsToParams handles no-params guard
|
|
264
|
+
const boundArgs = await this.bindArgsToParams(node.args, fn, node.span.start);
|
|
265
|
+
const orderedArgs = fn.params.map((p) => boundArgs.params.get(p.name));
|
|
266
|
+
// Observability: onHostCall before execution
|
|
267
|
+
this.ctx.observability.onHostCall?.({
|
|
268
|
+
name: node.name,
|
|
269
|
+
args: orderedArgs,
|
|
270
|
+
});
|
|
271
|
+
const startTime = performance.now();
|
|
272
|
+
const wrappedPromise = this.withTimeout(this.invokeCallable(fn, orderedArgs, node.span.start, node.name), this.ctx.timeout, node.name, node);
|
|
273
|
+
const result = await wrappedPromise;
|
|
274
|
+
const durationMs = performance.now() - startTime;
|
|
275
|
+
this.ctx.observability.onFunctionReturn?.({
|
|
276
|
+
name: node.name,
|
|
277
|
+
value: result,
|
|
278
|
+
durationMs,
|
|
279
|
+
});
|
|
280
|
+
return result;
|
|
281
|
+
}
|
|
319
282
|
const args = await this.evaluateArgs(node.args);
|
|
320
283
|
// Add pipe value to empty args list UNLESS function has typed params with length 0
|
|
321
284
|
// (typed functions with params: [] explicitly declare zero parameters)
|
|
@@ -359,6 +322,50 @@ function createClosuresMixin(Base) {
|
|
|
359
322
|
});
|
|
360
323
|
return result;
|
|
361
324
|
}
|
|
325
|
+
/**
|
|
326
|
+
* Evaluate host function reference: ns::name (no parens, namespaced).
|
|
327
|
+
*
|
|
328
|
+
* When pipeValue is null (value-capture context): returns the
|
|
329
|
+
* ApplicationCallable directly without invoking [IR-4].
|
|
330
|
+
*
|
|
331
|
+
* When pipeValue is set (pipe/branch context): invokes the callable
|
|
332
|
+
* with the pipe value as the implicit argument, consistent with how
|
|
333
|
+
* bare HostRef behaves as a pipe-stage expression [IR-4].
|
|
334
|
+
*
|
|
335
|
+
* Throws RILL-R006 when the function name is not registered [EC-4].
|
|
336
|
+
*/
|
|
337
|
+
async evaluateHostRef(node) {
|
|
338
|
+
this.checkAborted(node);
|
|
339
|
+
const fn = this.ctx.functions.get(node.name);
|
|
340
|
+
if (!fn) {
|
|
341
|
+
throw new RuntimeError('RILL-R006', `Function "${node.name}" not found`, this.getNodeLocation(node), { functionName: node.name });
|
|
342
|
+
}
|
|
343
|
+
// Build ApplicationCallable wrapper for raw CallableFn; pass through
|
|
344
|
+
// ApplicationCallable objects directly.
|
|
345
|
+
let appCallable;
|
|
346
|
+
if (typeof fn === 'function') {
|
|
347
|
+
appCallable = {
|
|
348
|
+
__type: 'callable',
|
|
349
|
+
kind: 'application',
|
|
350
|
+
fn,
|
|
351
|
+
params: undefined,
|
|
352
|
+
isProperty: false,
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
else {
|
|
356
|
+
appCallable = fn;
|
|
357
|
+
}
|
|
358
|
+
// Value-capture context: no pipe value → return callable without invoking [IR-4]
|
|
359
|
+
if (this.ctx.pipeValue === null) {
|
|
360
|
+
return appCallable;
|
|
361
|
+
}
|
|
362
|
+
// Pipe/branch context: pipe value present → invoke with it as implicit argument
|
|
363
|
+
const fnHasTypedZeroParams = appCallable.params !== undefined && appCallable.params.length === 0;
|
|
364
|
+
const args = fnHasTypedZeroParams
|
|
365
|
+
? []
|
|
366
|
+
: [this.ctx.pipeValue];
|
|
367
|
+
return this.invokeCallable(appCallable, args, this.getNodeLocation(node), node.name);
|
|
368
|
+
}
|
|
362
369
|
/**
|
|
363
370
|
* Evaluate closure call: $fn(args)
|
|
364
371
|
* Delegates to evaluateClosureCallWithPipe using current pipe value.
|
|
@@ -396,6 +403,15 @@ function createClosuresMixin(Base) {
|
|
|
396
403
|
throw new RuntimeError('RILL-R002', `'${fullPath}' is not callable`, this.getNodeLocation(node), { path: fullPath, actualType: inferType(value) });
|
|
397
404
|
}
|
|
398
405
|
const closure = value;
|
|
406
|
+
// Spread-aware path: when args contain a SpreadArgNode use bindArgsToParams
|
|
407
|
+
if (node.args.some((a) => a.type === 'SpreadArg')) {
|
|
408
|
+
if (!isScriptCallable(closure) && !isApplicationCallable(closure)) {
|
|
409
|
+
throw new RuntimeError('RILL-R001', `Spread not supported for built-in callable at '${fullPath}'`, this.getNodeLocation(node));
|
|
410
|
+
}
|
|
411
|
+
const boundArgs = await this.bindArgsToParams(node.args, closure, node.span.start);
|
|
412
|
+
const orderedArgs = closure.params.map((p) => boundArgs.params.get(p.name));
|
|
413
|
+
return this.invokeCallable(closure, orderedArgs, node.span.start, fullPath);
|
|
414
|
+
}
|
|
399
415
|
const args = await this.evaluateArgs(node.args);
|
|
400
416
|
// If no explicit args and has pipe input, add pipe value as first arg
|
|
401
417
|
// UNLESS closure has zero parameters (explicit zero-param signature)
|
|
@@ -464,6 +480,12 @@ function createClosuresMixin(Base) {
|
|
|
464
480
|
if (!isScriptCallable(input)) {
|
|
465
481
|
throw new RuntimeError('RILL-R002', `Cannot invoke non-closure value (got ${typeof input})`, this.getNodeLocation(node));
|
|
466
482
|
}
|
|
483
|
+
// Spread-aware path: when args contain a SpreadArgNode use bindArgsToParams
|
|
484
|
+
if (node.args.some((a) => a.type === 'SpreadArg')) {
|
|
485
|
+
const boundArgs = await this.bindArgsToParams(node.args, input, node.span.start);
|
|
486
|
+
const orderedArgs = input.params.map((p) => boundArgs.params.get(p.name));
|
|
487
|
+
return this.invokeScriptCallable(input, orderedArgs, node.span.start);
|
|
488
|
+
}
|
|
467
489
|
const args = await this.evaluateArgs(node.args);
|
|
468
490
|
return this.invokeScriptCallable(input, args, node.span.start);
|
|
469
491
|
}
|
|
@@ -480,6 +502,10 @@ function createClosuresMixin(Base) {
|
|
|
480
502
|
if (isCallable(receiver)) {
|
|
481
503
|
throw new RuntimeError('RILL-R003', `Method .${node.name} not available on callable (invoke with -> $() first)`, this.getNodeLocation(node), { methodName: node.name, receiverType: 'callable' });
|
|
482
504
|
}
|
|
505
|
+
// IR-3: .name on type values returns the typeName string (method path)
|
|
506
|
+
if (isTypeValue(receiver) && node.name === 'name') {
|
|
507
|
+
return receiver.typeName;
|
|
508
|
+
}
|
|
483
509
|
const args = await this.evaluateArgs(node.args);
|
|
484
510
|
if (isDict(receiver)) {
|
|
485
511
|
const dictValue = receiver[node.name];
|
|
@@ -506,35 +532,17 @@ function createClosuresMixin(Base) {
|
|
|
506
532
|
if (!isCallable(receiver)) {
|
|
507
533
|
throw new RuntimeError('RILL-R002', `Cannot invoke non-callable value (got ${inferType(receiver)})`, this.getNodeLocation(node), { actualType: inferType(receiver) });
|
|
508
534
|
}
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
* Evaluate closure chain: >>expr
|
|
514
|
-
* Chains multiple closures for composition.
|
|
515
|
-
*/
|
|
516
|
-
async evaluateClosureChain(node, input) {
|
|
517
|
-
// Evaluate the target expression to get the closure(s)
|
|
518
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
519
|
-
const target = await this.evaluateExpression(node.target);
|
|
520
|
-
if (Array.isArray(target)) {
|
|
521
|
-
// List of closures: chain them left-to-right
|
|
522
|
-
let result = input;
|
|
523
|
-
for (const closure of target) {
|
|
524
|
-
if (!isCallable(closure)) {
|
|
525
|
-
throw new RuntimeError('RILL-R002', `Closure chain element must be callable, got ${inferType(closure)}`, this.getNodeLocation(node));
|
|
526
|
-
}
|
|
527
|
-
result = await this.invokeCallable(closure, [result], this.getNodeLocation(node));
|
|
535
|
+
// Spread-aware path: when args contain a SpreadArgNode use bindArgsToParams
|
|
536
|
+
if (node.args.some((a) => a.type === 'SpreadArg')) {
|
|
537
|
+
if (!isScriptCallable(receiver) && !isApplicationCallable(receiver)) {
|
|
538
|
+
throw new RuntimeError('RILL-R001', `Spread not supported for built-in callable`, this.getNodeLocation(node));
|
|
528
539
|
}
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
// Single closure: invoke with input
|
|
533
|
-
return this.invokeCallable(target, [input], this.getNodeLocation(node));
|
|
534
|
-
}
|
|
535
|
-
else {
|
|
536
|
-
throw new RuntimeError('RILL-R002', `Closure chain requires callable or list of callables, got ${inferType(target)}`, this.getNodeLocation(node));
|
|
540
|
+
const boundArgs = await this.bindArgsToParams(node.args, receiver, node.span.start);
|
|
541
|
+
const orderedArgs = receiver.params.map((p) => boundArgs.params.get(p.name));
|
|
542
|
+
return this.invokeCallable(receiver, orderedArgs, node.span.start);
|
|
537
543
|
}
|
|
544
|
+
const args = await this.evaluateArgs(node.args);
|
|
545
|
+
return this.invokeCallable(receiver, args, this.getNodeLocation(node));
|
|
538
546
|
}
|
|
539
547
|
/**
|
|
540
548
|
* Evaluate annotation reflection access: .^key
|
|
@@ -545,9 +553,52 @@ function createClosuresMixin(Base) {
|
|
|
545
553
|
* Throws RUNTIME_UNDEFINED_ANNOTATION for missing annotations.
|
|
546
554
|
*/
|
|
547
555
|
async evaluateAnnotationAccess(value, key, location) {
|
|
556
|
+
// IR-2: .^type returns a RillTypeValue for any rill value
|
|
557
|
+
if (key === 'type') {
|
|
558
|
+
const typeValue = Object.freeze({
|
|
559
|
+
__rill_type: true,
|
|
560
|
+
typeName: inferType(value),
|
|
561
|
+
structure: inferStructuralType(value),
|
|
562
|
+
});
|
|
563
|
+
return typeValue;
|
|
564
|
+
}
|
|
565
|
+
// IR-3: .name on type values returns the typeName string
|
|
566
|
+
if (isTypeValue(value) && key === 'name') {
|
|
567
|
+
return value.typeName;
|
|
568
|
+
}
|
|
569
|
+
// IR-2/IR-5: .^input returns the input shape for callable values
|
|
570
|
+
if (key === 'input') {
|
|
571
|
+
if (isScriptCallable(value)) {
|
|
572
|
+
return value.inputShape;
|
|
573
|
+
}
|
|
574
|
+
if (isApplicationCallable(value)) {
|
|
575
|
+
if (value.params === undefined) {
|
|
576
|
+
// IR-5: untyped host function — no shape available
|
|
577
|
+
return false;
|
|
578
|
+
}
|
|
579
|
+
return paramsToStructuralType(value.params);
|
|
580
|
+
}
|
|
581
|
+
// Non-callable: fall through to existing RILL-R003 guard below
|
|
582
|
+
}
|
|
583
|
+
// IR-3: .^output returns the declared output contract for callable values
|
|
584
|
+
if (key === 'output') {
|
|
585
|
+
if (isScriptCallable(value)) {
|
|
586
|
+
if (value.returnShape !== undefined) {
|
|
587
|
+
return value.returnShape;
|
|
588
|
+
}
|
|
589
|
+
// No :type-target declared — return type value `any` (AC-17, AC-18, AC-19)
|
|
590
|
+
const anyTypeValue = Object.freeze({
|
|
591
|
+
__rill_type: true,
|
|
592
|
+
typeName: 'any',
|
|
593
|
+
structure: { kind: 'any' },
|
|
594
|
+
});
|
|
595
|
+
return anyTypeValue;
|
|
596
|
+
}
|
|
597
|
+
// Non-callable: fall through to existing RILL-R003 guard below
|
|
598
|
+
}
|
|
548
599
|
// Only ScriptCallable supports annotation reflection
|
|
549
600
|
if (!isScriptCallable(value)) {
|
|
550
|
-
throw new RuntimeError('RILL-R003', `
|
|
601
|
+
throw new RuntimeError('RILL-R003', `annotation not found: ^${key}`, location, { actualType: inferType(value) });
|
|
551
602
|
}
|
|
552
603
|
// Access annotation from ScriptCallable
|
|
553
604
|
const annotationValue = value.annotations[key];
|
|
@@ -557,6 +608,136 @@ function createClosuresMixin(Base) {
|
|
|
557
608
|
}
|
|
558
609
|
return annotationValue;
|
|
559
610
|
}
|
|
611
|
+
/**
|
|
612
|
+
* Bind argument nodes to callable parameters when a SpreadArgNode is present.
|
|
613
|
+
*
|
|
614
|
+
* Evaluates positional args LTR, evaluates the spread expression, dispatches
|
|
615
|
+
* by value type (Tuple, Ordered, or Dict), validates bindings, and returns
|
|
616
|
+
* a Map of param name → value.
|
|
617
|
+
*
|
|
618
|
+
* EC-3: bare ... with null pipe value → RuntimeError
|
|
619
|
+
* EC-4: spread value is not tuple/dict/ordered → RuntimeError
|
|
620
|
+
* EC-5: dict spread key matches no parameter → RuntimeError
|
|
621
|
+
* EC-6: ordered spread key at position N mismatches param at position N → RuntimeError
|
|
622
|
+
* EC-7: duplicate binding (positional + spread) → RuntimeError
|
|
623
|
+
* EC-8: missing required parameter after all args processed → RuntimeError
|
|
624
|
+
* EC-9: extra tuple values exceed param count → RuntimeError
|
|
625
|
+
* EC-11: ApplicationCallable with no params metadata → RuntimeError
|
|
626
|
+
*/
|
|
627
|
+
async bindArgsToParams(argNodes, callable, callLocation) {
|
|
628
|
+
// EC-11: ApplicationCallable must have params metadata for spread to work
|
|
629
|
+
if (callable.kind === 'application' && callable.params === undefined) {
|
|
630
|
+
const name = callable.fn.name !== '' ? callable.fn.name : '<anonymous>';
|
|
631
|
+
throw new RuntimeError('RILL-R001', `Spread not supported for host function '${name}': parameter metadata required`, callLocation);
|
|
632
|
+
}
|
|
633
|
+
const params = callable.params;
|
|
634
|
+
const bound = new Map();
|
|
635
|
+
// Positional index: next unbound parameter position
|
|
636
|
+
let positionalIndex = 0;
|
|
637
|
+
// Save pipe value so evaluating args does not mutate it permanently
|
|
638
|
+
const savedPipeValue = this.ctx.pipeValue;
|
|
639
|
+
try {
|
|
640
|
+
for (const argNode of argNodes) {
|
|
641
|
+
if (argNode.type !== 'SpreadArg') {
|
|
642
|
+
// Positional argument
|
|
643
|
+
const param = params[positionalIndex];
|
|
644
|
+
if (param === undefined) {
|
|
645
|
+
// Extra positional arg beyond param count — EC-9 reports after spread
|
|
646
|
+
// but for pure positional excess, error here with the positional count
|
|
647
|
+
throw new RuntimeError('RILL-R001', `Extra positional argument at position ${positionalIndex} (function has ${params.length} parameters)`, callLocation);
|
|
648
|
+
}
|
|
649
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
650
|
+
const value = await this.evaluateExpression(argNode);
|
|
651
|
+
bound.set(param.name, value);
|
|
652
|
+
positionalIndex++;
|
|
653
|
+
}
|
|
654
|
+
else {
|
|
655
|
+
// SpreadArg: evaluate the expression
|
|
656
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
657
|
+
const spreadValue = await this.evaluateExpression(argNode.expression);
|
|
658
|
+
// EC-3: bare ... with no pipe value evaluates to null
|
|
659
|
+
if (spreadValue === null) {
|
|
660
|
+
throw new RuntimeError('RILL-R001', 'Spread requires an active pipe value ($)', callLocation);
|
|
661
|
+
}
|
|
662
|
+
// Dispatch by type: isOrdered BEFORE isDict per spec (IC-3 algorithm step 2)
|
|
663
|
+
if (isTuple(spreadValue)) {
|
|
664
|
+
// Tuple: fill remaining params positionally LTR (EC-9)
|
|
665
|
+
const tupleEntries = spreadValue.entries;
|
|
666
|
+
const remaining = params.length - positionalIndex;
|
|
667
|
+
if (tupleEntries.length > remaining) {
|
|
668
|
+
throw new RuntimeError('RILL-R001', `Spread tuple has ${tupleEntries.length} values but only ${remaining} parameter(s) remain`, callLocation);
|
|
669
|
+
}
|
|
670
|
+
for (let i = 0; i < tupleEntries.length; i++) {
|
|
671
|
+
const param = params[positionalIndex + i];
|
|
672
|
+
// EC-7: duplicate binding
|
|
673
|
+
if (bound.has(param.name)) {
|
|
674
|
+
throw new RuntimeError('RILL-R001', `Duplicate binding for parameter '${param.name}': already bound positionally`, callLocation);
|
|
675
|
+
}
|
|
676
|
+
bound.set(param.name, tupleEntries[i]);
|
|
677
|
+
}
|
|
678
|
+
positionalIndex += tupleEntries.length;
|
|
679
|
+
}
|
|
680
|
+
else if (isOrdered(spreadValue)) {
|
|
681
|
+
// Ordered: match key by name AND position
|
|
682
|
+
// Key at position N within ordered value must match param at (spreadStart + N)
|
|
683
|
+
const orderedEntries = spreadValue.entries;
|
|
684
|
+
for (let i = 0; i < orderedEntries.length; i++) {
|
|
685
|
+
const [key, value] = orderedEntries[i];
|
|
686
|
+
const expectedParam = params[positionalIndex + i];
|
|
687
|
+
// EC-6: key-order mismatch
|
|
688
|
+
if (expectedParam === undefined || expectedParam.name !== key) {
|
|
689
|
+
const expectedName = expectedParam?.name ?? '<none>';
|
|
690
|
+
throw new RuntimeError('RILL-R001', `Ordered spread key '${key}' at position ${i} does not match expected parameter '${expectedName}' at position ${positionalIndex + i}`, callLocation);
|
|
691
|
+
}
|
|
692
|
+
// EC-7: duplicate binding
|
|
693
|
+
if (bound.has(key)) {
|
|
694
|
+
throw new RuntimeError('RILL-R001', `Duplicate binding for parameter '${key}': already bound positionally`, callLocation);
|
|
695
|
+
}
|
|
696
|
+
bound.set(key, value);
|
|
697
|
+
}
|
|
698
|
+
positionalIndex += orderedEntries.length;
|
|
699
|
+
}
|
|
700
|
+
else if (isDict(spreadValue)) {
|
|
701
|
+
// Dict: match each key to param by name (order irrelevant)
|
|
702
|
+
const dictValue = spreadValue;
|
|
703
|
+
const paramNames = new Set(params.map((p) => p.name));
|
|
704
|
+
for (const [key, value] of Object.entries(dictValue)) {
|
|
705
|
+
// EC-5: key matches no parameter
|
|
706
|
+
if (!paramNames.has(key)) {
|
|
707
|
+
const validParams = params.map((p) => p.name).join(', ');
|
|
708
|
+
throw new RuntimeError('RILL-R001', `Dict spread key '${key}' does not match any parameter. Valid parameters: ${validParams}`, callLocation);
|
|
709
|
+
}
|
|
710
|
+
// EC-7: duplicate binding
|
|
711
|
+
if (bound.has(key)) {
|
|
712
|
+
throw new RuntimeError('RILL-R001', `Duplicate binding for parameter '${key}': already bound positionally`, callLocation);
|
|
713
|
+
}
|
|
714
|
+
bound.set(key, value);
|
|
715
|
+
}
|
|
716
|
+
}
|
|
717
|
+
else {
|
|
718
|
+
// EC-4: spread value is not tuple/dict/ordered
|
|
719
|
+
const actualType = inferType(spreadValue);
|
|
720
|
+
throw new RuntimeError('RILL-R001', `Spread requires a tuple, dict, or ordered value, got ${actualType}`, callLocation);
|
|
721
|
+
}
|
|
722
|
+
}
|
|
723
|
+
}
|
|
724
|
+
}
|
|
725
|
+
finally {
|
|
726
|
+
this.ctx.pipeValue = savedPipeValue;
|
|
727
|
+
}
|
|
728
|
+
// EC-8: check for missing required parameters
|
|
729
|
+
for (const param of params) {
|
|
730
|
+
if (!bound.has(param.name)) {
|
|
731
|
+
if (param.defaultValue !== null) {
|
|
732
|
+
bound.set(param.name, param.defaultValue);
|
|
733
|
+
}
|
|
734
|
+
else {
|
|
735
|
+
throw new RuntimeError('RILL-R001', `Missing required parameter '${param.name}'`, callLocation);
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
return { params: bound };
|
|
740
|
+
}
|
|
560
741
|
/**
|
|
561
742
|
* Evaluate .params property access on closures.
|
|
562
743
|
* Builds dict from closure parameter metadata.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"closures.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/closures.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"closures.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/closures.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/collections.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;
|
|
1
|
+
{"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/collections.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAoqBH,eAAO,MAAM,gBAAgB,EAA6B,GAAG,CAAC"}
|