@rcrsr/rill 0.4.4 → 0.5.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/check/config.d.ts.map +1 -1
- package/dist/check/config.js +9 -9
- package/dist/check/config.js.map +1 -1
- package/dist/check/visitor.d.ts.map +1 -1
- package/dist/check/visitor.js +1 -0
- package/dist/check/visitor.js.map +1 -1
- package/dist/cli-check.js +8 -9
- package/dist/cli-check.js.map +1 -1
- package/dist/cli-eval.js +4 -5
- package/dist/cli-eval.js.map +1 -1
- package/dist/cli-exec.d.ts.map +1 -1
- package/dist/cli-exec.js +2 -3
- package/dist/cli-exec.js.map +1 -1
- package/dist/cli-shared.d.ts +5 -3
- package/dist/cli-shared.d.ts.map +1 -1
- package/dist/cli-shared.js +5 -9
- package/dist/cli-shared.js.map +1 -1
- package/dist/generated/introspection-data.d.ts +2 -0
- package/dist/generated/introspection-data.d.ts.map +1 -0
- package/dist/generated/introspection-data.js +618 -0
- package/dist/generated/introspection-data.js.map +1 -0
- package/dist/generated/version-data.d.ts +18 -0
- package/dist/generated/version-data.d.ts.map +1 -0
- package/dist/generated/version-data.js +16 -0
- package/dist/generated/version-data.js.map +1 -0
- 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/errors.d.ts +3 -2
- package/dist/lexer/errors.d.ts.map +1 -1
- package/dist/lexer/errors.js +19 -4
- package/dist/lexer/errors.js.map +1 -1
- package/dist/lexer/operators.d.ts.map +1 -1
- package/dist/lexer/operators.js +1 -0
- package/dist/lexer/operators.js.map +1 -1
- package/dist/lexer/readers.d.ts.map +1 -1
- package/dist/lexer/readers.js +4 -4
- package/dist/lexer/readers.js.map +1 -1
- package/dist/lexer/tokenizer.js +1 -1
- package/dist/lexer/tokenizer.js.map +1 -1
- package/dist/parser/helpers.d.ts.map +1 -1
- package/dist/parser/helpers.js +5 -3
- package/dist/parser/helpers.js.map +1 -1
- package/dist/parser/parser-collect.js +1 -1
- package/dist/parser/parser-collect.js.map +1 -1
- package/dist/parser/parser-control.js +6 -4
- package/dist/parser/parser-control.js.map +1 -1
- package/dist/parser/parser-expr.d.ts.map +1 -1
- package/dist/parser/parser-expr.js +24 -4
- package/dist/parser/parser-expr.js.map +1 -1
- package/dist/parser/parser-extract.js +1 -1
- package/dist/parser/parser-extract.js.map +1 -1
- package/dist/parser/parser-functions.js +2 -1
- package/dist/parser/parser-functions.js.map +1 -1
- package/dist/parser/parser-literals.d.ts.map +1 -1
- package/dist/parser/parser-literals.js +39 -10
- package/dist/parser/parser-literals.js.map +1 -1
- package/dist/parser/parser-script.js +2 -0
- package/dist/parser/parser-script.js.map +1 -1
- package/dist/parser/parser-variables.d.ts +2 -2
- package/dist/parser/parser-variables.d.ts.map +1 -1
- package/dist/parser/parser-variables.js +28 -12
- package/dist/parser/parser-variables.js.map +1 -1
- package/dist/parser/state.js +1 -1
- package/dist/parser/state.js.map +1 -1
- package/dist/runtime/core/callable.d.ts +8 -0
- package/dist/runtime/core/callable.d.ts.map +1 -1
- package/dist/runtime/core/callable.js +6 -6
- 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 +17 -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 +7 -1
- package/dist/runtime/core/equals.js.map +1 -1
- package/dist/runtime/core/eval/base.js +2 -2
- package/dist/runtime/core/eval/base.js.map +1 -1
- package/dist/runtime/core/eval/mixins/annotations.js +2 -2
- package/dist/runtime/core/eval/mixins/annotations.js.map +1 -1
- package/dist/runtime/core/eval/mixins/closures.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/closures.js +32 -26
- package/dist/runtime/core/eval/mixins/closures.js.map +1 -1
- package/dist/runtime/core/eval/mixins/collections.js +13 -13
- package/dist/runtime/core/eval/mixins/collections.js.map +1 -1
- package/dist/runtime/core/eval/mixins/control-flow.js +1 -1
- package/dist/runtime/core/eval/mixins/control-flow.js.map +1 -1
- package/dist/runtime/core/eval/mixins/core.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/core.js +37 -14
- package/dist/runtime/core/eval/mixins/core.js.map +1 -1
- package/dist/runtime/core/eval/mixins/expressions.d.ts +2 -0
- package/dist/runtime/core/eval/mixins/expressions.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/expressions.js +80 -27
- package/dist/runtime/core/eval/mixins/expressions.js.map +1 -1
- package/dist/runtime/core/eval/mixins/extraction.js +14 -14
- package/dist/runtime/core/eval/mixins/extraction.js.map +1 -1
- package/dist/runtime/core/eval/mixins/literals.d.ts +4 -1
- package/dist/runtime/core/eval/mixins/literals.d.ts.map +1 -1
- package/dist/runtime/core/eval/mixins/literals.js +117 -14
- package/dist/runtime/core/eval/mixins/literals.js.map +1 -1
- package/dist/runtime/core/eval/mixins/types.js +3 -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 +121 -31
- package/dist/runtime/core/eval/mixins/variables.js.map +1 -1
- package/dist/runtime/core/execute.js +2 -2
- package/dist/runtime/core/execute.js.map +1 -1
- package/dist/runtime/core/introspection-data.d.ts +2 -0
- package/dist/runtime/core/introspection-data.d.ts.map +1 -0
- package/dist/runtime/core/introspection-data.js +618 -0
- package/dist/runtime/core/introspection-data.js.map +1 -0
- package/dist/runtime/core/introspection.d.ts +59 -0
- package/dist/runtime/core/introspection.d.ts.map +1 -0
- package/dist/runtime/core/introspection.js +120 -0
- package/dist/runtime/core/introspection.js.map +1 -0
- package/dist/runtime/core/version-data.d.ts +18 -0
- package/dist/runtime/core/version-data.d.ts.map +1 -0
- package/dist/runtime/core/version-data.js +16 -0
- package/dist/runtime/core/version-data.js.map +1 -0
- package/dist/runtime/ext/builtins.js +21 -21
- package/dist/runtime/ext/builtins.js.map +1 -1
- package/dist/runtime/ext/extensions.js +1 -1
- package/dist/runtime/ext/extensions.js.map +1 -1
- package/dist/runtime/index.d.ts +4 -0
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +2 -0
- package/dist/runtime/index.js.map +1 -1
- package/dist/types.d.ts +127 -9
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +457 -11
- package/dist/types.js.map +1 -1
- package/docs/02_types.md +35 -3
- package/docs/04_operators.md +22 -1
- package/docs/05_control-flow.md +62 -0
- package/docs/11_reference.md +9 -5
- package/docs/12_examples.md +4 -4
- package/docs/14_host-integration.md +152 -0
- package/docs/15_grammar.ebnf +33 -6
- package/docs/88_errors.md +902 -0
- package/docs/99_llm-reference.txt +19 -0
- package/package.json +4 -2
|
@@ -127,14 +127,34 @@ function createCoreMixin(Base) {
|
|
|
127
127
|
*
|
|
128
128
|
* Example: obj.method1().method2().method3()
|
|
129
129
|
* Evaluates primary, then applies each method in sequence.
|
|
130
|
+
*
|
|
131
|
+
* Default value handling:
|
|
132
|
+
* - If method chain throws RUNTIME_UNDEFINED_METHOD and expr.defaultValue exists,
|
|
133
|
+
* evaluates and returns defaultValue instead of propagating error.
|
|
134
|
+
* - RUNTIME_UNDEFINED_METHOD is thrown when accessing a missing field via .field syntax.
|
|
135
|
+
* - All other errors propagate normally.
|
|
130
136
|
*/
|
|
131
137
|
async evaluatePostfixExpr(expr) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
138
|
+
try {
|
|
139
|
+
let value = await this.evaluatePrimary(expr.primary);
|
|
140
|
+
for (const method of expr.methods) {
|
|
141
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
142
|
+
value = await this.evaluateMethod(method, value);
|
|
143
|
+
}
|
|
144
|
+
return value;
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
// If method chain throws RUNTIME_UNDEFINED_METHOD and defaultValue exists,
|
|
148
|
+
// evaluate and return the default value
|
|
149
|
+
if (error instanceof RuntimeError &&
|
|
150
|
+
error.code === RILL_ERROR_CODES.RUNTIME_UNDEFINED_METHOD &&
|
|
151
|
+
expr.defaultValue !== null) {
|
|
152
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
153
|
+
return this.evaluateBody(expr.defaultValue);
|
|
154
|
+
}
|
|
155
|
+
// All other errors propagate
|
|
156
|
+
throw error;
|
|
136
157
|
}
|
|
137
|
-
return value;
|
|
138
158
|
}
|
|
139
159
|
/**
|
|
140
160
|
* Evaluate primary expression [IR-11].
|
|
@@ -175,7 +195,7 @@ function createCoreMixin(Base) {
|
|
|
175
195
|
return this.evaluateClosureCall(primary);
|
|
176
196
|
case 'MethodCall':
|
|
177
197
|
if (this.ctx.pipeValue === null) {
|
|
178
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, 'Undefined variable: $', primary.span?.start, { variable: '$' });
|
|
198
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, 'RILL-R005: Undefined variable: $', primary.span?.start, { variable: '$' });
|
|
179
199
|
}
|
|
180
200
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
181
201
|
return this.evaluateMethod(primary, this.ctx.pipeValue);
|
|
@@ -203,10 +223,13 @@ function createCoreMixin(Base) {
|
|
|
203
223
|
case 'Error':
|
|
204
224
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
205
225
|
return this.evaluateError(primary);
|
|
226
|
+
case 'Pass':
|
|
227
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
228
|
+
return this.evaluatePass(primary);
|
|
206
229
|
case 'TypeAssertion': {
|
|
207
230
|
// Postfix type assertion: the operand is already evaluated
|
|
208
231
|
if (!primary.operand) {
|
|
209
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Postfix type assertion requires operand', primary.span.start);
|
|
232
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R004: Postfix type assertion requires operand', primary.span.start);
|
|
210
233
|
}
|
|
211
234
|
const assertValue = await this.evaluatePostfixExpr(primary.operand);
|
|
212
235
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -215,14 +238,14 @@ function createCoreMixin(Base) {
|
|
|
215
238
|
case 'TypeCheck': {
|
|
216
239
|
// Postfix type check: the operand is already evaluated
|
|
217
240
|
if (!primary.operand) {
|
|
218
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Postfix type check requires operand', primary.span.start);
|
|
241
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R004: Postfix type check requires operand', primary.span.start);
|
|
219
242
|
}
|
|
220
243
|
const checkValue = await this.evaluatePostfixExpr(primary.operand);
|
|
221
244
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
222
245
|
return this.evaluateTypeCheck(primary, checkValue);
|
|
223
246
|
}
|
|
224
247
|
default:
|
|
225
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Unsupported expression type: ${primary.type}`, this.getNodeLocation(primary));
|
|
248
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R004: Unsupported expression type: ${primary.type}`, this.getNodeLocation(primary));
|
|
226
249
|
}
|
|
227
250
|
}
|
|
228
251
|
/**
|
|
@@ -409,7 +432,7 @@ function createCoreMixin(Base) {
|
|
|
409
432
|
? 'tuple'
|
|
410
433
|
: 'dict'
|
|
411
434
|
: typeof value;
|
|
412
|
-
throw RuntimeError.fromNode(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Cannot dispatch to ${valueType}`, target);
|
|
435
|
+
throw RuntimeError.fromNode(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Cannot dispatch to ${valueType}`, target);
|
|
413
436
|
}
|
|
414
437
|
case 'PostfixExpr': {
|
|
415
438
|
// Chained methods on pipe value: -> .a.b.c
|
|
@@ -428,7 +451,7 @@ function createCoreMixin(Base) {
|
|
|
428
451
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
429
452
|
return this.evaluateError(target, input);
|
|
430
453
|
default:
|
|
431
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Unsupported pipe target type: ${target.type}`, this.getNodeLocation(target));
|
|
454
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R004: Unsupported pipe target type: ${target.type}`, this.getNodeLocation(target));
|
|
432
455
|
}
|
|
433
456
|
}
|
|
434
457
|
/**
|
|
@@ -564,7 +587,7 @@ function createCoreMixin(Base) {
|
|
|
564
587
|
? 'dict'
|
|
565
588
|
: typeof current;
|
|
566
589
|
const keyType = typeof key;
|
|
567
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Hierarchical dispatch type mismatch: cannot use ${keyType} key with ${currentType} value`, location, { currentType, keyType, key });
|
|
590
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Hierarchical dispatch type mismatch: cannot use ${keyType} key with ${currentType} value`, location, { currentType, keyType, key });
|
|
568
591
|
}
|
|
569
592
|
/**
|
|
570
593
|
* Resolve closure encountered at non-terminal path position.
|
|
@@ -589,7 +612,7 @@ function createCoreMixin(Base) {
|
|
|
589
612
|
// Check if first param is '$' (block-closure) or user-defined (parameterized)
|
|
590
613
|
if (value.params[0].name !== '$') {
|
|
591
614
|
// Parameterized closure at intermediate position: error per EC-8
|
|
592
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Cannot invoke parameterized closure at intermediate path position', location);
|
|
615
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Cannot invoke parameterized closure at intermediate path position', location);
|
|
593
616
|
}
|
|
594
617
|
}
|
|
595
618
|
// Zero-param closure or block-closure: auto-invoke with args = []
|
|
@@ -623,7 +646,7 @@ function createCoreMixin(Base) {
|
|
|
623
646
|
// Check if first param is '$' (block-closure) or user-defined (parameterized)
|
|
624
647
|
if (value.params[0].name !== '$') {
|
|
625
648
|
// Parameterized closure at terminal position: error per EC-9
|
|
626
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Dispatch does not provide arguments for parameterized closure', location);
|
|
649
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Dispatch does not provide arguments for parameterized closure', location);
|
|
627
650
|
}
|
|
628
651
|
}
|
|
629
652
|
// Check if callable has params to determine invocation style
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,10 +8,12 @@
|
|
|
8
8
|
* - evaluateBinaryExpr(node) -> Promise<RillValue>
|
|
9
9
|
* - evaluateUnaryExpr(node) -> Promise<RillValue>
|
|
10
10
|
* - evaluateGroupedExpr(node) -> Promise<RillValue>
|
|
11
|
+
* - resolveExpressionValue(value) -> Promise<RillValue>
|
|
11
12
|
*
|
|
12
13
|
* Error Handling:
|
|
13
14
|
* - Type mismatches in operators throw RuntimeError(RUNTIME_TYPE_ERROR) [EC-22]
|
|
14
15
|
* - Nested expression evaluation errors are propagated [EC-23]
|
|
16
|
+
* - Closure auto-invoke errors are propagated [EC-4, EC-6]
|
|
15
17
|
*
|
|
16
18
|
* @internal
|
|
17
19
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/expressions.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/expressions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA2SH,eAAO,MAAM,gBAAgB,EAA6B,GAAG,CAAC"}
|
|
@@ -8,16 +8,19 @@
|
|
|
8
8
|
* - evaluateBinaryExpr(node) -> Promise<RillValue>
|
|
9
9
|
* - evaluateUnaryExpr(node) -> Promise<RillValue>
|
|
10
10
|
* - evaluateGroupedExpr(node) -> Promise<RillValue>
|
|
11
|
+
* - resolveExpressionValue(value) -> Promise<RillValue>
|
|
11
12
|
*
|
|
12
13
|
* Error Handling:
|
|
13
14
|
* - Type mismatches in operators throw RuntimeError(RUNTIME_TYPE_ERROR) [EC-22]
|
|
14
15
|
* - Nested expression evaluation errors are propagated [EC-23]
|
|
16
|
+
* - Closure auto-invoke errors are propagated [EC-4, EC-6]
|
|
15
17
|
*
|
|
16
18
|
* @internal
|
|
17
19
|
*/
|
|
18
20
|
import { RuntimeError, RILL_ERROR_CODES } from '../../../../types.js';
|
|
19
21
|
import { inferType, isTruthy, deepEquals } from '../../values.js';
|
|
20
22
|
import { createChildContext } from '../../context.js';
|
|
23
|
+
import { isCallable } from '../../callable.js';
|
|
21
24
|
/**
|
|
22
25
|
* ExpressionsMixin implementation.
|
|
23
26
|
*
|
|
@@ -29,36 +32,75 @@ import { createChildContext } from '../../context.js';
|
|
|
29
32
|
* - evaluateExprHead() (internal helper, defined in this mixin)
|
|
30
33
|
* - evaluatePostfixExpr() (from future CoreMixin composition)
|
|
31
34
|
* - evaluatePipeChain() (from future CoreMixin composition)
|
|
35
|
+
* - invokeCallable() (from ClosuresMixin)
|
|
32
36
|
*
|
|
33
37
|
* Methods added:
|
|
34
38
|
* - evaluateBinaryExpr(node) -> Promise<RillValue>
|
|
35
39
|
* - evaluateUnaryExpr(node) -> Promise<RillValue>
|
|
36
40
|
* - evaluateGroupedExpr(node) -> Promise<RillValue>
|
|
41
|
+
* - resolveExpressionValue(value) -> Promise<RillValue>
|
|
37
42
|
* - evaluateExprHead(node) -> Promise<RillValue> (helper)
|
|
38
|
-
* - evaluateExprHeadNumber(node) -> Promise<number> (helper)
|
|
39
43
|
* - evaluateBinaryComparison(left, right, op, node) -> boolean (helper)
|
|
40
44
|
*/
|
|
41
45
|
function createExpressionsMixin(Base) {
|
|
42
46
|
return class ExpressionsEvaluator extends Base {
|
|
47
|
+
/**
|
|
48
|
+
* Resolve expression value, auto-invoking closures when $ is bound.
|
|
49
|
+
*
|
|
50
|
+
* Auto-invokes closures only when ctx.pipeValue is set:
|
|
51
|
+
* - Zero-param closures: invoke with pipeValue = $
|
|
52
|
+
* - Parameterized closures: invoke with args = [$]
|
|
53
|
+
* - Non-callable values: returned unchanged
|
|
54
|
+
*
|
|
55
|
+
* Expression contexts that call resolveExpressionValue:
|
|
56
|
+
* - Unary operand (e.g., `! $closure`)
|
|
57
|
+
* - Binary operands (e.g., `$a && $b`, `$x + $y`)
|
|
58
|
+
*
|
|
59
|
+
* Excluded contexts (no auto-invoke):
|
|
60
|
+
* - Capture target (`:> $var`)
|
|
61
|
+
* - Direct pipe target (`-> $fn`)
|
|
62
|
+
* - Function call arguments (`func($closure)`)
|
|
63
|
+
*
|
|
64
|
+
* Reference: variables.ts:720-733 (property-style auto-invoke)
|
|
65
|
+
*/
|
|
66
|
+
async resolveExpressionValue(value) {
|
|
67
|
+
// Auto-invoke only when $ is bound (pipeValue set)
|
|
68
|
+
if (!isCallable(value) || this.ctx.pipeValue === null) {
|
|
69
|
+
return value;
|
|
70
|
+
}
|
|
71
|
+
// Callable and $ is bound: auto-invoke
|
|
72
|
+
// Zero-param closures: invoke with pipeValue = $
|
|
73
|
+
// Parameterized closures: invoke with args = [$]
|
|
74
|
+
const args = value.kind === 'script' && value.params.length === 0
|
|
75
|
+
? []
|
|
76
|
+
: [this.ctx.pipeValue];
|
|
77
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
78
|
+
return await this.invokeCallable(value, args, undefined);
|
|
79
|
+
}
|
|
43
80
|
/**
|
|
44
81
|
* Evaluate binary expression: left op right.
|
|
45
82
|
* Handles arithmetic, comparison, and logical operators.
|
|
83
|
+
* Auto-invokes closures when $ is bound.
|
|
46
84
|
*/
|
|
47
85
|
async evaluateBinaryExpr(node) {
|
|
48
86
|
const { op } = node;
|
|
49
87
|
// Logical operators with short-circuit evaluation
|
|
50
88
|
if (op === '||') {
|
|
51
|
-
const
|
|
89
|
+
const rawLeft = await this.evaluateExprHead(node.left);
|
|
90
|
+
const left = await this.resolveExpressionValue(rawLeft);
|
|
52
91
|
if (isTruthy(left))
|
|
53
92
|
return true;
|
|
54
|
-
const
|
|
93
|
+
const rawRight = await this.evaluateExprHead(node.right);
|
|
94
|
+
const right = await this.resolveExpressionValue(rawRight);
|
|
55
95
|
return isTruthy(right);
|
|
56
96
|
}
|
|
57
97
|
if (op === '&&') {
|
|
58
|
-
const
|
|
98
|
+
const rawLeft = await this.evaluateExprHead(node.left);
|
|
99
|
+
const left = await this.resolveExpressionValue(rawLeft);
|
|
59
100
|
if (!isTruthy(left))
|
|
60
101
|
return false;
|
|
61
|
-
const
|
|
102
|
+
const rawRight = await this.evaluateExprHead(node.right);
|
|
103
|
+
const right = await this.resolveExpressionValue(rawRight);
|
|
62
104
|
return isTruthy(right);
|
|
63
105
|
}
|
|
64
106
|
// Comparison operators - work on any values, return boolean
|
|
@@ -68,13 +110,26 @@ function createExpressionsMixin(Base) {
|
|
|
68
110
|
op === '>' ||
|
|
69
111
|
op === '<=' ||
|
|
70
112
|
op === '>=') {
|
|
71
|
-
const
|
|
72
|
-
const
|
|
113
|
+
const rawLeft = await this.evaluateExprHead(node.left);
|
|
114
|
+
const left = await this.resolveExpressionValue(rawLeft);
|
|
115
|
+
const rawRight = await this.evaluateExprHead(node.right);
|
|
116
|
+
const right = await this.resolveExpressionValue(rawRight);
|
|
73
117
|
return this.evaluateBinaryComparison(left, right, op, node);
|
|
74
118
|
}
|
|
75
119
|
// Arithmetic operators - require numbers
|
|
76
|
-
|
|
77
|
-
const
|
|
120
|
+
// Auto-invoke closures before checking type
|
|
121
|
+
const rawLeft = await this.evaluateExprHead(node.left);
|
|
122
|
+
const resolvedLeft = await this.resolveExpressionValue(rawLeft);
|
|
123
|
+
if (typeof resolvedLeft !== 'number') {
|
|
124
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Arithmetic requires number, got ${inferType(resolvedLeft)}`, node.left.span.start);
|
|
125
|
+
}
|
|
126
|
+
const left = resolvedLeft;
|
|
127
|
+
const rawRight = await this.evaluateExprHead(node.right);
|
|
128
|
+
const resolvedRight = await this.resolveExpressionValue(rawRight);
|
|
129
|
+
if (typeof resolvedRight !== 'number') {
|
|
130
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Arithmetic requires number, got ${inferType(resolvedRight)}`, node.right.span.start);
|
|
131
|
+
}
|
|
132
|
+
const right = resolvedRight;
|
|
78
133
|
switch (op) {
|
|
79
134
|
case '+':
|
|
80
135
|
return left + right;
|
|
@@ -84,12 +139,12 @@ function createExpressionsMixin(Base) {
|
|
|
84
139
|
return left * right;
|
|
85
140
|
case '/':
|
|
86
141
|
if (right === 0) {
|
|
87
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Division by zero', node.span.start);
|
|
142
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Division by zero', node.span.start);
|
|
88
143
|
}
|
|
89
144
|
return left / right;
|
|
90
145
|
case '%':
|
|
91
146
|
if (right === 0) {
|
|
92
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Modulo by zero', node.span.start);
|
|
147
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Modulo by zero', node.span.start);
|
|
93
148
|
}
|
|
94
149
|
return left % right;
|
|
95
150
|
}
|
|
@@ -127,27 +182,36 @@ function createExpressionsMixin(Base) {
|
|
|
127
182
|
? left <= right
|
|
128
183
|
: left >= right;
|
|
129
184
|
}
|
|
130
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Cannot compare ${inferType(left)} with ${inferType(right)} using ${op}`, node.span.start);
|
|
185
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Cannot compare ${inferType(left)} with ${inferType(right)} using ${op}`, node.span.start);
|
|
131
186
|
}
|
|
132
187
|
}
|
|
133
188
|
/**
|
|
134
189
|
* Evaluate unary expression: -operand or !operand.
|
|
190
|
+
* Auto-invokes closures when $ is bound.
|
|
135
191
|
*/
|
|
136
192
|
async evaluateUnaryExpr(node) {
|
|
137
193
|
if (node.op === '!') {
|
|
138
|
-
const
|
|
139
|
-
|
|
194
|
+
const rawValue = await this.evaluateExprHead(node.operand);
|
|
195
|
+
const value = await this.resolveExpressionValue(rawValue);
|
|
196
|
+
if (typeof value !== 'boolean') {
|
|
197
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Negation operator (!) requires boolean operand, got ${inferType(value)}`, node.span.start);
|
|
198
|
+
}
|
|
199
|
+
return !value;
|
|
140
200
|
}
|
|
141
201
|
// Unary minus
|
|
142
202
|
const operand = node.operand;
|
|
143
203
|
if (operand.type === 'UnaryExpr') {
|
|
144
204
|
const inner = await this.evaluateUnaryExpr(operand);
|
|
145
205
|
if (typeof inner !== 'number') {
|
|
146
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `
|
|
206
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Arithmetic requires number, got ${inferType(inner)}`, node.span.start);
|
|
147
207
|
}
|
|
148
208
|
return -inner;
|
|
149
209
|
}
|
|
150
|
-
const
|
|
210
|
+
const rawValue = await this.evaluateExprHead(operand);
|
|
211
|
+
const value = await this.resolveExpressionValue(rawValue);
|
|
212
|
+
if (typeof value !== 'number') {
|
|
213
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Arithmetic requires number, got ${inferType(value)}`, node.span.start);
|
|
214
|
+
}
|
|
151
215
|
return -value;
|
|
152
216
|
}
|
|
153
217
|
/**
|
|
@@ -165,17 +229,6 @@ function createExpressionsMixin(Base) {
|
|
|
165
229
|
return this.evaluatePostfixExpr(node);
|
|
166
230
|
}
|
|
167
231
|
}
|
|
168
|
-
/**
|
|
169
|
-
* Evaluate expression head, requiring a number result.
|
|
170
|
-
* Helper for arithmetic operators.
|
|
171
|
-
*/
|
|
172
|
-
async evaluateExprHeadNumber(node) {
|
|
173
|
-
const value = await this.evaluateExprHead(node);
|
|
174
|
-
if (typeof value !== 'number') {
|
|
175
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Arithmetic requires number, got ${inferType(value)}`, node.span.start);
|
|
176
|
-
}
|
|
177
|
-
return value;
|
|
178
|
-
}
|
|
179
232
|
/**
|
|
180
233
|
* Evaluate grouped expression: (expression).
|
|
181
234
|
* Provides scoping - captures inside are local and not visible outside.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/expressions.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/expressions.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,26 +52,26 @@ function createExtractionMixin(Base) {
|
|
|
52
52
|
if (isKeyPattern) {
|
|
53
53
|
// Dict destructure pattern
|
|
54
54
|
if (!isDictInput) {
|
|
55
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Key destructure requires dict, got ${isList ? 'list' : typeof input}`, node.span.start);
|
|
55
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Key destructure requires dict, got ${isList ? 'list' : typeof input}`, node.span.start);
|
|
56
56
|
}
|
|
57
57
|
for (const elem of node.elements) {
|
|
58
58
|
if (elem.kind === 'skip')
|
|
59
59
|
continue;
|
|
60
60
|
if (elem.kind === 'nested') {
|
|
61
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Nested destructure not supported in dict patterns', elem.span.start);
|
|
61
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Nested destructure not supported in dict patterns', elem.span.start);
|
|
62
62
|
}
|
|
63
63
|
if (elem.kind !== 'keyValue' ||
|
|
64
64
|
elem.key === null ||
|
|
65
65
|
elem.name === null) {
|
|
66
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Dict destructure requires key: $var patterns', elem.span.start);
|
|
66
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Dict destructure requires key: $var patterns', elem.span.start);
|
|
67
67
|
}
|
|
68
68
|
const dictInput = input;
|
|
69
69
|
if (!(elem.key in dictInput)) {
|
|
70
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Key '${elem.key}' not found in dict`, elem.span.start, { key: elem.key, availableKeys: Object.keys(dictInput) });
|
|
70
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R009: Key '${elem.key}' not found in dict`, elem.span.start, { key: elem.key, availableKeys: Object.keys(dictInput) });
|
|
71
71
|
}
|
|
72
72
|
const dictValue = dictInput[elem.key];
|
|
73
73
|
if (dictValue === undefined) {
|
|
74
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Key '${elem.key}' has undefined value`, elem.span.start);
|
|
74
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R009: Key '${elem.key}' has undefined value`, elem.span.start);
|
|
75
75
|
}
|
|
76
76
|
// Note: setVariable will be available from VariablesMixin
|
|
77
77
|
// which is applied before ExtractionMixin in the composition order
|
|
@@ -82,11 +82,11 @@ function createExtractionMixin(Base) {
|
|
|
82
82
|
else {
|
|
83
83
|
// List destructure pattern
|
|
84
84
|
if (!isList) {
|
|
85
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Positional destructure requires list, got ${isDictInput ? 'dict' : typeof input}`, node.span.start);
|
|
85
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Positional destructure requires list, got ${isDictInput ? 'dict' : typeof input}`, node.span.start);
|
|
86
86
|
}
|
|
87
87
|
const listInput = input;
|
|
88
88
|
if (node.elements.length !== listInput.length) {
|
|
89
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Destructure pattern has ${node.elements.length} elements, list has ${listInput.length}`, node.span.start);
|
|
89
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Destructure pattern has ${node.elements.length} elements, list has ${listInput.length}`, node.span.start);
|
|
90
90
|
}
|
|
91
91
|
for (let i = 0; i < node.elements.length; i++) {
|
|
92
92
|
const elem = node.elements[i];
|
|
@@ -101,7 +101,7 @@ function createExtractionMixin(Base) {
|
|
|
101
101
|
continue;
|
|
102
102
|
}
|
|
103
103
|
if (elem.name === null) {
|
|
104
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Invalid destructure element', elem.span.start);
|
|
104
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Invalid destructure element', elem.span.start);
|
|
105
105
|
}
|
|
106
106
|
// Note: setVariable will be available from VariablesMixin
|
|
107
107
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -124,7 +124,7 @@ function createExtractionMixin(Base) {
|
|
|
124
124
|
const isList = Array.isArray(input);
|
|
125
125
|
const isString = typeof input === 'string';
|
|
126
126
|
if (!isList && !isString) {
|
|
127
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Slice requires list or string, got ${isDict(input) ? 'dict' : typeof input}`, node.span.start);
|
|
127
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Slice requires list or string, got ${isDict(input) ? 'dict' : typeof input}`, node.span.start);
|
|
128
128
|
}
|
|
129
129
|
const startBound = node.start
|
|
130
130
|
? await this.evaluateSliceBound(node.start)
|
|
@@ -165,7 +165,7 @@ function createExtractionMixin(Base) {
|
|
|
165
165
|
if (isDict(value)) {
|
|
166
166
|
return createTupleFromDict(value);
|
|
167
167
|
}
|
|
168
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Spread requires list or dict, got ${inferType(value)}`, node.span.start);
|
|
168
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Spread requires list or dict, got ${inferType(value)}`, node.span.start);
|
|
169
169
|
}
|
|
170
170
|
/**
|
|
171
171
|
* Evaluate a slice bound expression (start, stop, or step).
|
|
@@ -173,7 +173,7 @@ function createExtractionMixin(Base) {
|
|
|
173
173
|
*/
|
|
174
174
|
async evaluateSliceBound(bound) {
|
|
175
175
|
if (bound === null) {
|
|
176
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Slice bound is null', undefined);
|
|
176
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Slice bound is null', undefined);
|
|
177
177
|
}
|
|
178
178
|
switch (bound.type) {
|
|
179
179
|
case 'NumberLiteral':
|
|
@@ -184,7 +184,7 @@ function createExtractionMixin(Base) {
|
|
|
184
184
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
185
185
|
const value = this.evaluateVariable(bound);
|
|
186
186
|
if (typeof value !== 'number') {
|
|
187
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Slice bound must be number, got ${typeof value}`, bound.span.start);
|
|
187
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Slice bound must be number, got ${typeof value}`, bound.span.start);
|
|
188
188
|
}
|
|
189
189
|
return value;
|
|
190
190
|
}
|
|
@@ -194,7 +194,7 @@ function createExtractionMixin(Base) {
|
|
|
194
194
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
195
195
|
const value = await this.evaluateExpression(bound.expression);
|
|
196
196
|
if (typeof value !== 'number') {
|
|
197
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Slice bound must be number, got ${typeof value}`, bound.span.start);
|
|
197
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `RILL-R002: Slice bound must be number, got ${typeof value}`, bound.span.start);
|
|
198
198
|
}
|
|
199
199
|
return value;
|
|
200
200
|
}
|
|
@@ -207,7 +207,7 @@ function createExtractionMixin(Base) {
|
|
|
207
207
|
applySlice(input, len, start, stop, step) {
|
|
208
208
|
const actualStep = step ?? 1;
|
|
209
209
|
if (actualStep === 0) {
|
|
210
|
-
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'Slice step cannot be zero', undefined);
|
|
210
|
+
throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, 'RILL-R002: Slice step cannot be zero', undefined);
|
|
211
211
|
}
|
|
212
212
|
const normalizeIndex = (idx, defaultVal, forStep) => {
|
|
213
213
|
if (idx === null)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extraction.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/extraction.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGtE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,GACV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,SAAS,qBAAqB,CAAC,IAAyC;IACtE,OAAO,MAAM,mBAAoB,SAAQ,IAAI;QAC3C;;;;;;WAMG;QACO,mBAAmB,CAC3B,IAAqB,EACrB,KAAgB;YAEhB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACpC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAElC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YAClE,MAAM,YAAY,GAAG,YAAY,EAAE,IAAI,KAAK,UAAU,CAAC;YAEvD,IAAI,YAAY,EAAE,CAAC;gBACjB,2BAA2B;gBAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,MAAM,IAAI,YAAY,CACpB,gBAAgB,CAAC,kBAAkB,EACnC,
|
|
1
|
+
{"version":3,"file":"extraction.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/extraction.ts"],"names":[],"mappings":"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"}
|