@scriptc/compiler 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ambient/scriptc-node-fallback.d.ts +145 -9
- package/dist/backend/cc.d.ts +7 -0
- package/dist/backend/cc.js +1 -0
- package/dist/backend/cc.js.map +1 -1
- package/dist/backend/emission/emit-exprs.js +35 -0
- package/dist/backend/emission/emit-exprs.js.map +1 -1
- package/dist/backend/emission/emit-shapes.js +1 -0
- package/dist/backend/emission/emit-shapes.js.map +1 -1
- package/dist/backend/emission/emitter.js +15 -3
- package/dist/backend/emission/emitter.js.map +1 -1
- package/dist/backend/llvm/emitter.js +65 -11
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/shapes.js +1 -0
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/coverage/surface-manifest.d.ts +22 -0
- package/dist/coverage/surface-manifest.js +295 -0
- package/dist/coverage/surface-manifest.js.map +1 -0
- package/dist/diagnostics/diagnostic.d.ts +16 -0
- package/dist/diagnostics/diagnostic.js +26 -2
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/frontend/lowering/lib-boundary.js +76 -6
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-builtins.d.ts +37 -4
- package/dist/frontend/lowering/lower-builtins.js +240 -6
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.js +122 -32
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +34 -2
- package/dist/frontend/lowering/lower-classes.js +256 -33
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-containers.js +25 -3
- package/dist/frontend/lowering/lower-containers.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +10 -0
- package/dist/frontend/lowering/lower-exprs.js +410 -9
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.d.ts +16 -1
- package/dist/frontend/lowering/lower-inspect.js +132 -5
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.js +24 -3
- package/dist/frontend/lowering/lower-island.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.d.ts +6 -5
- package/dist/frontend/lowering/lower-modules.js +56 -18
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.js +56 -0
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +57 -1
- package/dist/frontend/lowering/lowerer.js +291 -10
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +9 -2
- package/dist/frontend/lowering/surfaces.js +44 -7
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/npm.js +2 -2
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/program.js +59 -8
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.js +120 -5
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/shared.d.ts +8 -2
- package/dist/frontend/shared.js +22 -6
- package/dist/frontend/shared.js.map +1 -1
- package/dist/frontend/ts7/checker.js +1 -1
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/types.d.ts +25 -1
- package/dist/frontend/types.js +121 -7
- package/dist/frontend/types.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/ir/nodes.d.ts +43 -1
- package/dist/ir/nodes.js +41 -0
- package/dist/ir/nodes.js.map +1 -1
- package/dist/ir/validate.js +38 -6
- package/dist/ir/validate.js.map +1 -1
- package/package.json +6 -4
- package/surface-manifest.json +2117 -0
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/* The FALLBACK Node-ish declarations — shipped into the program ONLY when
|
|
2
2
|
* the target project has no @types/node (see loadProgram): console, the
|
|
3
3
|
* process global, and the "node:fs" module, typed as exactly the supported
|
|
4
|
-
* surface so unsupported uses are honest TYPE errors.
|
|
4
|
+
* surface so unsupported uses are honest TYPE errors. Where a member is
|
|
5
|
+
* part of the stock lib surface but has no lowering, prefer DECLARING it
|
|
6
|
+
* (console's non-lowered members below): a program that typechecks under
|
|
7
|
+
* its own tsc then reaches the per-site lowering fence with its hint,
|
|
8
|
+
* instead of a fallback-manufactured type error it cannot reproduce.
|
|
5
9
|
*
|
|
6
10
|
* When the project's node_modules contains @types/node, this file STANDS
|
|
7
11
|
* DOWN — its declarations would collide with @types/node's own (`declare
|
|
@@ -70,14 +74,41 @@ declare namespace NodeJS {
|
|
|
70
74
|
}
|
|
71
75
|
}
|
|
72
76
|
|
|
73
|
-
/* log
|
|
74
|
-
* under another name) and write stderr
|
|
75
|
-
* stderr is unbuffered (stdout flushes
|
|
76
|
-
* source order).
|
|
77
|
+
/* log/info/debug write stdout (info and debug ARE log in Node); error and
|
|
78
|
+
* warn are ONE stream (warn IS error under another name) and write stderr
|
|
79
|
+
* with the exact same formatting. stderr is unbuffered (stdout flushes
|
|
80
|
+
* first, so merged 2>&1 output keeps source order). Arguments take Node's
|
|
81
|
+
* console semantics: strings verbatim, everything else through the static
|
|
82
|
+
* util.inspect rendering — so the parameters are unknown[], like stock
|
|
83
|
+
* lib's console; values inspect cannot render statically (functions inside
|
|
84
|
+
* composites, class hierarchies, `any`) fence per argument with a hint.
|
|
85
|
+
*
|
|
86
|
+
* The REMAINING stock console members are declared too — not because they
|
|
87
|
+
* lower (none do), but so a program that typechecks under its own tsc
|
|
88
|
+
* reaches the per-site SC2020 fence naming the member and the supported
|
|
89
|
+
* surface, instead of dying on a fallback-manufactured type error its own
|
|
90
|
+
* tsc cannot reproduce. */
|
|
77
91
|
declare const console: {
|
|
78
|
-
log(...args:
|
|
79
|
-
|
|
80
|
-
|
|
92
|
+
log(...args: unknown[]): void;
|
|
93
|
+
info(...args: unknown[]): void;
|
|
94
|
+
debug(...args: unknown[]): void;
|
|
95
|
+
error(...args: unknown[]): void;
|
|
96
|
+
warn(...args: unknown[]): void;
|
|
97
|
+
assert(condition?: unknown, ...data: unknown[]): void;
|
|
98
|
+
clear(): void;
|
|
99
|
+
count(label?: string): void;
|
|
100
|
+
countReset(label?: string): void;
|
|
101
|
+
dir(item?: unknown, options?: unknown): void;
|
|
102
|
+
dirxml(...data: unknown[]): void;
|
|
103
|
+
group(...data: unknown[]): void;
|
|
104
|
+
groupCollapsed(...data: unknown[]): void;
|
|
105
|
+
groupEnd(): void;
|
|
106
|
+
table(tabularData?: unknown, properties?: readonly string[]): void;
|
|
107
|
+
time(label?: string): void;
|
|
108
|
+
timeEnd(label?: string): void;
|
|
109
|
+
timeLog(label?: string, ...data: unknown[]): void;
|
|
110
|
+
timeStamp(label?: string): void;
|
|
111
|
+
trace(...data: unknown[]): void;
|
|
81
112
|
};
|
|
82
113
|
|
|
83
114
|
/* The process global (Node-like, deliberately tiny). Every member lowers to
|
|
@@ -570,13 +601,40 @@ declare var AbortSignal: {
|
|
|
570
601
|
* `body` is honestly `any` — the streaming world lives entirely in the
|
|
571
602
|
* island. The named RequestInit interface is what routes init object
|
|
572
603
|
* literals through the island literal builder. */
|
|
604
|
+
/* Headers — a response's header map (r.headers), island-backed like
|
|
605
|
+
* Response itself: the value is the engine's real Headers (lowercase
|
|
606
|
+
* names, combine-on-append, sorted iteration), member reads and calls are
|
|
607
|
+
* engine ops with validated exits at typed boundaries. Declared to the
|
|
608
|
+
* implemented surface; constructing one statically (`new Headers()`) keeps
|
|
609
|
+
* the constructor fence. */
|
|
610
|
+
interface Headers {
|
|
611
|
+
append(name: string, value: string): void;
|
|
612
|
+
delete(name: string): void;
|
|
613
|
+
get(name: string): string | null;
|
|
614
|
+
getSetCookie(): string[];
|
|
615
|
+
has(name: string): boolean;
|
|
616
|
+
set(name: string, value: string): void;
|
|
617
|
+
forEach(callbackfn: (value: string, key: string, parent: Headers) => void): void;
|
|
618
|
+
}
|
|
573
619
|
interface Response {
|
|
574
620
|
readonly ok: boolean;
|
|
575
621
|
readonly status: number;
|
|
576
622
|
readonly statusText: string;
|
|
623
|
+
readonly url: string;
|
|
624
|
+
readonly redirected: boolean;
|
|
625
|
+
readonly headers: Headers;
|
|
577
626
|
readonly body: any;
|
|
627
|
+
readonly bodyUsed: boolean;
|
|
578
628
|
json(): Promise<unknown>;
|
|
579
629
|
text(): Promise<string>;
|
|
630
|
+
/* The whole body as bytes: arrayBuffer() answers the engine's
|
|
631
|
+
* ArrayBuffer (a handle — read it through `new Uint8Array(...)` in
|
|
632
|
+
* island code or its byteLength directly); bytes() answers a
|
|
633
|
+
* Uint8Array, which exits to the static bytes tier at a typed
|
|
634
|
+
* boundary (`const b: Uint8Array = await r.bytes()` is a validated
|
|
635
|
+
* copy — divergence 44's aliasing stance). */
|
|
636
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
|
637
|
+
bytes(): Promise<Uint8Array>;
|
|
580
638
|
}
|
|
581
639
|
interface RequestInit {
|
|
582
640
|
method?: string;
|
|
@@ -718,6 +776,40 @@ declare module "diagnostics_channel" {
|
|
|
718
776
|
export * from "node:diagnostics_channel";
|
|
719
777
|
}
|
|
720
778
|
|
|
779
|
+
/* node:perf_hooks — performance.now() over the runtime's process-start-
|
|
780
|
+
* anchored monotonic clock (Node's timeOrigin for a compiled program),
|
|
781
|
+
* fractional milliseconds. The .bind(performance) spelling lowers to the
|
|
782
|
+
* same clock as a plain () => number function value (the mockable-clock idiom's
|
|
783
|
+
* getTimestamp); everything else fences per member. */
|
|
784
|
+
declare module "node:perf_hooks" {
|
|
785
|
+
export interface Performance {
|
|
786
|
+
now(): number;
|
|
787
|
+
}
|
|
788
|
+
export const performance: Performance;
|
|
789
|
+
}
|
|
790
|
+
declare module "perf_hooks" {
|
|
791
|
+
export * from "node:perf_hooks";
|
|
792
|
+
}
|
|
793
|
+
/* Node also exposes the same performance object as a GLOBAL (no import
|
|
794
|
+
* needed) — the module export and the global are one value, so the global
|
|
795
|
+
* spelling lowers through the identical perf_hooks tables (name +
|
|
796
|
+
* provenance, like console/process). With @types/node present this file
|
|
797
|
+
* stands down and its wider global serves; the lowered surface stays
|
|
798
|
+
* performance.now() either way. */
|
|
799
|
+
declare var performance: import("node:perf_hooks").Performance;
|
|
800
|
+
|
|
801
|
+
/* node:module — the ADMIT-THEN-FENCE surface: the import compiles (the
|
|
802
|
+
* module carries no evaluation), and every member keeps a per-site fence.
|
|
803
|
+
* createRequire loads CommonJS from disk at runtime — a compiled
|
|
804
|
+
* program's modules are fixed at build time, so the call's fence defers
|
|
805
|
+
* to a runtime error in JS sources (the config-loader idiom is
|
|
806
|
+
* reached only when a CJS config/plugin must load). Bare "module" stays a
|
|
807
|
+
* package specifier (an npm package by that name exists); only the node:
|
|
808
|
+
* spelling names the builtin. */
|
|
809
|
+
declare module "node:module" {
|
|
810
|
+
export function createRequire(filename: string | URL): (id: string) => unknown;
|
|
811
|
+
}
|
|
812
|
+
|
|
721
813
|
/* The synchronous node:fs surface — utf8-only, no options objects, no
|
|
722
814
|
* Buffers. Importing "node:fs" resolves here (preflight allowlists exactly
|
|
723
815
|
* the ambient-declared node: modules); every function lowers to a `libCall`
|
|
@@ -1508,6 +1600,50 @@ declare module "node:string_decoder" {
|
|
|
1508
1600
|
export * from "string_decoder";
|
|
1509
1601
|
}
|
|
1510
1602
|
|
|
1603
|
+
/* node:querystring — Node's legacy query-string codec (NOT
|
|
1604
|
+
* URLSearchParams: '+' means space on the parse side and escape encodes
|
|
1605
|
+
* spaces as %20). parse answers the null-prototype dictionary as a pure
|
|
1606
|
+
* index-signature record (repeated keys become string[] buckets;
|
|
1607
|
+
* @types/node's Dict adds an undefined arm the lowering tolerates);
|
|
1608
|
+
* stringify serializes string/number/boolean values and arrays of those
|
|
1609
|
+
* (Node's rules: arrays expand to repeated keys, null/undefined and
|
|
1610
|
+
* anything else serialize as the empty value). The maxKeys option lowers
|
|
1611
|
+
* (0 removes the cap, Node's rule); the custom encoder/decoder options
|
|
1612
|
+
* typecheck under the options-record stance and fence by name at the
|
|
1613
|
+
* call. decode/encode are Node's own aliases of parse/stringify. */
|
|
1614
|
+
declare module "querystring" {
|
|
1615
|
+
export interface ParseOptions {
|
|
1616
|
+
maxKeys?: number;
|
|
1617
|
+
decodeURIComponent?: (str: string) => string;
|
|
1618
|
+
[option: string]: unknown;
|
|
1619
|
+
}
|
|
1620
|
+
export interface StringifyOptions {
|
|
1621
|
+
encodeURIComponent?: (str: string) => string;
|
|
1622
|
+
[option: string]: unknown;
|
|
1623
|
+
}
|
|
1624
|
+
export interface ParsedUrlQuery {
|
|
1625
|
+
[key: string]: string | string[] | undefined;
|
|
1626
|
+
}
|
|
1627
|
+
export interface ParsedUrlQueryInput {
|
|
1628
|
+
[key: string]:
|
|
1629
|
+
| string
|
|
1630
|
+
| number
|
|
1631
|
+
| boolean
|
|
1632
|
+
| ReadonlyArray<string | number | boolean>
|
|
1633
|
+
| null
|
|
1634
|
+
| undefined;
|
|
1635
|
+
}
|
|
1636
|
+
export function parse(str: string, sep?: string | null, eq?: string | null, options?: ParseOptions): ParsedUrlQuery;
|
|
1637
|
+
export function stringify(obj?: ParsedUrlQueryInput, sep?: string | null, eq?: string | null, options?: StringifyOptions): string;
|
|
1638
|
+
export const decode: typeof parse;
|
|
1639
|
+
export const encode: typeof stringify;
|
|
1640
|
+
export function escape(str: string): string;
|
|
1641
|
+
export function unescape(str: string): string;
|
|
1642
|
+
}
|
|
1643
|
+
declare module "node:querystring" {
|
|
1644
|
+
export * from "querystring";
|
|
1645
|
+
}
|
|
1646
|
+
|
|
1511
1647
|
/* node:readline — the question/close slice: createInterface over exactly
|
|
1512
1648
|
* { input: process.stdin, output: process.stdout }, question(query, cb)
|
|
1513
1649
|
* (the query writes to stdout, the callback gets the next line's text),
|
|
@@ -2582,7 +2718,7 @@ declare module "node:worker_threads" {
|
|
|
2582
2718
|
* Buffer re-exports the GLOBAL declaration, so an imported binding
|
|
2583
2719
|
* resolves to the same symbol the lowerings already answer for (and
|
|
2584
2720
|
* third-party .d.ts files that `import { Buffer } from "node:buffer"` —
|
|
2585
|
-
* file-entry-cache in
|
|
2721
|
+
* file-entry-cache in a typed-JS source graph — typecheck). */
|
|
2586
2722
|
declare module "buffer" {
|
|
2587
2723
|
export function atob(data: string): string;
|
|
2588
2724
|
export function btoa(data: string): string;
|
package/dist/backend/cc.d.ts
CHANGED
|
@@ -97,6 +97,13 @@ export interface CcOptions {
|
|
|
97
97
|
* cross-compiles everywhere. sp-free binaries keep their exact link
|
|
98
98
|
* line (scr_url.c never references the unit). */
|
|
99
99
|
searchParams?: boolean;
|
|
100
|
+
/** The program uses the node:querystring surface (moduleUsesQs on the
|
|
101
|
+
* IR): compiles scr_qs.c into the binary — the searchParams gating
|
|
102
|
+
* precedent: pure data transforms (no loop hooks, no install),
|
|
103
|
+
* cross-compiles everywhere. qs-free binaries keep their exact link
|
|
104
|
+
* line (escape-only programs ride the always-linked component encoder
|
|
105
|
+
* and never flip this). */
|
|
106
|
+
qs?: boolean;
|
|
100
107
|
/** The program uses the node:stream class surface (moduleUsesStream on
|
|
101
108
|
* the IR): compiles scr_stream.c into the binary — always alongside
|
|
102
109
|
* scr_events_emitter.c, which moduleUsesEmitter answers true for
|
package/dist/backend/cc.js
CHANGED
|
@@ -710,6 +710,7 @@ export async function compileC(opts) {
|
|
|
710
710
|
...(opts.emitter || net ? [rt(join(rtDir, "scr_dyn_handle.c"))] : []),
|
|
711
711
|
...(opts.symbol ? [rt(join(rtDir, "scr_symbol.c"))] : []),
|
|
712
712
|
...(opts.searchParams ? [rt(join(rtDir, "scr_url_params.c"))] : []),
|
|
713
|
+
...(opts.qs ? [rt(join(rtDir, "scr_qs.c"))] : []),
|
|
713
714
|
...(opts.stream ? [rt(join(rtDir, "scr_stream.c"))] : []),
|
|
714
715
|
// The readiness-poller backends (scr_platform.h): kqueue on macOS/BSD,
|
|
715
716
|
// epoll on Linux, WSAPoll on Windows — each TU is empty off its
|
package/dist/backend/cc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cc.js","sourceRoot":"","sources":["../../src/backend/cc.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cc.js","sourceRoot":"","sources":["../../src/backend/cc.ts"],"names":[],"mappings":"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"}
|
|
@@ -2537,6 +2537,39 @@ export function emitExpr(E, e) {
|
|
|
2537
2537
|
return finish(`scr_sp_key_at(${arg(0)}, ${arg(1)})`);
|
|
2538
2538
|
case "sp.valAt":
|
|
2539
2539
|
return finish(`scr_sp_val_at(${arg(0)}, ${arg(1)})`);
|
|
2540
|
+
// node:querystring (scr_qs.c — linked exactly when parse/
|
|
2541
|
+
// stringify/unescape appear, moduleUsesQs). escape IS the
|
|
2542
|
+
// component encoder (Node's qsEscape set equals
|
|
2543
|
+
// encodeURIComponent's), so it emits the always-linked codec
|
|
2544
|
+
// and never pulls the unit. Borrow; string results +1; no throw.
|
|
2545
|
+
case "qs.escape":
|
|
2546
|
+
return finish(`scr_str_encode_uri_component(${arg(0)})`);
|
|
2547
|
+
case "qs.unescape":
|
|
2548
|
+
return finish(`scr_qs_unescape(${arg(0)})`);
|
|
2549
|
+
case "qs.stringify":
|
|
2550
|
+
return finish(`scr_qs_stringify(${arg(0)}, ${arg(1)}, ${arg(2)})`);
|
|
2551
|
+
case "qs.parse": {
|
|
2552
|
+
// The ParsedUrlQuery dictionary: a fresh pure-index-signature
|
|
2553
|
+
// record whose overflow map the runtime scan fills
|
|
2554
|
+
// (scr_qs_parse_into groups repeats into string[] buckets).
|
|
2555
|
+
// The frontend verified the shape (lowerQuerystringParseCall);
|
|
2556
|
+
// lookups here only guard emitter bugs. Args: qs, sep, eq,
|
|
2557
|
+
// maxKeys.
|
|
2558
|
+
if (e.type.kind !== "record")
|
|
2559
|
+
throw new Error("emitter bug: qs.parse result is not a record");
|
|
2560
|
+
const dictShape = E.recordsById.get(e.type.shapeId);
|
|
2561
|
+
const iv = dictShape?.indexValue;
|
|
2562
|
+
if (!dictShape || iv?.kind !== "union")
|
|
2563
|
+
throw new Error("emitter bug: qs.parse dict shape");
|
|
2564
|
+
const ivDef = E.unionsById.get(iv.unionId);
|
|
2565
|
+
const strTag = ivDef?.arms.findIndex((a) => a.kind === "string") ?? -1;
|
|
2566
|
+
const arrTag = ivDef?.arms.findIndex((a) => a.kind === "array") ?? -1;
|
|
2567
|
+
if (strTag < 0 || arrTag < 0)
|
|
2568
|
+
throw new Error("emitter bug: qs.parse index union lacks its arms");
|
|
2569
|
+
const dict = E.newTemp(e.type, `${mangleRecordNew(e.type.shapeId)}()`);
|
|
2570
|
+
E.line(`scr_qs_parse_into(${dict.name}->${OVERFLOW_MEMBER}, ${arg(0)}, ${arg(1)}, ${arg(2)}, ${arg(3)}, ${strTag}, ${arrTag});${E.srcComment(e.loc)}`);
|
|
2571
|
+
return dict;
|
|
2572
|
+
}
|
|
2540
2573
|
// Stats (scr_lib.c): statSync throws like the other sync fs
|
|
2541
2574
|
// calls; the getters are pure reads.
|
|
2542
2575
|
case "fs.openSync":
|
|
@@ -4324,6 +4357,8 @@ export function emitExpr(E, e) {
|
|
|
4324
4357
|
return finish(`scr_process_getuid()`);
|
|
4325
4358
|
case "process.uptime":
|
|
4326
4359
|
return finish(`scr_process_uptime()`);
|
|
4360
|
+
case "perf.now":
|
|
4361
|
+
return finish(`scr_perf_now()`);
|
|
4327
4362
|
case "process.availableMemory":
|
|
4328
4363
|
return finish(`scr_available_memory()`);
|
|
4329
4364
|
case "process.constrainedMemory":
|