@scriptc/compiler 0.1.1 → 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 +104 -31
- package/ambient/scriptc.d.ts +2 -1
- package/dist/backend/build-cache.js.map +1 -1
- package/dist/backend/c/async.d.ts +5 -0
- package/dist/backend/c/async.js +81 -2
- package/dist/backend/c/async.js.map +1 -1
- package/dist/backend/c/c-emitter.d.ts +25 -10
- package/dist/backend/c/c-emitter.js +74 -22
- 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 +371 -18
- package/dist/backend/c/exprs.js.map +1 -1
- package/dist/backend/c/island.js.map +1 -1
- package/dist/backend/c/may-throw.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/stmts.d.ts +3 -5
- package/dist/backend/c/stmts.js +58 -17
- package/dist/backend/c/stmts.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 +63 -16
- package/dist/backend/c/walkers.js.map +1 -1
- package/dist/backend/external-c.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/linker.js.map +1 -1
- package/dist/backend/llvm/blocks.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 +80 -16
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.js +132 -25
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +85 -3
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +5 -0
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dispatch.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.js +15 -3
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-island.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 +222 -10
- 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 +24 -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 +64 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-stream.js +6 -3
- package/dist/backend/llvm/lib-stream.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/split.js.map +1 -1
- package/dist/backend/llvm/unsupported.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-codegen.js.map +1 -1
- package/dist/backend/native-codegen.test.js +2 -0
- package/dist/backend/native-codegen.test.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.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/backend/vendor-archives.js.map +1 -1
- package/dist/compat/fetch-profile.js +4 -2
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +13 -0
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +6 -5
- package/dist/diagnostics/diagnostic.js +10 -9
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/render.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/ffi/ffi-manifest.js.map +1 -1
- package/dist/frontend/cjs-lexer.js.map +1 -1
- package/dist/frontend/dts-paths.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +10 -0
- package/dist/frontend/input-tracker.js +26 -3
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +8 -1
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lib-contract.js.map +1 -1
- package/dist/frontend/lowering/array-values.d.ts +4 -0
- package/dist/frontend/lowering/array-values.js +18 -2
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/callback-arg.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +31 -0
- package/dist/frontend/lowering/containers/bytes.js +1105 -0
- package/dist/frontend/lowering/containers/bytes.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.d.ts +17 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +345 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.d.ts +13 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.js +76 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.js.map +1 -0
- package/dist/frontend/lowering/expressions/object-literals.d.ts +44 -0
- package/dist/frontend/lowering/expressions/object-literals.js +1815 -0
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -0
- package/dist/frontend/lowering/expressions/optional-chains.d.ts +31 -0
- package/dist/frontend/lowering/expressions/optional-chains.js +382 -0
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.d.ts +7 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.js +26 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.js +7 -2
- package/dist/frontend/lowering/lib-boundary.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-async-iteration.d.ts +7 -0
- package/dist/frontend/lowering/lower-async-iteration.js +657 -0
- package/dist/frontend/lowering/lower-async-iteration.js.map +1 -0
- package/dist/frontend/lowering/lower-builtins.d.ts +40 -21
- package/dist/frontend/lowering/lower-builtins.js +611 -115
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +21 -10
- package/dist/frontend/lowering/lower-calls.js +516 -75
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +7 -13
- package/dist/frontend/lowering/lower-classes.js +128 -35
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-comptime.js.map +1 -1
- package/dist/frontend/lowering/lower-containers.d.ts +1 -47
- package/dist/frontend/lowering/lower-containers.js +147 -1475
- package/dist/frontend/lowering/lower-containers.js.map +1 -1
- package/dist/frontend/lowering/lower-event-emitter.js +51 -5
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +0 -78
- package/dist/frontend/lowering/lower-exprs.js +503 -2353
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.d.ts +18 -3
- package/dist/frontend/lowering/lower-generators.js +145 -9
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +10 -3
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.d.ts +6 -0
- package/dist/frontend/lowering/lower-island.js +37 -5
- package/dist/frontend/lowering/lower-island.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +60 -15
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.d.ts +18 -0
- package/dist/frontend/lowering/lower-node-module.js +302 -0
- package/dist/frontend/lowering/lower-node-module.js.map +1 -0
- package/dist/frontend/lowering/lower-server.js +1 -1
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +10 -28
- package/dist/frontend/lowering/lower-stmts.js +542 -259
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +4 -4
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +41 -38
- package/dist/frontend/lowering/lowerer.js +148 -62
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/optional-arguments.d.ts +9 -0
- package/dist/frontend/lowering/optional-arguments.js +57 -0
- package/dist/frontend/lowering/optional-arguments.js.map +1 -0
- 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.d.ts +35 -0
- package/dist/frontend/npm-static-declarations.js +519 -0
- package/dist/frontend/npm-static-declarations.js.map +1 -0
- package/dist/frontend/npm-static-declarations.test.d.ts +1 -0
- package/dist/frontend/npm-static-declarations.test.js +132 -0
- package/dist/frontend/npm-static-declarations.test.js.map +1 -0
- package/dist/frontend/npm-static.d.ts +2 -0
- package/dist/frontend/npm-static.js +26 -10
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm.d.ts +60 -0
- package/dist/frontend/npm.js +38 -4
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/npm.test.d.ts +1 -0
- package/dist/frontend/npm.test.js +50 -0
- package/dist/frontend/npm.test.js.map +1 -0
- package/dist/frontend/program.d.ts +3 -2
- package/dist/frontend/program.js +513 -70
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.d.ts +26 -3
- package/dist/frontend/resolve.js +166 -29
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/resolve.test.js +24 -1
- package/dist/frontend/resolve.test.js.map +1 -1
- package/dist/frontend/runtime-resolve.d.ts +22 -0
- package/dist/frontend/runtime-resolve.js +101 -0
- package/dist/frontend/runtime-resolve.js.map +1 -0
- package/dist/frontend/runtime-resolve.test.d.ts +1 -0
- package/dist/frontend/runtime-resolve.test.js +18 -0
- package/dist/frontend/runtime-resolve.test.js.map +1 -0
- package/dist/frontend/ts7/adapter.js +12 -13
- package/dist/frontend/ts7/adapter.js.map +1 -1
- package/dist/frontend/ts7/ast.js.map +1 -1
- package/dist/frontend/ts7/census-check.js +3 -3
- package/dist/frontend/ts7/census-check.js.map +1 -1
- package/dist/frontend/ts7/checker.d.ts +3 -0
- package/dist/frontend/ts7/checker.js +12 -3
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/ts7/enums.js.map +1 -1
- package/dist/frontend/ts7/program-adapter.js +42 -3
- package/dist/frontend/ts7/program-adapter.js.map +1 -1
- package/dist/frontend/type-mapper.js +171 -16
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.js +11 -5
- 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 +125 -52
- package/dist/ir/ir.js +136 -7
- 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 +120 -63
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/cache-primitives.js.map +1 -1
- package/dist/library/cache-reset.test.js.map +1 -1
- package/dist/library/compiler-self-identity.js.map +1 -1
- package/dist/library/int-infer.js.map +1 -1
- package/dist/library/int-infer.test.js +4 -4
- package/dist/library/int-infer.test.js.map +1 -1
- 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/dist/library/library-profile.js.map +1 -1
- package/dist/library/sidecar-validate.js.map +1 -1
- package/dist/library/sidecar.js.map +1 -1
- package/dist/startup-cache.js.map +1 -1
- package/dist/wasi-paths.js.map +1 -1
- package/package.json +18 -18
- package/surface-manifest.json +91 -20
package/surface-manifest.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"compilerVersion": "0.1.
|
|
3
|
+
"compilerVersion": "0.1.3",
|
|
4
4
|
"coverage": [
|
|
5
5
|
"Entries are projected mechanically from the compiler's own decision tables: the diagnostics registry, the unsupported-syntax dispatch tables, the stdlib and node-builtin lowering tables, and the supported-builtin-module list. Nothing is hand-maintained; the manifest regenerates byte-identically from the source tree at this version.",
|
|
6
6
|
"Absence from this manifest means 'not projected', never 'unsupported'. Surfaces lowered through dedicated code paths rather than tables are not yet projected: console, JSON, Promise/async and the timer surface, the net/http/tls/https/dgram/dns/assert/test/stream/readline module member surfaces, template literals, the regex slice, global functions (parseInt, parseFloat, isNaN, isFinite), and the process surface outside its ambient slice.",
|
|
@@ -185,7 +185,7 @@
|
|
|
185
185
|
"name": "converting typed values to 'unknown'",
|
|
186
186
|
"status": "unsupported",
|
|
187
187
|
"code": "SC1101",
|
|
188
|
-
"note": "numbers, strings, booleans, JSON-safe records/arrays/unions (a deep copy
|
|
188
|
+
"note": "numbers, strings, booleans, JSON-safe records/arrays/unions (a deep copy), functions, program class instances, and supported native handles convert into 'unknown' slots; functions, exact-class round trips, and handles preserve identity, while this value's type has no dynamic representation yet"
|
|
189
189
|
},
|
|
190
190
|
{
|
|
191
191
|
"id": "diagnostic.sc1120",
|
|
@@ -206,7 +206,7 @@
|
|
|
206
206
|
{
|
|
207
207
|
"id": "diagnostic.sc2001",
|
|
208
208
|
"kind": "diagnostic-fence",
|
|
209
|
-
"name": "values of types outside the compilable set (
|
|
209
|
+
"name": "values of types outside the compilable set (constructor objects and library-derived or unresolved generic shapes)",
|
|
210
210
|
"status": "unsupported",
|
|
211
211
|
"code": "SC2001"
|
|
212
212
|
},
|
|
@@ -566,17 +566,13 @@
|
|
|
566
566
|
"id": "node-builtin.crypto.createHash",
|
|
567
567
|
"kind": "node-builtin",
|
|
568
568
|
"name": "crypto.createHash",
|
|
569
|
-
"status": "
|
|
570
|
-
"code": "SC2020",
|
|
571
|
-
"note": "the one lowered shape is the composed chain createHash(\"sha256\").update(data).digest(\"hex\") — the Hash handle itself has no lowering"
|
|
569
|
+
"status": "static"
|
|
572
570
|
},
|
|
573
571
|
{
|
|
574
572
|
"id": "node-builtin.crypto.createHmac",
|
|
575
573
|
"kind": "node-builtin",
|
|
576
574
|
"name": "crypto.createHmac",
|
|
577
|
-
"status": "
|
|
578
|
-
"code": "SC2020",
|
|
579
|
-
"note": "HMAC has no lowering yet — the lowered crypto surface is randomUUID, randomBytes, the createHash(\"sha256\"|\"sha1\") chain, and the introspection statics"
|
|
575
|
+
"status": "static"
|
|
580
576
|
},
|
|
581
577
|
{
|
|
582
578
|
"id": "node-builtin.crypto.createPrivateKey",
|
|
@@ -678,9 +674,7 @@
|
|
|
678
674
|
"id": "node-builtin.crypto.hash",
|
|
679
675
|
"kind": "node-builtin",
|
|
680
676
|
"name": "crypto.hash",
|
|
681
|
-
"status": "
|
|
682
|
-
"code": "SC2020",
|
|
683
|
-
"note": "the one-shot digest has no lowering — the composed chain createHash(\"sha256\").update(data).digest(\"hex\") is the lowered hashing surface"
|
|
677
|
+
"status": "static"
|
|
684
678
|
},
|
|
685
679
|
{
|
|
686
680
|
"id": "node-builtin.crypto.hkdf",
|
|
@@ -702,17 +696,13 @@
|
|
|
702
696
|
"id": "node-builtin.crypto.pbkdf2",
|
|
703
697
|
"kind": "node-builtin",
|
|
704
698
|
"name": "crypto.pbkdf2",
|
|
705
|
-
"status": "
|
|
706
|
-
"code": "SC2020",
|
|
707
|
-
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
699
|
+
"status": "static"
|
|
708
700
|
},
|
|
709
701
|
{
|
|
710
702
|
"id": "node-builtin.crypto.pbkdf2Sync",
|
|
711
703
|
"kind": "node-builtin",
|
|
712
704
|
"name": "crypto.pbkdf2Sync",
|
|
713
|
-
"status": "
|
|
714
|
-
"code": "SC2020",
|
|
715
|
-
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
705
|
+
"status": "static"
|
|
716
706
|
},
|
|
717
707
|
{
|
|
718
708
|
"id": "node-builtin.crypto.privateDecrypt",
|
|
@@ -752,6 +742,18 @@
|
|
|
752
742
|
"name": "crypto.randomBytes",
|
|
753
743
|
"status": "static"
|
|
754
744
|
},
|
|
745
|
+
{
|
|
746
|
+
"id": "node-builtin.crypto.randomFillSync",
|
|
747
|
+
"kind": "node-builtin",
|
|
748
|
+
"name": "crypto.randomFillSync",
|
|
749
|
+
"status": "static"
|
|
750
|
+
},
|
|
751
|
+
{
|
|
752
|
+
"id": "node-builtin.crypto.randomInt",
|
|
753
|
+
"kind": "node-builtin",
|
|
754
|
+
"name": "crypto.randomInt",
|
|
755
|
+
"status": "static"
|
|
756
|
+
},
|
|
755
757
|
{
|
|
756
758
|
"id": "node-builtin.crypto.randomUUID",
|
|
757
759
|
"kind": "node-builtin",
|
|
@@ -790,6 +792,12 @@
|
|
|
790
792
|
"code": "SC2020",
|
|
791
793
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
792
794
|
},
|
|
795
|
+
{
|
|
796
|
+
"id": "node-builtin.crypto.timingSafeEqual",
|
|
797
|
+
"kind": "node-builtin",
|
|
798
|
+
"name": "crypto.timingSafeEqual",
|
|
799
|
+
"status": "static"
|
|
800
|
+
},
|
|
793
801
|
{
|
|
794
802
|
"id": "node-builtin.crypto.verify",
|
|
795
803
|
"kind": "node-builtin",
|
|
@@ -2888,7 +2896,7 @@
|
|
|
2888
2896
|
"name": "ReadableStream.[Symbol.asyncIterator]",
|
|
2889
2897
|
"status": "unsupported",
|
|
2890
2898
|
"code": "SC2020",
|
|
2891
|
-
"note": "Node 24.15.0 / Undici 7.24.4;
|
|
2899
|
+
"note": "Node 24.15.0 / Undici 7.24.4; direct for-await consumption compiles statically; explicit symbol access and stored iterator handles have no compiler lowering in either tier"
|
|
2892
2900
|
},
|
|
2893
2901
|
{
|
|
2894
2902
|
"id": "stdlib.readable-stream.tee",
|
|
@@ -2904,7 +2912,7 @@
|
|
|
2904
2912
|
"name": "ReadableStream.values",
|
|
2905
2913
|
"status": "dynamic-only",
|
|
2906
2914
|
"code": "SC2020",
|
|
2907
|
-
"note": "Node 24.15.0 / Undici 7.24.4;
|
|
2915
|
+
"note": "Node 24.15.0 / Undici 7.24.4; direct for-await consumption compiles statically; storing or driving the first-class iterator handle requires --dynamic"
|
|
2908
2916
|
},
|
|
2909
2917
|
{
|
|
2910
2918
|
"id": "stdlib.request.arrayBuffer",
|
|
@@ -3538,6 +3546,27 @@
|
|
|
3538
3546
|
"status": "static",
|
|
3539
3547
|
"note": "the lowered call form takes no arguments"
|
|
3540
3548
|
},
|
|
3549
|
+
{
|
|
3550
|
+
"id": "syntax.async-generators",
|
|
3551
|
+
"kind": "syntax",
|
|
3552
|
+
"name": "typed async generator functions and methods",
|
|
3553
|
+
"status": "static",
|
|
3554
|
+
"note": "lazy bodies with queued next/return/throw requests, await, direct yield, and Node-compatible completion promises"
|
|
3555
|
+
},
|
|
3556
|
+
{
|
|
3557
|
+
"id": "syntax.await-using-declarations",
|
|
3558
|
+
"kind": "syntax",
|
|
3559
|
+
"name": "block- and function-scoped await using declarations",
|
|
3560
|
+
"status": "static",
|
|
3561
|
+
"note": "LIFO asynchronous disposal through [Symbol.asyncDispose], with synchronous fallback"
|
|
3562
|
+
},
|
|
3563
|
+
{
|
|
3564
|
+
"id": "syntax.bigint-literals",
|
|
3565
|
+
"kind": "syntax",
|
|
3566
|
+
"name": "bigint literals",
|
|
3567
|
+
"status": "static",
|
|
3568
|
+
"note": "arbitrary-precision values in decimal, binary, octal, and hexadecimal spelling"
|
|
3569
|
+
},
|
|
3541
3570
|
{
|
|
3542
3571
|
"id": "syntax.class-declarations-inside-functions",
|
|
3543
3572
|
"kind": "syntax",
|
|
@@ -3650,6 +3679,41 @@
|
|
|
3650
3679
|
"status": "unsupported",
|
|
3651
3680
|
"code": "SC1090"
|
|
3652
3681
|
},
|
|
3682
|
+
{
|
|
3683
|
+
"id": "syntax.finally-abrupt-completions",
|
|
3684
|
+
"kind": "syntax",
|
|
3685
|
+
"name": "abrupt completions through finally",
|
|
3686
|
+
"status": "static",
|
|
3687
|
+
"note": "return, throw, break, continue, and labeled jumps run crossed finally blocks; a finally completion replaces the pending one"
|
|
3688
|
+
},
|
|
3689
|
+
{
|
|
3690
|
+
"id": "syntax.for-await-async-generators",
|
|
3691
|
+
"kind": "syntax",
|
|
3692
|
+
"name": "for await over typed async generators",
|
|
3693
|
+
"status": "static",
|
|
3694
|
+
"note": "awaits each IteratorResult and closes the generator on early break"
|
|
3695
|
+
},
|
|
3696
|
+
{
|
|
3697
|
+
"id": "syntax.for-await-class-async-iterators",
|
|
3698
|
+
"kind": "syntax",
|
|
3699
|
+
"name": "for await over statically represented class async iterators",
|
|
3700
|
+
"status": "static",
|
|
3701
|
+
"note": "drives zero-parameter next methods returning Promise<{ value, done? }> and awaits an optional zero-parameter return method on abrupt completion"
|
|
3702
|
+
},
|
|
3703
|
+
{
|
|
3704
|
+
"id": "syntax.for-await-readable-streams",
|
|
3705
|
+
"kind": "syntax",
|
|
3706
|
+
"name": "for await over Node Readable and Web ReadableStream values",
|
|
3707
|
+
"status": "static",
|
|
3708
|
+
"note": "closes on every abrupt completion, with destroyOnReturn and preventCancel literal options"
|
|
3709
|
+
},
|
|
3710
|
+
{
|
|
3711
|
+
"id": "syntax.for-using-of",
|
|
3712
|
+
"kind": "syntax",
|
|
3713
|
+
"name": "for (using ... of ...) over arrays",
|
|
3714
|
+
"status": "static",
|
|
3715
|
+
"note": "each array element is disposed at the end of its iteration, including break and continue paths"
|
|
3716
|
+
},
|
|
3653
3717
|
{
|
|
3654
3718
|
"id": "syntax.namespaces",
|
|
3655
3719
|
"kind": "syntax",
|
|
@@ -3671,6 +3735,13 @@
|
|
|
3671
3735
|
"status": "unsupported",
|
|
3672
3736
|
"code": "SC1090"
|
|
3673
3737
|
},
|
|
3738
|
+
{
|
|
3739
|
+
"id": "syntax.using-declarations",
|
|
3740
|
+
"kind": "syntax",
|
|
3741
|
+
"name": "block- and function-scoped using declarations",
|
|
3742
|
+
"status": "static",
|
|
3743
|
+
"note": "LIFO disposal on normal and abrupt scope exit through [Symbol.dispose]"
|
|
3744
|
+
},
|
|
3674
3745
|
{
|
|
3675
3746
|
"id": "syntax.with-statements",
|
|
3676
3747
|
"kind": "syntax",
|