@scriptc/compiler 0.1.2 → 0.1.3
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 +59 -14
- package/dist/backend/c/async.d.ts +5 -0
- package/dist/backend/c/async.js +57 -0
- package/dist/backend/c/async.js.map +1 -1
- package/dist/backend/c/c-emitter.d.ts +3 -0
- package/dist/backend/c/c-emitter.js +15 -8
- package/dist/backend/c/c-emitter.js.map +1 -1
- package/dist/backend/c/exprs.d.ts +8 -1
- package/dist/backend/c/exprs.js +152 -9
- package/dist/backend/c/exprs.js.map +1 -1
- package/dist/backend/c/shapes.js +15 -13
- package/dist/backend/c/shapes.js.map +1 -1
- package/dist/backend/c/types.d.ts +4 -0
- package/dist/backend/c/types.js +18 -1
- package/dist/backend/c/types.js.map +1 -1
- package/dist/backend/c/types.test.js +8 -1
- package/dist/backend/c/types.test.js.map +1 -1
- package/dist/backend/c/walkers.js +32 -11
- package/dist/backend/c/walkers.js.map +1 -1
- package/dist/backend/json-literal.d.ts +7 -0
- package/dist/backend/json-literal.js +17 -0
- package/dist/backend/json-literal.js.map +1 -0
- package/dist/backend/json-literal.test.d.ts +1 -0
- package/dist/backend/json-literal.test.js +17 -0
- package/dist/backend/json-literal.test.js.map +1 -0
- package/dist/backend/link-plan.d.ts +1 -1
- package/dist/backend/link-plan.js +5 -1
- package/dist/backend/link-plan.js.map +1 -1
- package/dist/backend/llvm/classes.js +8 -7
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/common.d.ts +4 -0
- package/dist/backend/llvm/common.js +6 -0
- package/dist/backend/llvm/common.js.map +1 -1
- package/dist/backend/llvm/common.test.d.ts +1 -0
- package/dist/backend/llvm/common.test.js +9 -0
- package/dist/backend/llvm/common.test.js.map +1 -0
- package/dist/backend/llvm/dyn.d.ts +4 -0
- package/dist/backend/llvm/dyn.js +24 -13
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.js +35 -7
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +4 -0
- package/dist/backend/llvm/expr-dynamic.js +9 -0
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +8 -0
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-records.js +3 -3
- package/dist/backend/llvm/expr-records.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +2 -1
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/expr-stream-callbacks.d.ts +3 -0
- package/dist/backend/llvm/expr-stream-callbacks.js +53 -0
- package/dist/backend/llvm/expr-stream-callbacks.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +22 -0
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +50 -5
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +46 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/shapes.js +10 -8
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/walkers.js +7 -5
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/native-link-info.d.ts +2 -1
- package/dist/backend/native-link-info.js +4 -0
- package/dist/backend/native-link-info.js.map +1 -1
- package/dist/backend/native-link-info.test.js +24 -1
- package/dist/backend/native-link-info.test.js.map +1 -1
- package/dist/backend/native-toolchain.d.ts +8 -6
- package/dist/backend/native-toolchain.js +28 -13
- package/dist/backend/native-toolchain.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +36 -1
- package/dist/backend/native-toolchain.test.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +1 -1
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +1 -0
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/targets.d.ts +5 -0
- package/dist/backend/targets.js +9 -0
- package/dist/backend/targets.js.map +1 -1
- package/dist/backend/targets.test.js +6 -1
- package/dist/backend/targets.test.js.map +1 -1
- package/dist/coverage/surface-manifest.js +1 -0
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/diagnostics/diagnostic.js +3 -3
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +1 -0
- package/dist/executable/executable-cache.js +1 -0
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +1 -0
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +0 -4
- package/dist/frontend/lowering/containers/bytes.js +112 -28
- package/dist/frontend/lowering/containers/bytes.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +16 -10
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-builtins.d.ts +22 -21
- package/dist/frontend/lowering/lower-builtins.js +392 -67
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +8 -6
- package/dist/frontend/lowering/lower-calls.js +110 -12
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-containers.js +12 -8
- package/dist/frontend/lowering/lower-containers.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.js +104 -5
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +7 -0
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +8 -0
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +5 -4
- package/dist/frontend/lowering/lower-stmts.js +23 -6
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +4 -4
- package/dist/frontend/lowering/lowerer.js +5 -5
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +5 -3
- package/dist/frontend/lowering/surfaces.js +33 -13
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/npm-static-declarations.js +27 -14
- package/dist/frontend/npm-static-declarations.js.map +1 -1
- package/dist/frontend/npm-static-declarations.test.js +10 -0
- package/dist/frontend/npm-static-declarations.test.js.map +1 -1
- package/dist/frontend/program.js +18 -2
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.d.ts +22 -7
- package/dist/frontend/resolve.js +83 -22
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/resolve.test.js +21 -1
- package/dist/frontend/resolve.test.js.map +1 -1
- package/dist/frontend/type-mapper.js +52 -10
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/ir/analysis.js +1 -0
- package/dist/ir/analysis.js.map +1 -1
- package/dist/ir/ir.d.ts +67 -24
- package/dist/ir/ir.js +81 -3
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/serialize.d.ts +1 -1
- package/dist/ir/serialize.js +1 -1
- package/dist/ir/validate.js +77 -5
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/int-infer.test.js +4 -4
- package/dist/library/library-cache.d.ts +1 -0
- package/dist/library/library-cache.js +1 -0
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +18 -5
- package/dist/library/library-cache.test.js.map +1 -1
- package/package.json +17 -17
- package/surface-manifest.json +32 -17
package/dist/backend/c/shapes.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InternalCompilerError } from "../../errors.js";
|
|
2
2
|
import { RUNTIME_EMITTER_CLASS, RUNTIME_ERROR_CLASSES, RUNTIME_STREAM_CLASSES, isRefCounted, mapOf, STRING } from "../../ir/ir.js";
|
|
3
3
|
import { mangleClassGcFree, mangleClassNew, mangleClassRelease, mangleClassReleaseDirect, mangleClassRetain, mangleClassStruct, mangleClassTrace, mangleCtorThunk, mangleField, mangleFunction, mangleRecordClone, mangleRecordGcFree, mangleRecordNew, mangleRecordRelease, mangleRecordRetain, mangleRecordStruct, mangleRecordTrace, mangleVtAdapter, mangleVtInstance, mangleVtStruct } from "../mangle.js";
|
|
4
|
-
import { boxKindC, cDecl, cType, elemKindC, mapValKindC, releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
4
|
+
import { boxKindC, cCommentText, cDecl, cType, elemKindC, mapValKindC, releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
5
5
|
import { streamRooted } from "../../ir/analysis.js";
|
|
6
6
|
/** The overflow map's C member name on index-signature record structs.
|
|
7
7
|
* User fields mangle to `sc_fld_*`, so no field can collide. */
|
|
@@ -91,11 +91,11 @@ export function emitStructDefs(emitter, out) {
|
|
|
91
91
|
return `scr_map_new(SCR_MAP_KEY_STR, SCR_MAP_VAL_REF, &${rc.retain}, &${rc.release}, ${emitter.traceArgC(v)})`;
|
|
92
92
|
};
|
|
93
93
|
for (const s of shapes) {
|
|
94
|
-
out.push(`typedef struct ${s.struct} ${s.struct}; /* ${s.comment} */`);
|
|
94
|
+
out.push(`typedef struct ${s.struct} ${s.struct}; /* ${cCommentText(s.comment)} */`);
|
|
95
95
|
}
|
|
96
96
|
out.push("");
|
|
97
97
|
for (const s of shapes) {
|
|
98
|
-
out.push(`struct ${s.struct} { /* ${s.comment} */`, ` size_t rc;`);
|
|
98
|
+
out.push(`struct ${s.struct} { /* ${cCommentText(s.comment)} */`, ` size_t rc;`);
|
|
99
99
|
if (inHierarchy(s)) {
|
|
100
100
|
// The hierarchy prefix: base fields follow at identical offsets in
|
|
101
101
|
// every subclass, so vt must sit between rc and the field list.
|
|
@@ -116,7 +116,7 @@ export function emitStructDefs(emitter, out) {
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
for (const f of s.fields) {
|
|
119
|
-
out.push(` ${cDecl(f.type, mangleField(f.name))}; /* ${f.name} */`);
|
|
119
|
+
out.push(` ${cDecl(f.type, mangleField(f.name))}; /* ${cCommentText(f.name)} */`);
|
|
120
120
|
}
|
|
121
121
|
if (s.indexValue) {
|
|
122
122
|
out.push(` ScrMap *${OVERFLOW_MEMBER}; /* [key: string] overflow (string-keyed) */`);
|
|
@@ -178,12 +178,12 @@ export function emitStructDefs(emitter, out) {
|
|
|
178
178
|
}
|
|
179
179
|
out.push(` scr_obj_free_note();`, ` scr_cyc_free(o);`, ` } else {`, ` scr_cyc_on_release(o); /* possible cycle root; may collect */`, ` }`, `}`, `static ${s.struct} *${s.newFn}(void) {`, ` ${s.struct} *o = scr_cyc_alloc(sizeof *o, &${s.trace}, &${s.gcFree});`, ` o->rc = 1;`, ...undefFieldInitC(s), ...(s.indexValue ? [` o->${OVERFLOW_MEMBER} = ${overflowNewC(s)};`] : []), ` scr_obj_alloc_note();`, ` return o;`, `}`, ...(s.recordId !== undefined && emitter.recordCloneShapes.has(s.recordId)
|
|
180
180
|
? emitRecordCloneC(s.recordId, s.struct, s.fields, s.newFn)
|
|
181
|
-
: []), `static void ${s.trace}(void *o0, ScrTraceVisit visit, void *ctx) {`, ` ${s.struct} *o = (${s.struct} *)o0;`, ...tracedFields.map((m) => ` visit(o->${m.member}, ctx); /* ${m.name} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0
|
|
181
|
+
: []), `static void ${s.trace}(void *o0, ScrTraceVisit visit, void *ctx) {`, ` ${s.struct} *o = (${s.struct} *)o0;`, ...tracedFields.map((m) => ` visit(o->${m.member}, ctx); /* ${cCommentText(m.name)} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0
|
|
182
182
|
? [
|
|
183
183
|
` ${s.struct} *o = (${s.struct} *)o0;`,
|
|
184
184
|
...untracedRefFields.map((m) => {
|
|
185
185
|
const field = `o->${m.member}`;
|
|
186
|
-
return ` if (${field}) ${releaseCallC(m.type, field)}; /* ${m.name} (acyclic) */`;
|
|
186
|
+
return ` if (${field}) ${releaseCallC(m.type, field)}; /* ${cCommentText(m.name)} (acyclic) */`;
|
|
187
187
|
}),
|
|
188
188
|
]
|
|
189
189
|
: []), ` scr_obj_free_note();`, ` scr_cyc_free(o0);`, `}`, `static void *${s.retain}_v(void *o) { return ${s.retain}((${s.struct} *)o); }`, `static void ${s.release}_v(void *o) { ${s.release}((${s.struct} *)o); }`, ``);
|
|
@@ -257,7 +257,7 @@ export function emitVtableDecls(emitter, out, hierarchyClasses) {
|
|
|
257
257
|
out.push(` ScrVt head;`);
|
|
258
258
|
for (const slot of root.slots) {
|
|
259
259
|
const ret = cType(slot.fn.returnType).trim();
|
|
260
|
-
out.push(` ${ret} (*${slot.member})(${emitter.vtSlotParams(slot, false).join(", ")}); /* ${slot.method} */`);
|
|
260
|
+
out.push(` ${ret} (*${slot.member})(${emitter.vtSlotParams(slot, false).join(", ")}); /* ${cCommentText(slot.method)} */`);
|
|
261
261
|
}
|
|
262
262
|
out.push(`} ${vtt};`);
|
|
263
263
|
}
|
|
@@ -285,8 +285,8 @@ export function emitVtableInstances(emitter, out, hierarchyClasses) {
|
|
|
285
285
|
const vtt = mangleVtStruct(meta.root.def.name);
|
|
286
286
|
const head = `{ ${meta.pre}, ${meta.post}, &${mangleClassReleaseDirect(meta.def.name)} }`;
|
|
287
287
|
const entries = emitter.vtEntriesFor(meta).map(({ slot, impl }) => impl === null
|
|
288
|
-
? `0 /* ${slot.method}: outside the declaring subtree */`
|
|
289
|
-
: `&${mangleVtAdapter(impl.def.name, slot.method)} /* ${slot.method} */`);
|
|
288
|
+
? `0 /* ${cCommentText(slot.method)}: outside the declaring subtree */`
|
|
289
|
+
: `&${mangleVtAdapter(impl.def.name, slot.method)} /* ${cCommentText(slot.method)} */`);
|
|
290
290
|
out.push(`static const ${vtt} ${mangleVtInstance(meta.def.name)} = { /* class ${meta.def.name} */`, ` ${[head, ...entries].join(",\n ")}`, `};`);
|
|
291
291
|
}
|
|
292
292
|
if (hierarchyClasses.length > 0)
|
|
@@ -355,7 +355,7 @@ export function emitHierarchyClassHelpers(emitter, out, meta, s) {
|
|
|
355
355
|
? [` scr_emitter_reg_trace(o->sc_eereg, visit, ctx); /* listener closures */`]
|
|
356
356
|
: []), ...(isStreamRooted
|
|
357
357
|
? [` scr_stream_st_trace(o->sc_st, visit, ctx); /* stream state closures/pipes */`]
|
|
358
|
-
: []), ...tracedFields.map((f) => ` visit(o->${mangleField(f.name)}, ctx); /* ${f.name} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0 || emitterRooted
|
|
358
|
+
: []), ...tracedFields.map((f) => ` visit(o->${mangleField(f.name)}, ctx); /* ${cCommentText(f.name)} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0 || emitterRooted
|
|
359
359
|
? [` ${s.struct} *o = (${s.struct} *)o0;`]
|
|
360
360
|
: []), ...(emitterRooted
|
|
361
361
|
? [` scr_emitter_reg_gcfree(o->sc_eereg); /* EventEmitter prefix */`]
|
|
@@ -363,7 +363,7 @@ export function emitHierarchyClassHelpers(emitter, out, meta, s) {
|
|
|
363
363
|
? [` scr_stream_st_gcfree(o->sc_st); /* stream state (ScrStream prefix) */`]
|
|
364
364
|
: []), ...untracedRefFields.map((f) => {
|
|
365
365
|
const field = `o->${mangleField(f.name)}`;
|
|
366
|
-
return ` if (${field}) ${releaseCallC(f.type, field)}; /* ${f.name} (acyclic) */`;
|
|
366
|
+
return ` if (${field}) ${releaseCallC(f.type, field)}; /* ${cCommentText(f.name)} (acyclic) */`;
|
|
367
367
|
}), ` scr_obj_free_note();`, ` scr_cyc_free(o0);`, `}`);
|
|
368
368
|
}
|
|
369
369
|
out.push(`static void *${s.retain}_v(void *o) { return ${s.retain}((${s.struct} *)o); }`, `static void ${s.release}_v(void *o) { ${s.release}((${s.struct} *)o); }`, ``);
|
|
@@ -543,6 +543,7 @@ export function arrNewC(emitter, elem, capExpr) {
|
|
|
543
543
|
elem.kind === "child" || // spawned child handles: scr_child_* adapters, no trace
|
|
544
544
|
elem.kind === "netServer" || // server handles: scr_net_server_* adapters, no trace
|
|
545
545
|
elem.kind === "symbol" || // symbol identities: scr_sym_* adapters, no trace
|
|
546
|
+
elem.kind === "bigint" || // immutable numeric values: scr_bigint_* adapters
|
|
546
547
|
elem.kind === "classval" || // class objects: no-op adapters, no trace (immortal statics)
|
|
547
548
|
// Closures: scr_closure_* adapters + scr_closure_trace_v (always
|
|
548
549
|
// cycle-headered — captures can reach back through boxes).
|
|
@@ -570,7 +571,7 @@ export function boxNewC(emitter, t) {
|
|
|
570
571
|
t.kind === "map" || t.kind === "set" || t.kind === "promise" ||
|
|
571
572
|
t.kind === "generator" ||
|
|
572
573
|
t.kind === "regex" || t.kind === "url" || t.kind === "searchParams" ||
|
|
573
|
-
t.kind === "symbol" || t.kind === "stats" ||
|
|
574
|
+
t.kind === "symbol" || t.kind === "bigint" || t.kind === "stats" ||
|
|
574
575
|
t.kind === "fileHandle" ||
|
|
575
576
|
t.kind === "spawnRes" || t.kind === "child" || t.kind === "bytes" ||
|
|
576
577
|
t.kind === "netServer" || t.kind === "netSocket" ||
|
|
@@ -578,7 +579,8 @@ export function boxNewC(emitter, t) {
|
|
|
578
579
|
t.kind === "dgramSocket" || t.kind === "testCtx" ||
|
|
579
580
|
t.kind === "httpReq" || t.kind === "httpRes" ||
|
|
580
581
|
t.kind === "httpClientReq" || t.kind === "secureCtx" ||
|
|
581
|
-
t.kind === "
|
|
582
|
+
t.kind === "cryptoHash" || t.kind === "cryptoHmac" ||
|
|
583
|
+
t.kind === "fsWatcher" || t.kind === "childStream" || t.kind === "childWriter" ||
|
|
582
584
|
// Island handles: the box carries scr_jsval_retain_v/release_v and
|
|
583
585
|
// no trace — the same stance as jsval array elements.
|
|
584
586
|
t.kind === "jsval" ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shapes.js","sourceRoot":"","sources":["../../../src/backend/c/shapes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shapes.js","sourceRoot":"","sources":["../../../src/backend/c/shapes.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,10 @@ export declare function mapKeyAccess(key: IrType): "f64" | "str" | "ref";
|
|
|
58
58
|
/** The runtime's key-kind/value-kind tags for scr_map_new. */
|
|
59
59
|
export declare function mapKeyKindC(key: IrType): string;
|
|
60
60
|
export declare function mapValKindC(value: IrType): string;
|
|
61
|
+
/** User-controlled text embedded inside a C block comment. Preserve
|
|
62
|
+
* ordinary output byte-for-byte, but split comment delimiters and encode
|
|
63
|
+
* source-control characters so the text cannot alter the translation unit. */
|
|
64
|
+
export declare function cCommentText(text: string): string;
|
|
61
65
|
/** UTF-8 bytes as an unambiguous C string literal (octal escapes are always
|
|
62
66
|
* three digits, so a following digit can never extend them — unlike \xHH). */
|
|
63
67
|
export declare function cStringLiteral(bytes: Buffer): string;
|
package/dist/backend/c/types.js
CHANGED
|
@@ -10,6 +10,8 @@ export function cType(t) {
|
|
|
10
10
|
return "bool";
|
|
11
11
|
case "string":
|
|
12
12
|
return "ScrStr *";
|
|
13
|
+
case "bigint":
|
|
14
|
+
return "ScrBigInt *";
|
|
13
15
|
case "array":
|
|
14
16
|
return "ScrArr *";
|
|
15
17
|
case "map":
|
|
@@ -57,10 +59,15 @@ export function cType(t) {
|
|
|
57
59
|
return "ScrHttpClientReq *";
|
|
58
60
|
case "secureCtx":
|
|
59
61
|
return "ScrSecureCtx *";
|
|
62
|
+
case "cryptoHash":
|
|
63
|
+
case "cryptoHmac":
|
|
64
|
+
return "ScrCryptoHash *";
|
|
60
65
|
case "fsWatcher":
|
|
61
66
|
return "ScrWatcher *";
|
|
62
67
|
case "childStream":
|
|
63
68
|
return "ScrChildStream *";
|
|
69
|
+
case "childWriter":
|
|
70
|
+
return "ScrChildWriter *";
|
|
64
71
|
case "procStream":
|
|
65
72
|
// A SCALAR kind: the stream value IS its fd (1 = stdout, 2 =
|
|
66
73
|
// stderr) — no heap, no refcount.
|
|
@@ -236,7 +243,7 @@ export function elemKindC(elem) {
|
|
|
236
243
|
elem.kind !== "string" && elem.kind !== "array" && elem.kind !== "bytes" &&
|
|
237
244
|
elem.kind !== "record" && elem.kind !== "object" && elem.kind !== "union" &&
|
|
238
245
|
elem.kind !== "jsval" && elem.kind !== "child" && elem.kind !== "netServer" &&
|
|
239
|
-
elem.kind !== "symbol" && elem.kind !== "classval" && elem.kind !== "func") {
|
|
246
|
+
elem.kind !== "symbol" && elem.kind !== "bigint" && elem.kind !== "classval" && elem.kind !== "func") {
|
|
240
247
|
throw new InternalCompilerError(`emitter bug: array of ${elem.kind} (frontend rejects these)`);
|
|
241
248
|
}
|
|
242
249
|
switch (elem.kind) {
|
|
@@ -268,6 +275,7 @@ export function elemKindC(elem) {
|
|
|
268
275
|
// Symbols (symbol[] — heterogeneous sentinel lists): refcounted
|
|
269
276
|
// identity pointers holding only strings — no trace, no cycles ever.
|
|
270
277
|
case "symbol":
|
|
278
|
+
case "bigint":
|
|
271
279
|
// Class objects ((typeof Shape)[] — the registry idiom): immortal
|
|
272
280
|
// statics behind no-op RC adapters — no trace, no cycles ever;
|
|
273
281
|
// indexOf/includes/=== are the REF kind's pointer identity, exactly
|
|
@@ -379,6 +387,15 @@ export function mapValKindC(value) {
|
|
|
379
387
|
? "SCR_MAP_VAL_BOOL"
|
|
380
388
|
: "SCR_MAP_VAL_REF";
|
|
381
389
|
}
|
|
390
|
+
/** User-controlled text embedded inside a C block comment. Preserve
|
|
391
|
+
* ordinary output byte-for-byte, but split comment delimiters and encode
|
|
392
|
+
* source-control characters so the text cannot alter the translation unit. */
|
|
393
|
+
export function cCommentText(text) {
|
|
394
|
+
return text
|
|
395
|
+
.replace(/[\u0000-\u001f\u007f-\u009f\u2028\u2029]/g, (char) => `\\u${char.charCodeAt(0).toString(16).padStart(4, "0")}`)
|
|
396
|
+
.replace(/\*\//g, "* /")
|
|
397
|
+
.replace(/\/\*/g, "/ *");
|
|
398
|
+
}
|
|
382
399
|
/** UTF-8 bytes as an unambiguous C string literal (octal escapes are always
|
|
383
400
|
* three digits, so a following digit can never extend them — unlike \xHH). */
|
|
384
401
|
export function cStringLiteral(bytes) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/backend/c/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/backend/c/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { describe, expect, test } from "vitest";
|
|
2
2
|
import { RUNTIME_EMITTER_CLASS } from "../../ir/ir.js";
|
|
3
|
-
import { releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
3
|
+
import { cCommentText, releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
4
|
+
describe("C comment text", () => {
|
|
5
|
+
test("preserves ordinary text and neutralizes delimiters and controls", () => {
|
|
6
|
+
expect(cCommentText('quote" slash\\ unicode-é-😀')).toBe('quote" slash\\ unicode-é-😀');
|
|
7
|
+
expect(cCommentText("open/*close*/overlap/*/block/**/end")).toBe("open/ *close* /overlap/ * /block/ ** /end");
|
|
8
|
+
expect(cCommentText("nul\0line\nunit\u001fdel\u007fnext\u0085sep\u2028")).toBe("nul\\u0000line\\u000aunit\\u001fdel\\u007fnext\\u0085sep\\u2028");
|
|
9
|
+
});
|
|
10
|
+
});
|
|
4
11
|
describe("runtime RC symbols", () => {
|
|
5
12
|
test("derives typed and adapter symbols from the shared stems", () => {
|
|
6
13
|
expect(retainCallC({ kind: "child" }, "x")).toBe("scr_child_retain(x)");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../../src/backend/c/types.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../../src/backend/c/types.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEhF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAI,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC3E,MAAM,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACxF,MAAM,CAAC,YAAY,CAAC,qCAAqC,CAAC,CAAC,CAAC,IAAI,CAC9D,2CAA2C,CAC5C,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,mDAAmD,CAAC,CAAC,CAAC,IAAI,CAC5E,iEAAiE,CAClE,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACxE,MAAM,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACjF,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAClD,MAAM,EAAE,4BAA4B;YACpC,OAAO,EAAE,6BAA6B;SACvC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC9D,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAC9E,MAAM,EAAE,sBAAsB;YAC9B,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC9F,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3D,MAAM,EAAE,iBAAiB;YACzB,OAAO,EAAE,kBAAkB;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { InternalCompilerError } from "../../errors.js";
|
|
2
|
-
import { DYN_HANDLE_KINDS, isRefCounted, typeEquals, typeKey } from "../../ir/ir.js";
|
|
2
|
+
import { DYN_HANDLE_KINDS, isDynTypedRefType, isRefCounted, typeEquals, typeKey } from "../../ir/ir.js";
|
|
3
3
|
import { dynDesc, undefinedArmTag } from "../../ir/analysis.js";
|
|
4
|
-
import { cDecl, cStringLiteral, cType, elemAccess, releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
4
|
+
import { cCommentText, cDecl, cStringLiteral, cType, elemAccess, releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
5
5
|
import { mangleField, mangleRecordNew, mangleRecordStruct } from "../mangle.js";
|
|
6
|
+
import { jsonObjectKeyLabel } from "../json-literal.js";
|
|
6
7
|
import { OVERFLOW_MEMBER } from "./shapes.js";
|
|
7
8
|
/** The per-union ToBoolean helper (interned per unionId): switch on the
|
|
8
9
|
* runtime tag — unit arms false, f64 arms 0/NaN-falsy, string arms
|
|
@@ -35,6 +36,9 @@ export function unionTruthyHelper(emitter, unionId) {
|
|
|
35
36
|
case "string":
|
|
36
37
|
d.push(` case ${i}: return ((ScrStr *)scr_union_peek(v))->len != 0;`);
|
|
37
38
|
break;
|
|
39
|
+
case "bigint":
|
|
40
|
+
d.push(` case ${i}: return scr_bigint_truthy((ScrBigInt *)scr_union_peek(v));`);
|
|
41
|
+
break;
|
|
38
42
|
case "jsval":
|
|
39
43
|
d.push(` case ${i}: return scr_jsval_truthy((ScrJsval *)scr_union_peek(v)) != 0;`);
|
|
40
44
|
break;
|
|
@@ -90,6 +94,9 @@ export function unionEqHelper(emitter, unionId, sameValue) {
|
|
|
90
94
|
case "string":
|
|
91
95
|
d.push(` case ${i}: return scr_str_eq((ScrStr *)scr_union_peek(a), (ScrStr *)scr_union_peek(b));`);
|
|
92
96
|
break;
|
|
97
|
+
case "bigint":
|
|
98
|
+
d.push(` case ${i}: return scr_bigint_eq((ScrBigInt *)scr_union_peek(a), (ScrBigInt *)scr_union_peek(b));`);
|
|
99
|
+
break;
|
|
93
100
|
default:
|
|
94
101
|
// Ref arms: pointer identity, exactly JS object equality.
|
|
95
102
|
d.push(` case ${i}: return scr_union_peek(a) == scr_union_peek(b); /* ${arm.kind} */`);
|
|
@@ -134,6 +141,9 @@ export function unionToStrHelper(emitter, unionId) {
|
|
|
134
141
|
case "bool":
|
|
135
142
|
d.push(` case ${i}: return scr_bool_to_scrstr(scr_union_get_bool(v));`);
|
|
136
143
|
break;
|
|
144
|
+
case "bigint":
|
|
145
|
+
d.push(` case ${i}: return scr_bigint_to_string((ScrBigInt *)scr_union_peek(v), 10);`);
|
|
146
|
+
break;
|
|
137
147
|
case "bytes": {
|
|
138
148
|
// Buffer.toString() IS the utf8 decode (Node's default
|
|
139
149
|
// encoding) — the `Buffer | string` chunk idiom.
|
|
@@ -308,7 +318,7 @@ export function jsonWriteHelper(emitter, t) {
|
|
|
308
318
|
d.push(` scr_jb_putc(b, '{');`);
|
|
309
319
|
if (!droppable) {
|
|
310
320
|
emitFields.forEach((f, i) => {
|
|
311
|
-
const label = cStringLiteral(Buffer.from(`${i > 0 ? "," : ""}
|
|
321
|
+
const label = cStringLiteral(Buffer.from(`${i > 0 ? "," : ""}${jsonObjectKeyLabel(f.name)}`, "utf8"));
|
|
312
322
|
d.push(` scr_jb_puts(b, ${label});`);
|
|
313
323
|
if (edgeable(f.type))
|
|
314
324
|
d.push(` scr_jb_edge_prop(b, ${cStringLiteral(Buffer.from(f.name, "utf8"))});`);
|
|
@@ -320,7 +330,7 @@ export function jsonWriteHelper(emitter, t) {
|
|
|
320
330
|
else {
|
|
321
331
|
d.push(` bool first = true;`);
|
|
322
332
|
for (const f of emitFields) {
|
|
323
|
-
const label = cStringLiteral(Buffer.from(
|
|
333
|
+
const label = cStringLiteral(Buffer.from(jsonObjectKeyLabel(f.name), "utf8"));
|
|
324
334
|
const utag = undefinedArmTag(f.type, emitter.unionsById);
|
|
325
335
|
const pad = utag >= 0 ? " " : " ";
|
|
326
336
|
if (utag >= 0) {
|
|
@@ -1141,13 +1151,24 @@ export function toDynHelper(emitter, t) {
|
|
|
1141
1151
|
case "nullT":
|
|
1142
1152
|
d.push(` (void)v; return scr_dyn_new_null();`);
|
|
1143
1153
|
break;
|
|
1144
|
-
case "object":
|
|
1145
|
-
|
|
1146
|
-
if (
|
|
1147
|
-
|
|
1154
|
+
case "object": {
|
|
1155
|
+
const className = t.className;
|
|
1156
|
+
if (className === "%Error") {
|
|
1157
|
+
d.push(` return scr_dyn_from_error(v);`);
|
|
1158
|
+
break;
|
|
1159
|
+
}
|
|
1160
|
+
if (!isDynTypedRefType(t)) {
|
|
1161
|
+
throw new InternalCompilerError(`emitter bug: to-dyn of runtime class ${className}`);
|
|
1162
|
+
}
|
|
1163
|
+
{
|
|
1164
|
+
const adapter = emitter.liveDynRefAdapter(t);
|
|
1165
|
+
const rc = vAdapters(t);
|
|
1166
|
+
const key = typeKey(t);
|
|
1167
|
+
const keyLit = cStringLiteral(Buffer.from(key, "utf8"));
|
|
1168
|
+
d.push(` return scr_dyn_new_typed_ref(v, &${rc.retain}, &${rc.release}, ${keyLit}, ${Buffer.byteLength(key, "utf8")}, &${adapter.snapshot}, ${adapter.commit});`);
|
|
1148
1169
|
}
|
|
1149
|
-
d.push(` return scr_dyn_from_error(v);`);
|
|
1150
1170
|
break;
|
|
1171
|
+
}
|
|
1151
1172
|
case "dyn":
|
|
1152
1173
|
// A dyn member of a converting composite (a dyn record field): the
|
|
1153
1174
|
// dyn value passes through by reference — already a dyn, already
|
|
@@ -1633,7 +1654,7 @@ export function recordKeyGetHelper(emitter, shapeId, t, overflowOnly = false) {
|
|
|
1633
1654
|
// switch can never hit — only the overflow answers.
|
|
1634
1655
|
for (const f of overflowOnly ? [] : shape.fields) {
|
|
1635
1656
|
const lit = emitter.internLiteral(f.name);
|
|
1636
|
-
d.push(` if (scr_str_eq(k, (ScrStr *)&${lit})) { /* ${f.name} */`);
|
|
1657
|
+
d.push(` if (scr_str_eq(k, (ScrStr *)&${lit})) { /* ${cCommentText(f.name)} */`);
|
|
1637
1658
|
d.push(` return ${surface(f.type, `r->${mangleField(f.name)}`, false)};`);
|
|
1638
1659
|
d.push(` }`);
|
|
1639
1660
|
}
|
|
@@ -1708,7 +1729,7 @@ export function recordKeySetHelper(emitter, shapeId) {
|
|
|
1708
1729
|
for (const f of shape.fields) {
|
|
1709
1730
|
const lit = emitter.internLiteral(f.name);
|
|
1710
1731
|
const member = `r->${mangleField(f.name)}`;
|
|
1711
|
-
d.push(` if (scr_str_eq(k, (ScrStr *)&${lit})) { /* ${f.name} */`);
|
|
1732
|
+
d.push(` if (scr_str_eq(k, (ScrStr *)&${lit})) { /* ${cCommentText(f.name)} */`);
|
|
1712
1733
|
if (iv.kind === "dyn" && shape.indexValue) {
|
|
1713
1734
|
const keyLit = cStringLiteral(Buffer.from(f.name, "utf8"));
|
|
1714
1735
|
d.push(` ScrDynPath p = { NULL, ${keyLit}, 0 };`);
|