@scriptc/compiler 0.0.10 → 0.0.12
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/ambient/scriptc-node-fallback.d.ts +63 -15
- package/ambient/scriptc.d.ts +2 -2
- package/dist/backend/cc.d.ts +2 -2
- package/dist/backend/emission/emit-async.js +1 -1
- package/dist/backend/emission/emit-exprs.js +131 -54
- package/dist/backend/emission/emit-exprs.js.map +1 -1
- package/dist/backend/emission/emit-island.js +1 -1
- package/dist/backend/emission/emit-shapes.js +1 -1
- package/dist/backend/emission/emit-walkers.d.ts +14 -14
- package/dist/backend/emission/emit-walkers.js +44 -44
- package/dist/backend/emission/emit-walkers.js.map +1 -1
- package/dist/backend/emission/emitter.d.ts +3 -3
- package/dist/backend/emission/emitter.js +33 -9
- package/dist/backend/emission/emitter.js.map +1 -1
- package/dist/backend/emission/may-throw.js +1 -1
- package/dist/backend/llvm/dyn.d.ts +10 -10
- package/dist/backend/llvm/dyn.js +26 -26
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.js +156 -47
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/shapes.js +1 -1
- package/dist/backend/llvm/walkers.js +2 -2
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/coverage/surface-manifest.js +16 -2
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +21 -8
- package/dist/diagnostics/diagnostic.js +48 -14
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/frontend/lowering/lib-boundary.js +5 -5
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +12 -12
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-builtins.d.ts +63 -7
- package/dist/frontend/lowering/lower-builtins.js +327 -35
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +4 -4
- package/dist/frontend/lowering/lower-calls.js +104 -70
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +7 -0
- package/dist/frontend/lowering/lower-classes.js +82 -6
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-containers.d.ts +9 -5
- package/dist/frontend/lowering/lower-containers.js +88 -26
- package/dist/frontend/lowering/lower-containers.js.map +1 -1
- package/dist/frontend/lowering/lower-emitter.d.ts +70 -3
- package/dist/frontend/lowering/lower-emitter.js +438 -31
- package/dist/frontend/lowering/lower-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +87 -12
- package/dist/frontend/lowering/lower-exprs.js +630 -125
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +5 -5
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.js +12 -3
- package/dist/frontend/lowering/lower-island.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.d.ts +8 -5
- package/dist/frontend/lowering/lower-modules.js +157 -63
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.d.ts +24 -0
- package/dist/frontend/lowering/lower-namespaces.js +158 -16
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +11 -11
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +1 -1
- package/dist/frontend/lowering/lower-stmts.js +271 -36
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +171 -20
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +27 -10
- package/dist/frontend/lowering/lowerer.js +156 -54
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +44 -0
- package/dist/frontend/lowering/surfaces.js +236 -5
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/npm.d.ts +12 -0
- package/dist/frontend/npm.js +30 -0
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/program.d.ts +25 -0
- package/dist/frontend/program.js +145 -136
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/shared.d.ts +1 -1
- package/dist/frontend/shared.js +8 -8
- package/dist/frontend/shared.js.map +1 -1
- package/dist/frontend/types.d.ts +2 -2
- package/dist/frontend/types.js +15 -15
- package/dist/frontend/types.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +169 -5
- package/dist/index.js.map +1 -1
- package/dist/ir/nodes.d.ts +174 -106
- package/dist/ir/nodes.js +69 -24
- package/dist/ir/nodes.js.map +1 -1
- package/dist/ir/validate.js +55 -36
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/fence-eval.js +12 -2
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/int-infer.d.ts +119 -0
- package/dist/library/int-infer.js +1314 -0
- package/dist/library/int-infer.js.map +1 -0
- package/dist/library/int-infer.test.d.ts +1 -0
- package/dist/library/int-infer.test.js +279 -0
- package/dist/library/int-infer.test.js.map +1 -0
- package/dist/library/profile.d.ts +34 -5
- package/dist/library/profile.js +77 -13
- package/dist/library/profile.js.map +1 -1
- package/dist/library/sidecar-validate.js +1 -1
- package/dist/library/sidecar-validate.js.map +1 -1
- package/dist/library/sidecar.d.ts +24 -1
- package/dist/library/sidecar.js +163 -16
- package/dist/library/sidecar.js.map +1 -1
- package/package.json +2 -2
- package/surface-manifest.json +210 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../../src/backend/emission/emitter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../../src/backend/emission/emitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -129,7 +129,7 @@ export function computeMayThrow(mod) {
|
|
|
129
129
|
}
|
|
130
130
|
case "jsonStringify": {
|
|
131
131
|
// Composite roots can throw: dyn (a runtime handle inside the
|
|
132
|
-
//
|
|
132
|
+
// dyn), and record/array/union roots whose types are recursive
|
|
133
133
|
// (the circular-structure TypeError). Kind-level conservatism —
|
|
134
134
|
// the emitters place the pending check only for cycle-capable
|
|
135
135
|
// types, and a never-taken caller-side check costs one flag
|
|
@@ -38,7 +38,7 @@ export declare class LlDyn {
|
|
|
38
38
|
constructor(host: DynHost);
|
|
39
39
|
/** The value LLVM type of a dynCheck result / toDyn operand for `t`. */
|
|
40
40
|
private valTy;
|
|
41
|
-
/** Loads a
|
|
41
|
+
/** Loads a dyn node's kind tag (i32 at +8). */
|
|
42
42
|
private kindOf;
|
|
43
43
|
/** Loads the 8-byte payload slot at +16 as the given LLVM type. */
|
|
44
44
|
private payloadOf;
|
|
@@ -58,7 +58,7 @@ export declare class LlDyn {
|
|
|
58
58
|
private strParts;
|
|
59
59
|
/** `call ptr @scr_dyn_retain_v(x)` (+1; immortals skip). */
|
|
60
60
|
private retainDyn;
|
|
61
|
-
/** THE immortal undefined
|
|
61
|
+
/** THE immortal undefined dyn value (borrowed — retain to own). */
|
|
62
62
|
private undef;
|
|
63
63
|
/** scr_dyn_obj_get with a compile-time key: borrowed member or null. */
|
|
64
64
|
private objGetLit;
|
|
@@ -73,31 +73,31 @@ export declare class LlDyn {
|
|
|
73
73
|
private pendingBail;
|
|
74
74
|
/** Short human description of a dynCheck target for error messages. */
|
|
75
75
|
dynDesc(t: IrType): string;
|
|
76
|
-
/** `sc_dm_<n>(ptr d) -> i1` — does this
|
|
76
|
+
/** `sc_dm_<n>(ptr d) -> i1` — does this dyn fit T? Never throws. */
|
|
77
77
|
dynMatchHelper(t: IrType): string;
|
|
78
|
-
/** `sc_dc_<n>(ptr d, ptr path) -> T` — validate the
|
|
78
|
+
/** `sc_dc_<n>(ptr d, ptr path) -> T` — validate the checked-dynamic tree against T and
|
|
79
79
|
* BUILD the typed value (+1), or throw the catchable path-annotated
|
|
80
80
|
* TypeError and return a dummy with the pending flag set. */
|
|
81
81
|
dynCheckHelper(t: IrType): string;
|
|
82
|
-
/** `sc_td_<n>(<T> v) -> ptr` — build a fresh dyn
|
|
82
|
+
/** `sc_td_<n>(<T> v) -> ptr` — build a fresh dyn value from a
|
|
83
83
|
* static one (+1), DEEP-COPYING composites. Borrows the operand.
|
|
84
84
|
* Never throws. */
|
|
85
85
|
toDynHelper(t: IrType): string;
|
|
86
|
-
/** The
|
|
86
|
+
/** The checked-dynamic tree-promise settle adapter for one fulfillment payload type —
|
|
87
87
|
* promiseDynAdapterHelper (emit-walkers.ts), ported:
|
|
88
88
|
* `void sc_pda_<n>(ptr %dst, ptr %src)` reads src's fulfilled payload
|
|
89
|
-
* by its compile-time kind, converts it to a
|
|
89
|
+
* by its compile-time kind, converts it to a dyn value, and fulfills
|
|
90
90
|
* dst with it (scr_dyn_new_promise_adapting's callback; rejections
|
|
91
91
|
* never reach an adapter — the runtime copies them raw). Interned per
|
|
92
92
|
* inner typeKey. */
|
|
93
93
|
private promiseDynAdapterHelper;
|
|
94
|
-
/** Node's String() over a
|
|
94
|
+
/** Node's String() over a dyn value — sc_ds (+1 result) over the
|
|
95
95
|
* recursive sc_ds_buf walker. Borrowed operand; never throws. */
|
|
96
96
|
dynToStrHelper(): string;
|
|
97
97
|
/** A catch binding flowing into an `unknown` slot: the typed→unknown
|
|
98
98
|
* deep-copy stance over the exception snapshot's runtime kind. */
|
|
99
99
|
caughtToDynHelper(): string;
|
|
100
|
-
/** `sc_dyn_key_get(ptr d, ptr k, i1 opt) -> ptr` — d[k] on a
|
|
100
|
+
/** `sc_dyn_key_get(ptr d, ptr k, i1 opt) -> ptr` — d[k] on a dyn value.
|
|
101
101
|
* Result +1; throws on non-optional nullish receivers. */
|
|
102
102
|
dynKeyGetHelper(): string;
|
|
103
103
|
dynDestrCheckHelper(): string;
|
|
@@ -108,7 +108,7 @@ export declare class LlDyn {
|
|
|
108
108
|
private toDynExpr;
|
|
109
109
|
/** The call thunk for one closure signature: validate each dyn arg
|
|
110
110
|
* into the declared param type, call through the closure, convert the
|
|
111
|
-
* result back to a
|
|
111
|
+
* result back to a dyn value (+1). */
|
|
112
112
|
dynFuncThunkHelper(t: IrType & {
|
|
113
113
|
kind: "func";
|
|
114
114
|
}): string;
|
package/dist/backend/llvm/dyn.js
CHANGED
|
@@ -55,8 +55,8 @@ export class LlDyn {
|
|
|
55
55
|
valTy(t) {
|
|
56
56
|
return t.kind === "f64" ? "double" : t.kind === "bool" ? "i1" : "ptr";
|
|
57
57
|
}
|
|
58
|
-
/* ──
|
|
59
|
-
/** Loads a
|
|
58
|
+
/* ── dyn node plumbing ─────────────────────────────────────────────── */
|
|
59
|
+
/** Loads a dyn node's kind tag (i32 at +8). */
|
|
60
60
|
kindOf(B, d) {
|
|
61
61
|
const p = B.tmp();
|
|
62
62
|
const k = B.tmp();
|
|
@@ -143,7 +143,7 @@ export class LlDyn {
|
|
|
143
143
|
B.line(`${t} = call ptr @scr_dyn_retain_v(ptr ${x})`);
|
|
144
144
|
return t;
|
|
145
145
|
}
|
|
146
|
-
/** THE immortal undefined
|
|
146
|
+
/** THE immortal undefined dyn value (borrowed — retain to own). */
|
|
147
147
|
undef(B) {
|
|
148
148
|
this.host.declare(`declare ptr @scr_dyn_undefined()`);
|
|
149
149
|
const t = B.tmp();
|
|
@@ -273,7 +273,7 @@ export class LlDyn {
|
|
|
273
273
|
}
|
|
274
274
|
}
|
|
275
275
|
/* ── dynMatchHelper (emit-walkers.ts, ported) ──────────────────────── */
|
|
276
|
-
/** `sc_dm_<n>(ptr d) -> i1` — does this
|
|
276
|
+
/** `sc_dm_<n>(ptr d) -> i1` — does this dyn fit T? Never throws. */
|
|
277
277
|
dynMatchHelper(t) {
|
|
278
278
|
const key = typeKey(t);
|
|
279
279
|
const existing = this.dynMatchers.get(key);
|
|
@@ -305,7 +305,7 @@ export class LlDyn {
|
|
|
305
305
|
kindIs(DK.UNDEF);
|
|
306
306
|
break;
|
|
307
307
|
case "dyn":
|
|
308
|
-
// An `unknown` target: every
|
|
308
|
+
// An `unknown` target: every dyn value fits, undefined included.
|
|
309
309
|
B.terminate(`ret i1 true`);
|
|
310
310
|
break;
|
|
311
311
|
case "bytes":
|
|
@@ -466,7 +466,7 @@ export class LlDyn {
|
|
|
466
466
|
return name;
|
|
467
467
|
}
|
|
468
468
|
/* ── dynCheckHelper (emit-walkers.ts, ported) ──────────────────────── */
|
|
469
|
-
/** `sc_dc_<n>(ptr d, ptr path) -> T` — validate the
|
|
469
|
+
/** `sc_dc_<n>(ptr d, ptr path) -> T` — validate the checked-dynamic tree against T and
|
|
470
470
|
* BUILD the typed value (+1), or throw the catchable path-annotated
|
|
471
471
|
* TypeError and return a dummy with the pending flag set. */
|
|
472
472
|
dynCheckHelper(t) {
|
|
@@ -518,7 +518,7 @@ export class LlDyn {
|
|
|
518
518
|
break;
|
|
519
519
|
}
|
|
520
520
|
case "dyn": {
|
|
521
|
-
// An `unknown` slot: the
|
|
521
|
+
// An `unknown` slot: the checked-dynamic tree subtree passes through as-is.
|
|
522
522
|
const r = this.retainDyn(B, "%d");
|
|
523
523
|
B.terminate(`ret ptr ${r}`);
|
|
524
524
|
break;
|
|
@@ -536,15 +536,15 @@ export class LlDyn {
|
|
|
536
536
|
}
|
|
537
537
|
case "object": {
|
|
538
538
|
// The %Error extraction (an instanceof-Error narrow on unknown):
|
|
539
|
-
// validate the
|
|
539
|
+
// validate the checked-dynamic tree's error encoding — the reserved "%error" marker
|
|
540
540
|
// caughtToDyn builds — and extract through the runtime's IDENTITY
|
|
541
|
-
// CACHE (scr_error_from_dyn): a
|
|
541
|
+
// CACHE (scr_error_from_dyn): a dyn error that came from a runtime
|
|
542
542
|
// ScrError answers that very instance, so out-and-back crossings
|
|
543
543
|
// compare reference-equal (the tracing suite's shape); alien
|
|
544
544
|
// %error objects rebuild once and cache the pair. The C walker's
|
|
545
545
|
// arm exactly.
|
|
546
546
|
if (t.className !== "%Error") {
|
|
547
|
-
throw new Error(`llvm emitter bug: dynCheck of class ${t.className} (only %Error extracts from the
|
|
547
|
+
throw new Error(`llvm emitter bug: dynCheck of class ${t.className} (only %Error extracts from the checked-dynamic tree)`);
|
|
548
548
|
}
|
|
549
549
|
const kd = this.kindOf(B, "%d");
|
|
550
550
|
const isObj = B.tmp();
|
|
@@ -652,7 +652,7 @@ export class LlDyn {
|
|
|
652
652
|
const m = this.objGetLit(B, "%d", f.name);
|
|
653
653
|
if (f.type.kind === "dyn") {
|
|
654
654
|
// An `unknown` field: a present key passes through, a missing
|
|
655
|
-
// one IS the undefined
|
|
655
|
+
// one IS the undefined dyn value.
|
|
656
656
|
const has = B.tmp();
|
|
657
657
|
B.line(`${has} = icmp ne ptr ${m}, null`);
|
|
658
658
|
const sel = B.tmp();
|
|
@@ -917,7 +917,7 @@ export class LlDyn {
|
|
|
917
917
|
return name;
|
|
918
918
|
}
|
|
919
919
|
/* ── toDynHelper (emit-walkers.ts, ported) ─────────────────────────── */
|
|
920
|
-
/** `sc_td_<n>(<T> v) -> ptr` — build a fresh dyn
|
|
920
|
+
/** `sc_td_<n>(<T> v) -> ptr` — build a fresh dyn value from a
|
|
921
921
|
* static one (+1), DEEP-COPYING composites. Borrows the operand.
|
|
922
922
|
* Never throws. */
|
|
923
923
|
toDynHelper(t) {
|
|
@@ -952,7 +952,7 @@ export class LlDyn {
|
|
|
952
952
|
break;
|
|
953
953
|
}
|
|
954
954
|
case "object": {
|
|
955
|
-
// %Error only (canConvertToDyn's gate): the
|
|
955
|
+
// %Error only (canConvertToDyn's gate): the checked-dynamic tree's error encoding.
|
|
956
956
|
if (t.className !== "%Error") {
|
|
957
957
|
throw new Error(`llvm emitter bug: to-dyn of class ${t.className}`);
|
|
958
958
|
}
|
|
@@ -995,7 +995,7 @@ export class LlDyn {
|
|
|
995
995
|
};
|
|
996
996
|
host.declare(`declare void @scr_dyn_obj_set(ptr, ptr, i64, ptr)`);
|
|
997
997
|
// CYCLE-CAPABLE shapes guard the deep copy: enter TRAPS on a value
|
|
998
|
-
// already being converted (a cyclic value has no finite
|
|
998
|
+
// already being converted (a cyclic value has no finite dyn copy —
|
|
999
999
|
// SEMANTICS.md; the C emitter's contract exactly).
|
|
1000
1000
|
const cyclicRec = traceAdapter(host, t) !== null;
|
|
1001
1001
|
if (cyclicRec) {
|
|
@@ -1265,7 +1265,7 @@ export class LlDyn {
|
|
|
1265
1265
|
case "promise": {
|
|
1266
1266
|
// Promises box by REFERENCE (SCR_DYN_PROMISE — identity is the
|
|
1267
1267
|
// promise): promise<dyn> carries its ScrPromise directly (the
|
|
1268
|
-
// payload is already a
|
|
1268
|
+
// payload is already a dyn value); any other inner boxes an
|
|
1269
1269
|
// ADAPTER promise whose settle callback converts the payload
|
|
1270
1270
|
// (rejections copy raw inside the runtime's cb-waiter machinery).
|
|
1271
1271
|
if (t.inner.kind === "dyn") {
|
|
@@ -1300,10 +1300,10 @@ export class LlDyn {
|
|
|
1300
1300
|
this.defs.push(`define internal ptr @${name}(${this.valTy(t)} %v) ${FN_ATTRS} { ; to-dyn ${key}`, B.render(), `}`, ``);
|
|
1301
1301
|
return name;
|
|
1302
1302
|
}
|
|
1303
|
-
/** The
|
|
1303
|
+
/** The checked-dynamic tree-promise settle adapter for one fulfillment payload type —
|
|
1304
1304
|
* promiseDynAdapterHelper (emit-walkers.ts), ported:
|
|
1305
1305
|
* `void sc_pda_<n>(ptr %dst, ptr %src)` reads src's fulfilled payload
|
|
1306
|
-
* by its compile-time kind, converts it to a
|
|
1306
|
+
* by its compile-time kind, converts it to a dyn value, and fulfills
|
|
1307
1307
|
* dst with it (scr_dyn_new_promise_adapting's callback; rejections
|
|
1308
1308
|
* never reach an adapter — the runtime copies them raw). Interned per
|
|
1309
1309
|
* inner typeKey. */
|
|
@@ -1387,7 +1387,7 @@ export class LlDyn {
|
|
|
1387
1387
|
return name;
|
|
1388
1388
|
}
|
|
1389
1389
|
/* ── the dyn ToString pair (dynToStrHelper, ported) ────────────────── */
|
|
1390
|
-
/** Node's String() over a
|
|
1390
|
+
/** Node's String() over a dyn value — sc_ds (+1 result) over the
|
|
1391
1391
|
* recursive sc_ds_buf walker. Borrowed operand; never throws. */
|
|
1392
1392
|
dynToStrHelper() {
|
|
1393
1393
|
if (this.dynToStrFn)
|
|
@@ -1485,7 +1485,7 @@ export class LlDyn {
|
|
|
1485
1485
|
}
|
|
1486
1486
|
B.startBlock(labels.get(DK.OBJ));
|
|
1487
1487
|
{
|
|
1488
|
-
// The
|
|
1488
|
+
// The checked-dynamic tree's error encoding renders Error.prototype.toString;
|
|
1489
1489
|
// plain objects are "[object Object]".
|
|
1490
1490
|
const marker = this.objGetLit(B, "%d", "%error");
|
|
1491
1491
|
const isErr = B.tmp();
|
|
@@ -1757,14 +1757,14 @@ export class LlDyn {
|
|
|
1757
1757
|
B.condBr(isErr, lErr, lDef);
|
|
1758
1758
|
B.startBlock(lErr);
|
|
1759
1759
|
// The identity-cached crossing (scr_json.c): one error instance,
|
|
1760
|
-
// one
|
|
1760
|
+
// one dyn node — the C walker's arm exactly.
|
|
1761
1761
|
host.declare(`declare ptr @scr_dyn_from_error(ptr)`);
|
|
1762
1762
|
const r = B.tmp();
|
|
1763
1763
|
B.line(`${r} = call ptr @scr_dyn_from_error(ptr ${p})`);
|
|
1764
1764
|
B.terminate(`ret ptr ${r}`);
|
|
1765
1765
|
}
|
|
1766
1766
|
B.startBlock(lDef);
|
|
1767
|
-
// SCR_EXC_REF: a thrown
|
|
1767
|
+
// SCR_EXC_REF: a thrown dyn value passes back BY REFERENCE (identity
|
|
1768
1768
|
// with every other holder — the dyn adapters discriminate); non-dyn
|
|
1769
1769
|
// REF and non-Error objects keep the "[object Object]" approximation
|
|
1770
1770
|
// — truthy, typeof "object", fields unreadable.
|
|
@@ -1797,7 +1797,7 @@ export class LlDyn {
|
|
|
1797
1797
|
return name;
|
|
1798
1798
|
}
|
|
1799
1799
|
/* ── the keyed read (dynKeyGetHelper, ported) ──────────────────────── */
|
|
1800
|
-
/** `sc_dyn_key_get(ptr d, ptr k, i1 opt) -> ptr` — d[k] on a
|
|
1800
|
+
/** `sc_dyn_key_get(ptr d, ptr k, i1 opt) -> ptr` — d[k] on a dyn value.
|
|
1801
1801
|
* Result +1; throws on non-optional nullish receivers. */
|
|
1802
1802
|
dynKeyGetHelper() {
|
|
1803
1803
|
const memoKey = "%dynKeyGet";
|
|
@@ -2488,7 +2488,7 @@ export class LlDyn {
|
|
|
2488
2488
|
}
|
|
2489
2489
|
/** The call thunk for one closure signature: validate each dyn arg
|
|
2490
2490
|
* into the declared param type, call through the closure, convert the
|
|
2491
|
-
* result back to a
|
|
2491
|
+
* result back to a dyn value (+1). */
|
|
2492
2492
|
dynFuncThunkHelper(t) {
|
|
2493
2493
|
const key = typeKey(t);
|
|
2494
2494
|
const existing = this.dynFuncThunks.get(key);
|
|
@@ -2500,7 +2500,7 @@ export class LlDyn {
|
|
|
2500
2500
|
const B = new BlockBuilder();
|
|
2501
2501
|
const argNames = [];
|
|
2502
2502
|
t.params.forEach((p, i) => {
|
|
2503
|
-
// JS arity: a missing argument IS the undefined
|
|
2503
|
+
// JS arity: a missing argument IS the undefined dyn value.
|
|
2504
2504
|
const adSlot = B.slot();
|
|
2505
2505
|
B.entryAllocas.push(`${adSlot} = alloca ptr`);
|
|
2506
2506
|
const has = B.tmp();
|
|
@@ -2527,7 +2527,7 @@ export class LlDyn {
|
|
|
2527
2527
|
argNames.push(this.retainDyn(B, ad));
|
|
2528
2528
|
}
|
|
2529
2529
|
else if (p.kind === "jsval") {
|
|
2530
|
-
// A checker-'any' param: the
|
|
2530
|
+
// A checker-'any' param: the dyn argument enters the island —
|
|
2531
2531
|
// wrapped cells unwrap by reference, data deep-copies, boxed
|
|
2532
2532
|
// functions cross through the host shim; a kind with no crossing
|
|
2533
2533
|
// throws the catchable TypeError (null + pending).
|
|
@@ -2571,7 +2571,7 @@ export class LlDyn {
|
|
|
2571
2571
|
argNames.push(a);
|
|
2572
2572
|
}
|
|
2573
2573
|
});
|
|
2574
|
-
// VARIADIC (rest-marked) signatures: one extra trailing
|
|
2574
|
+
// VARIADIC (rest-marked) signatures: one extra trailing dyn-array
|
|
2575
2575
|
// param carries the call's arguments from index params.length on.
|
|
2576
2576
|
let rest = null;
|
|
2577
2577
|
if (t.rest) {
|