@scriptc/compiler 0.3.6 → 0.4.1
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 +717 -55
- package/ambient/scriptc.d.ts +134 -0
- package/dist/backend/cycle-analysis.d.ts +1 -1
- package/dist/backend/cycle-analysis.js +1 -0
- package/dist/backend/cycle-analysis.js.map +1 -1
- package/dist/backend/cycle-analysis.test.js +13 -1
- package/dist/backend/cycle-analysis.test.js.map +1 -1
- package/dist/backend/cycle-mutability.js +16 -5
- package/dist/backend/cycle-mutability.js.map +1 -1
- package/dist/backend/executable-features.js +20 -0
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/immutability.test.js +1 -1
- package/dist/backend/library-pack.js +9 -0
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/link-plan-core.d.ts +2 -0
- package/dist/backend/link-plan-core.js +2 -0
- package/dist/backend/link-plan-core.js.map +1 -1
- package/dist/backend/link-plan.d.ts +1 -0
- package/dist/backend/link-plan.js +1 -0
- package/dist/backend/link-plan.js.map +1 -1
- package/dist/backend/llvm/alloc.d.ts +41 -4
- package/dist/backend/llvm/alloc.js +138 -7
- package/dist/backend/llvm/alloc.js.map +1 -1
- package/dist/backend/llvm/alloc.test.js +30 -1
- package/dist/backend/llvm/alloc.test.js.map +1 -1
- package/dist/backend/llvm/appended-array-literals.test.js +1 -1
- package/dist/backend/llvm/array-search.js +3 -1
- package/dist/backend/llvm/array-search.js.map +1 -1
- package/dist/backend/llvm/array-search.test.js +1 -1
- package/dist/backend/llvm/blocks.d.ts +8 -0
- package/dist/backend/llvm/blocks.js +43 -1
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/blocks.test.js +22 -1
- package/dist/backend/llvm/blocks.test.js.map +1 -1
- package/dist/backend/llvm/byte-numbers.js +15 -5
- package/dist/backend/llvm/byte-numbers.js.map +1 -1
- package/dist/backend/llvm/bytes-alias.d.ts +14 -0
- package/dist/backend/llvm/bytes-alias.js +20 -0
- package/dist/backend/llvm/bytes-alias.js.map +1 -0
- package/dist/backend/llvm/bytes-loop-versions.d.ts +86 -0
- package/dist/backend/llvm/bytes-loop-versions.js +506 -0
- package/dist/backend/llvm/bytes-loop-versions.js.map +1 -0
- package/dist/backend/llvm/bytes-loop-versions.test.d.ts +1 -0
- package/dist/backend/llvm/bytes-loop-versions.test.js +244 -0
- package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -0
- package/dist/backend/llvm/call-lifetimes.js +50 -1
- package/dist/backend/llvm/call-lifetimes.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.test.js +34 -0
- package/dist/backend/llvm/call-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/checked-narrows.test.js +1 -1
- package/dist/backend/llvm/checked-value-lifetimes.js +4 -1
- package/dist/backend/llvm/checked-value-lifetimes.js.map +1 -1
- package/dist/backend/llvm/classes.d.ts +38 -1
- package/dist/backend/llvm/classes.js +185 -35
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/classes.test.js +79 -17
- package/dist/backend/llvm/classes.test.js.map +1 -1
- package/dist/backend/llvm/common.d.ts +21 -3
- package/dist/backend/llvm/common.js +51 -3
- package/dist/backend/llvm/common.js.map +1 -1
- package/dist/backend/llvm/constant-callbacks.d.ts +5 -1
- package/dist/backend/llvm/constant-callbacks.js +55 -12
- package/dist/backend/llvm/constant-callbacks.js.map +1 -1
- package/dist/backend/llvm/constant-callbacks.test.js +88 -1
- package/dist/backend/llvm/constant-callbacks.test.js.map +1 -1
- package/dist/backend/llvm/counted-loops.d.ts +4 -0
- package/dist/backend/llvm/counted-loops.js +37 -0
- package/dist/backend/llvm/counted-loops.js.map +1 -1
- package/dist/backend/llvm/dense-array-access.d.ts +15 -4
- package/dist/backend/llvm/dense-array-access.js +125 -44
- package/dist/backend/llvm/dense-array-access.js.map +1 -1
- package/dist/backend/llvm/dense-array-access.test.js +63 -3
- package/dist/backend/llvm/dense-array-access.test.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.d.ts +51 -0
- package/dist/backend/llvm/dense-array-loops.js +162 -0
- package/dist/backend/llvm/dense-array-loops.js.map +1 -0
- package/dist/backend/llvm/dense-array-loops.test.d.ts +1 -0
- package/dist/backend/llvm/dense-array-loops.test.js +128 -0
- package/dist/backend/llvm/dense-array-loops.test.js.map +1 -0
- package/dist/backend/llvm/dyn-handle-tags.test.d.ts +1 -0
- package/dist/backend/llvm/dyn-handle-tags.test.js +38 -0
- package/dist/backend/llvm/dyn-handle-tags.test.js.map +1 -0
- package/dist/backend/llvm/dyn.d.ts +37 -4
- package/dist/backend/llvm/dyn.js +354 -183
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emit-function.d.ts +64 -0
- package/dist/backend/llvm/emit-function.js +1193 -0
- package/dist/backend/llvm/emit-function.js.map +1 -0
- package/dist/backend/llvm/emit-module.d.ts +24 -0
- package/dist/backend/llvm/emit-module.js +1557 -0
- package/dist/backend/llvm/emit-module.js.map +1 -0
- package/dist/backend/llvm/emit-statements.d.ts +59 -0
- package/dist/backend/llvm/emit-statements.js +2041 -0
- package/dist/backend/llvm/emit-statements.js.map +1 -0
- package/dist/backend/llvm/emitter.d.ts +566 -291
- package/dist/backend/llvm/emitter.js +728 -4671
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/emitter.test.js +57 -3
- package/dist/backend/llvm/emitter.test.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +73 -46
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-async.test.js +1 -1
- package/dist/backend/llvm/expr-bytes.d.ts +2 -0
- package/dist/backend/llvm/expr-bytes.js +76 -29
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-callbacks.d.ts +6 -2
- package/dist/backend/llvm/expr-callbacks.js +48 -11
- package/dist/backend/llvm/expr-callbacks.js.map +1 -1
- package/dist/backend/llvm/expr-calls.d.ts +1 -1
- package/dist/backend/llvm/expr-calls.js +87 -56
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-calls.test.js +1 -1
- package/dist/backend/llvm/expr-containers.js +45 -24
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-control.js +16 -16
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.d.ts +3 -0
- package/dist/backend/llvm/expr-dynamic.js +113 -66
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +124 -28
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.test.js +57 -2
- package/dist/backend/llvm/expr-primitives.test.js.map +1 -1
- package/dist/backend/llvm/expr-records.d.ts +1 -1
- package/dist/backend/llvm/expr-records.js +32 -11
- package/dist/backend/llvm/expr-records.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +65 -27
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.test.js +2 -2
- package/dist/backend/llvm/expr-stream-callbacks.js +22 -1
- package/dist/backend/llvm/expr-stream-callbacks.js.map +1 -1
- package/dist/backend/llvm/int32-abi.test.js +2 -2
- package/dist/backend/llvm/integer-clones.js +3 -3
- package/dist/backend/llvm/integer-clones.js.map +1 -1
- package/dist/backend/llvm/integer-clones.test.js +3 -3
- package/dist/backend/llvm/integer-remainder.d.ts +34 -13
- package/dist/backend/llvm/integer-remainder.js +156 -22
- package/dist/backend/llvm/integer-remainder.js.map +1 -1
- package/dist/backend/llvm/intern-tables.test.js +1 -1
- package/dist/backend/llvm/js-ic.d.ts +18 -0
- package/dist/backend/llvm/js-ic.js +712 -0
- package/dist/backend/llvm/js-ic.js.map +1 -0
- package/dist/backend/llvm/jsval-encoding.d.ts +21 -0
- package/dist/backend/llvm/jsval-encoding.js +20 -0
- package/dist/backend/llvm/jsval-encoding.js.map +1 -0
- package/dist/backend/llvm/jsval.d.ts +12 -0
- package/dist/backend/llvm/jsval.js +616 -0
- package/dist/backend/llvm/jsval.js.map +1 -0
- package/dist/backend/llvm/lazy-captures.d.ts +12 -2
- package/dist/backend/llvm/lazy-captures.js +39 -17
- package/dist/backend/llvm/lazy-captures.js.map +1 -1
- package/dist/backend/llvm/lib-abi.js +1 -1
- package/dist/backend/llvm/lib-abi.js.map +1 -1
- package/dist/backend/llvm/lib-connect.js +1 -1
- package/dist/backend/llvm/lib-connect.js.map +1 -1
- package/dist/backend/llvm/lib-datagram.js +14 -8
- package/dist/backend/llvm/lib-datagram.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +189 -23
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-filesystem.js +42 -13
- package/dist/backend/llvm/lib-filesystem.js.map +1 -1
- package/dist/backend/llvm/lib-http2.js +3 -3
- package/dist/backend/llvm/lib-http2.js.map +1 -1
- package/dist/backend/llvm/lib-lookup.js +2 -2
- package/dist/backend/llvm/lib-lookup.js.map +1 -1
- package/dist/backend/llvm/lib-network.js +56 -22
- package/dist/backend/llvm/lib-network.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +94 -53
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.d.ts +12 -0
- package/dist/backend/llvm/lib-shared.js +209 -6
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-stream.js +46 -16
- package/dist/backend/llvm/lib-stream.js.map +1 -1
- package/dist/backend/llvm/lib-test.js +43 -7
- package/dist/backend/llvm/lib-test.js.map +1 -1
- package/dist/backend/llvm/lib-tls.js +4 -9
- package/dist/backend/llvm/lib-tls.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.js +42 -33
- package/dist/backend/llvm/local-array-reads.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.test.js +1 -1
- package/dist/backend/llvm/local-extents.d.ts +19 -0
- package/dist/backend/llvm/local-extents.js +169 -0
- package/dist/backend/llvm/local-extents.js.map +1 -0
- package/dist/backend/llvm/local-extents.test.d.ts +1 -0
- package/dist/backend/llvm/local-extents.test.js +92 -0
- package/dist/backend/llvm/local-extents.test.js.map +1 -0
- package/dist/backend/llvm/local-union-storage.js +7 -7
- package/dist/backend/llvm/local-union-storage.js.map +1 -1
- package/dist/backend/llvm/local-union-storage.test.js +2 -2
- package/dist/backend/llvm/map-entry-fusion.test.js +1 -1
- package/dist/backend/llvm/map-number-lookup.d.ts +20 -4
- package/dist/backend/llvm/map-number-lookup.js +45 -9
- package/dist/backend/llvm/map-number-lookup.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.test.js +2 -2
- package/dist/backend/llvm/map-read-lifetimes.test.js +2 -2
- package/dist/backend/llvm/narrow-guards.d.ts +38 -0
- package/dist/backend/llvm/narrow-guards.js +215 -0
- package/dist/backend/llvm/narrow-guards.js.map +1 -0
- package/dist/backend/llvm/nullable-unions.d.ts +64 -6
- package/dist/backend/llvm/nullable-unions.js +103 -6
- package/dist/backend/llvm/nullable-unions.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.test.d.ts +1 -0
- package/dist/backend/llvm/nullable-unions.test.js +65 -0
- package/dist/backend/llvm/nullable-unions.test.js.map +1 -0
- package/dist/backend/llvm/publish.d.ts +7 -0
- package/dist/backend/llvm/publish.js +50 -19
- package/dist/backend/llvm/publish.js.map +1 -1
- package/dist/backend/llvm/publish.test.js +1 -1
- package/dist/backend/llvm/receivers.d.ts +31 -0
- package/dist/backend/llvm/receivers.js +395 -0
- package/dist/backend/llvm/receivers.js.map +1 -0
- package/dist/backend/llvm/record-results.d.ts +12 -1
- package/dist/backend/llvm/record-results.js +64 -4
- package/dist/backend/llvm/record-results.js.map +1 -1
- package/dist/backend/llvm/reference-effects.js +9 -0
- package/dist/backend/llvm/reference-effects.js.map +1 -1
- package/dist/backend/llvm/reference-writes.d.ts +4 -0
- package/dist/backend/llvm/reference-writes.js +142 -6
- package/dist/backend/llvm/reference-writes.js.map +1 -1
- package/dist/backend/llvm/reference-writes.test.d.ts +1 -0
- package/dist/backend/llvm/reference-writes.test.js +88 -0
- package/dist/backend/llvm/reference-writes.test.js.map +1 -0
- package/dist/backend/llvm/regex-matchers.d.ts +8 -0
- package/dist/backend/llvm/regex-matchers.js +33 -0
- package/dist/backend/llvm/regex-matchers.js.map +1 -1
- package/dist/backend/llvm/regex-matchers.test.js +23 -1
- package/dist/backend/llvm/regex-matchers.test.js.map +1 -1
- package/dist/backend/llvm/regions.d.ts +1 -1
- package/dist/backend/llvm/regions.js +10 -7
- package/dist/backend/llvm/regions.js.map +1 -1
- package/dist/backend/llvm/regions.test.js +8 -2
- package/dist/backend/llvm/regions.test.js.map +1 -1
- package/dist/backend/llvm/shapes.d.ts +74 -45
- package/dist/backend/llvm/shapes.js +289 -28
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +37 -3
- package/dist/backend/llvm/shapes.test.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.d.ts +20 -1
- package/dist/backend/llvm/speculative-integers.js +94 -6
- package/dist/backend/llvm/speculative-integers.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.test.js +55 -1
- package/dist/backend/llvm/speculative-integers.test.js.map +1 -1
- package/dist/backend/llvm/split-loops.js +2 -2
- package/dist/backend/llvm/split-loops.js.map +1 -1
- package/dist/backend/llvm/stack-objects.d.ts +26 -6
- package/dist/backend/llvm/stack-objects.js +133 -10
- package/dist/backend/llvm/stack-objects.js.map +1 -1
- package/dist/backend/llvm/stack-objects.test.js +55 -1
- package/dist/backend/llvm/stack-objects.test.js.map +1 -1
- package/dist/backend/llvm/stack-unions.test.js +1 -1
- package/dist/backend/llvm/string-construction.test.js +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js +15 -14
- package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/string-reads.d.ts +1 -1
- package/dist/backend/llvm/string-reads.js +4 -4
- package/dist/backend/llvm/string-reads.js.map +1 -1
- package/dist/backend/llvm/string-slices.d.ts +25 -0
- package/dist/backend/llvm/string-slices.js +207 -1
- package/dist/backend/llvm/string-slices.js.map +1 -1
- package/dist/backend/llvm/string-slices.test.js +139 -2
- package/dist/backend/llvm/string-slices.test.js.map +1 -1
- package/dist/backend/llvm/switch-dispatch.test.js +2 -2
- package/dist/backend/llvm/thread-slots.d.ts +5 -0
- package/dist/backend/llvm/thread-slots.js +142 -0
- package/dist/backend/llvm/thread-slots.js.map +1 -0
- package/dist/backend/llvm/thread-slots.test.d.ts +1 -0
- package/dist/backend/llvm/thread-slots.test.js +111 -0
- package/dist/backend/llvm/thread-slots.test.js.map +1 -0
- package/dist/backend/llvm/union-repr.d.ts +7 -7
- package/dist/backend/llvm/union-repr.js +18 -2
- package/dist/backend/llvm/union-repr.js.map +1 -1
- package/dist/backend/llvm/union-retype.test.js +17 -3
- package/dist/backend/llvm/union-retype.test.js.map +1 -1
- package/dist/backend/llvm/walkers.d.ts +2 -2
- package/dist/backend/llvm/walkers.js +51 -26
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/llvm/wasm-modules.d.ts +16 -0
- package/dist/backend/llvm/wasm-modules.js +66 -0
- package/dist/backend/llvm/wasm-modules.js.map +1 -0
- package/dist/backend/llvm/wrapping-sums.d.ts +7 -0
- package/dist/backend/llvm/wrapping-sums.js +11 -3
- package/dist/backend/llvm/wrapping-sums.js.map +1 -1
- package/dist/backend/mangle.d.ts +12 -0
- package/dist/backend/mangle.js +18 -0
- package/dist/backend/mangle.js.map +1 -1
- package/dist/backend/may-throw.d.ts +3 -0
- package/dist/backend/may-throw.js +4 -2
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/may-throw.test.js +1 -1
- package/dist/backend/native/contracts.d.ts +57 -0
- package/dist/backend/native/executable.js +211 -139
- package/dist/backend/native/executable.js.map +1 -1
- package/dist/backend/native/library.js +2 -0
- package/dist/backend/native/library.js.map +1 -1
- package/dist/backend/native/runtime-inputs.d.ts +1 -1
- package/dist/backend/native/runtime-inputs.js +1 -0
- package/dist/backend/native/runtime-inputs.js.map +1 -1
- package/dist/backend/native-codegen.d.ts +6 -0
- package/dist/backend/native-codegen.js +19 -0
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-codegen.test.js +27 -0
- package/dist/backend/native-codegen.test.js.map +1 -1
- package/dist/backend/native-link-info-core.d.ts +48 -0
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/native-profile.d.ts +32 -0
- package/dist/backend/native-profile.js +39 -0
- package/dist/backend/native-profile.js.map +1 -0
- package/dist/backend/native-profile.test.d.ts +1 -0
- package/dist/backend/native-profile.test.js +58 -0
- package/dist/backend/native-profile.test.js.map +1 -0
- package/dist/backend/native-tools.d.ts +14 -0
- package/dist/backend/native-tools.js +13 -0
- package/dist/backend/native-tools.js.map +1 -1
- package/dist/backend/publication.test.js +1 -1
- package/dist/backend/runtime-abi.d.ts +2 -2
- package/dist/backend/runtime-abi.js +2 -2
- package/dist/backend/runtime-pack-core.d.ts +13 -1
- package/dist/backend/runtime-pack-core.js +14 -1
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-native.js +1 -1
- package/dist/backend/runtime-pack-native.js.map +1 -1
- package/dist/backend/runtime-pack-native.test.d.ts +1 -0
- package/dist/backend/runtime-pack-native.test.js +31 -0
- package/dist/backend/runtime-pack-native.test.js.map +1 -0
- package/dist/backend/runtime-pack-targets.test.js +9 -1
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +9 -1
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/stack-observations.d.ts +22 -0
- package/dist/backend/stack-observations.js +382 -0
- package/dist/backend/stack-observations.js.map +1 -0
- package/dist/backend/stack-observations.test.d.ts +1 -0
- package/dist/backend/stack-observations.test.js +233 -0
- package/dist/backend/stack-observations.test.js.map +1 -0
- package/dist/backend/target-diagnostics.js +15 -0
- package/dist/backend/target-diagnostics.js.map +1 -1
- package/dist/backend/target-diagnostics.test.js +1 -1
- package/dist/backend/warm-cache.js +8 -0
- package/dist/backend/warm-cache.js.map +1 -1
- package/dist/backend/young-nursery.d.ts +7 -0
- package/dist/backend/young-nursery.js +10 -0
- package/dist/backend/young-nursery.js.map +1 -0
- package/dist/cli/command.js +106 -4
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/host.d.ts +3 -0
- package/dist/cli/output-options.d.ts +2 -0
- package/dist/cli/output-options.js +9 -0
- package/dist/cli/output-options.js.map +1 -1
- package/dist/cli/usage.d.ts +21 -1
- package/dist/cli/usage.js +43 -1
- package/dist/cli/usage.js.map +1 -1
- package/dist/compat/fetch-profile.js +10 -1
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/compile-types.d.ts +22 -0
- package/dist/contracts/check.js +25 -8
- package/dist/contracts/check.js.map +1 -1
- package/dist/contracts/int32-elements.d.ts +115 -0
- package/dist/contracts/int32-elements.js +1179 -0
- package/dist/contracts/int32-elements.js.map +1 -0
- package/dist/coverage/report.d.ts +16 -0
- package/dist/coverage/report.js +182 -1
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +16 -3
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/coverage/verdict-cache.d.ts +2 -0
- package/dist/coverage/verdict-cache.js +12 -0
- package/dist/coverage/verdict-cache.js.map +1 -1
- package/dist/coverage/verdict-cache.test.js +2 -1
- package/dist/coverage/verdict-cache.test.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +10 -6
- package/dist/diagnostics/diagnostic.js +29 -21
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/envelope.d.ts +39 -2
- package/dist/diagnostics/envelope.js.map +1 -1
- package/dist/diagnostics/render.d.ts +7 -0
- package/dist/diagnostics/render.js +50 -13
- package/dist/diagnostics/render.js.map +1 -1
- package/dist/diagnostics/render.test.d.ts +1 -0
- package/dist/diagnostics/render.test.js +49 -0
- package/dist/diagnostics/render.test.js.map +1 -0
- package/dist/executable/executable-cache.d.ts +27 -0
- package/dist/executable/executable-cache.js +19 -1
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +12 -1
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/executable/prepare.js +2 -1
- package/dist/executable/prepare.js.map +1 -1
- package/dist/frontend/analysis.js +6 -1
- package/dist/frontend/analysis.js.map +1 -1
- package/dist/frontend/arguments-usage.d.ts +8 -0
- package/dist/frontend/arguments-usage.js +98 -0
- package/dist/frontend/arguments-usage.js.map +1 -1
- package/dist/frontend/arguments-usage.test.d.ts +1 -0
- package/dist/frontend/arguments-usage.test.js +32 -0
- package/dist/frontend/arguments-usage.test.js.map +1 -0
- package/dist/frontend/builtin-modules.d.ts +16 -2
- package/dist/frontend/builtin-modules.js +40 -7
- package/dist/frontend/builtin-modules.js.map +1 -1
- package/dist/frontend/builtin-package-aliases.d.ts +24 -0
- package/dist/frontend/builtin-package-aliases.js +133 -0
- package/dist/frontend/builtin-package-aliases.js.map +1 -0
- package/dist/frontend/builtin-package-aliases.test.d.ts +1 -0
- package/dist/frontend/builtin-package-aliases.test.js +48 -0
- package/dist/frontend/builtin-package-aliases.test.js.map +1 -0
- package/dist/frontend/cjs-syntax.js +52 -51
- package/dist/frontend/cjs-syntax.js.map +1 -1
- package/dist/frontend/contract-types.d.ts +3 -0
- package/dist/frontend/contract-types.js +36 -7
- package/dist/frontend/contract-types.js.map +1 -1
- package/dist/frontend/dts-paths.d.ts +4 -0
- package/dist/frontend/dts-paths.js +9 -1
- package/dist/frontend/dts-paths.js.map +1 -1
- package/dist/frontend/experimental-import.d.ts +5 -1
- package/dist/frontend/experimental-import.js +26 -7
- package/dist/frontend/experimental-import.js.map +1 -1
- package/dist/frontend/fork-target.js +20 -22
- package/dist/frontend/fork-target.js.map +1 -1
- package/dist/frontend/fork-target.test.js +2 -1
- package/dist/frontend/fork-target.test.js.map +1 -1
- package/dist/frontend/function-completion.js +6 -6
- package/dist/frontend/function-completion.js.map +1 -1
- package/dist/frontend/helper-tokens.js +15 -3
- package/dist/frontend/helper-tokens.js.map +1 -1
- package/dist/frontend/helper-tokens.test.js +7 -1
- package/dist/frontend/helper-tokens.test.js.map +1 -1
- package/dist/frontend/inferred-js-diagnostics.js +14 -17
- package/dist/frontend/inferred-js-diagnostics.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +3 -0
- package/dist/frontend/input-tracker.js +32 -3
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/lib-contract.js +36 -32
- package/dist/frontend/lib-contract.js.map +1 -1
- package/dist/frontend/lib-exports.js +3 -3
- package/dist/frontend/lib-exports.js.map +1 -1
- package/dist/frontend/lowering/array-values.d.ts +8 -3
- package/dist/frontend/lowering/array-values.js +60 -11
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/assert-instances.js +4 -4
- package/dist/frontend/lowering/assert-instances.js.map +1 -1
- package/dist/frontend/lowering/assertion-identity.d.ts +12 -0
- package/dist/frontend/lowering/assertion-identity.js +70 -0
- package/dist/frontend/lowering/assertion-identity.js.map +1 -0
- package/dist/frontend/lowering/assertion-members.d.ts +28 -0
- package/dist/frontend/lowering/assertion-members.js +185 -0
- package/dist/frontend/lowering/assertion-members.js.map +1 -0
- package/dist/frontend/lowering/binding-analysis.js +27 -20
- package/dist/frontend/lowering/binding-analysis.js.map +1 -1
- package/dist/frontend/lowering/builtin-calls.js +63 -5
- package/dist/frontend/lowering/builtin-calls.js.map +1 -1
- package/dist/frontend/lowering/builtin-function-fences.d.ts +14 -0
- package/dist/frontend/lowering/builtin-function-fences.js +42 -0
- package/dist/frontend/lowering/builtin-function-fences.js.map +1 -0
- package/dist/frontend/lowering/builtins/arguments.js +1 -1
- package/dist/frontend/lowering/builtins/arguments.js.map +1 -1
- package/dist/frontend/lowering/builtins/async-context.js +53 -52
- package/dist/frontend/lowering/builtins/async-context.js.map +1 -1
- package/dist/frontend/lowering/builtins/atomics.js +6 -6
- package/dist/frontend/lowering/builtins/atomics.js.map +1 -1
- package/dist/frontend/lowering/builtins/blob.js +8 -6
- package/dist/frontend/lowering/builtins/blob.js.map +1 -1
- package/dist/frontend/lowering/builtins/builtin-class-dyn.d.ts +31 -0
- package/dist/frontend/lowering/builtins/builtin-class-dyn.js +205 -0
- package/dist/frontend/lowering/builtins/builtin-class-dyn.js.map +1 -0
- package/dist/frontend/lowering/builtins/callable-aliases.js +17 -5
- package/dist/frontend/lowering/builtins/callable-aliases.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process-async.js +7 -7
- package/dist/frontend/lowering/builtins/child-process-async.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process-methods.d.ts +6 -4
- package/dist/frontend/lowering/builtins/child-process-methods.js +310 -57
- package/dist/frontend/lowering/builtins/child-process-methods.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process-sync.js +16 -10
- package/dist/frontend/lowering/builtins/child-process-sync.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process.d.ts +6 -4
- package/dist/frontend/lowering/builtins/child-process.js +85 -61
- package/dist/frontend/lowering/builtins/child-process.js.map +1 -1
- package/dist/frontend/lowering/builtins/class-values.d.ts +60 -0
- package/dist/frontend/lowering/builtins/class-values.js +226 -0
- package/dist/frontend/lowering/builtins/class-values.js.map +1 -0
- package/dist/frontend/lowering/builtins/compression.d.ts +9 -0
- package/dist/frontend/lowering/builtins/compression.js +107 -44
- package/dist/frontend/lowering/builtins/compression.js.map +1 -1
- package/dist/frontend/lowering/builtins/constants.d.ts +9 -1
- package/dist/frontend/lowering/builtins/constants.js +28 -7
- package/dist/frontend/lowering/builtins/constants.js.map +1 -1
- package/dist/frontend/lowering/builtins/crypto.d.ts +22 -0
- package/dist/frontend/lowering/builtins/crypto.js +215 -38
- package/dist/frontend/lowering/builtins/crypto.js.map +1 -1
- package/dist/frontend/lowering/builtins/dates.d.ts +7 -1
- package/dist/frontend/lowering/builtins/dates.js +92 -16
- package/dist/frontend/lowering/builtins/dates.js.map +1 -1
- package/dist/frontend/lowering/builtins/disposable-stack.d.ts +18 -0
- package/dist/frontend/lowering/builtins/disposable-stack.js +137 -0
- package/dist/frontend/lowering/builtins/disposable-stack.js.map +1 -0
- package/dist/frontend/lowering/builtins/ecdh.d.ts +10 -0
- package/dist/frontend/lowering/builtins/ecdh.js +208 -0
- package/dist/frontend/lowering/builtins/ecdh.js.map +1 -0
- package/dist/frontend/lowering/builtins/environment.js +3 -3
- package/dist/frontend/lowering/builtins/environment.js.map +1 -1
- package/dist/frontend/lowering/builtins/errors.d.ts +14 -10
- package/dist/frontend/lowering/builtins/errors.js +169 -3
- package/dist/frontend/lowering/builtins/errors.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js +128 -116
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem.js +77 -77
- package/dist/frontend/lowering/builtins/filesystem.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-glob.js +3 -3
- package/dist/frontend/lowering/builtins/fs-glob.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-streams.js +10 -11
- package/dist/frontend/lowering/builtins/fs-streams.js.map +1 -1
- package/dist/frontend/lowering/builtins/ipc.js +45 -8
- package/dist/frontend/lowering/builtins/ipc.js.map +1 -1
- package/dist/frontend/lowering/builtins/json.js +284 -24
- package/dist/frontend/lowering/builtins/json.js.map +1 -1
- package/dist/frontend/lowering/builtins/key-object.js +4 -4
- package/dist/frontend/lowering/builtins/key-object.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-bindings.d.ts +8 -0
- package/dist/frontend/lowering/builtins/module-bindings.js +71 -22
- package/dist/frontend/lowering/builtins/module-bindings.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-calls.js +55 -44
- package/dist/frontend/lowering/builtins/module-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-resolution.d.ts +4 -3
- package/dist/frontend/lowering/builtins/module-resolution.js +24 -23
- package/dist/frontend/lowering/builtins/module-resolution.js.map +1 -1
- package/dist/frontend/lowering/builtins/navigator.d.ts +13 -0
- package/dist/frontend/lowering/builtins/navigator.js +40 -0
- package/dist/frontend/lowering/builtins/navigator.js.map +1 -0
- package/dist/frontend/lowering/builtins/net-address.d.ts +19 -0
- package/dist/frontend/lowering/builtins/net-address.js +156 -0
- package/dist/frontend/lowering/builtins/net-address.js.map +1 -0
- package/dist/frontend/lowering/builtins/numbers.js +25 -9
- package/dist/frontend/lowering/builtins/numbers.js.map +1 -1
- package/dist/frontend/lowering/builtins/operating-system.d.ts +4 -0
- package/dist/frontend/lowering/builtins/operating-system.js +25 -12
- package/dist/frontend/lowering/builtins/operating-system.js.map +1 -1
- package/dist/frontend/lowering/builtins/performance.d.ts +12 -0
- package/dist/frontend/lowering/builtins/performance.js +259 -8
- package/dist/frontend/lowering/builtins/performance.js.map +1 -1
- package/dist/frontend/lowering/builtins/process.d.ts +41 -1
- package/dist/frontend/lowering/builtins/process.js +505 -99
- package/dist/frontend/lowering/builtins/process.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.d.ts +5 -1
- package/dist/frontend/lowering/builtins/promises.js +326 -43
- package/dist/frontend/lowering/builtins/promises.js.map +1 -1
- package/dist/frontend/lowering/builtins/promisify-callback.d.ts +40 -0
- package/dist/frontend/lowering/builtins/promisify-callback.js +338 -0
- package/dist/frontend/lowering/builtins/promisify-callback.js.map +1 -0
- package/dist/frontend/lowering/builtins/properties.js +37 -1
- package/dist/frontend/lowering/builtins/properties.js.map +1 -1
- package/dist/frontend/lowering/builtins/querystring.js +14 -14
- package/dist/frontend/lowering/builtins/querystring.js.map +1 -1
- package/dist/frontend/lowering/builtins/readline.d.ts +12 -2
- package/dist/frontend/lowering/builtins/readline.js +136 -39
- package/dist/frontend/lowering/builtins/readline.js.map +1 -1
- package/dist/frontend/lowering/builtins/receiver-types.js +3 -5
- package/dist/frontend/lowering/builtins/receiver-types.js.map +1 -1
- package/dist/frontend/lowering/builtins/reflection.js +42 -14
- package/dist/frontend/lowering/builtins/reflection.js.map +1 -1
- package/dist/frontend/lowering/builtins/runtime-constructor.d.ts +26 -0
- package/dist/frontend/lowering/builtins/runtime-constructor.js +165 -0
- package/dist/frontend/lowering/builtins/runtime-constructor.js.map +1 -0
- package/dist/frontend/lowering/builtins/strings.js +101 -12
- package/dist/frontend/lowering/builtins/strings.js.map +1 -1
- package/dist/frontend/lowering/builtins/text-codecs.js +41 -38
- package/dist/frontend/lowering/builtins/text-codecs.js.map +1 -1
- package/dist/frontend/lowering/builtins/timers.js +79 -30
- package/dist/frontend/lowering/builtins/timers.js.map +1 -1
- package/dist/frontend/lowering/builtins/typed-array-members.d.ts +7 -0
- package/dist/frontend/lowering/builtins/typed-array-members.js +160 -0
- package/dist/frontend/lowering/builtins/typed-array-members.js.map +1 -0
- package/dist/frontend/lowering/builtins/url.d.ts +3 -0
- package/dist/frontend/lowering/builtins/url.js +120 -17
- package/dist/frontend/lowering/builtins/url.js.map +1 -1
- package/dist/frontend/lowering/builtins/util-types.js +20 -4
- package/dist/frontend/lowering/builtins/util-types.js.map +1 -1
- package/dist/frontend/lowering/builtins/v8.d.ts +11 -0
- package/dist/frontend/lowering/builtins/v8.js +105 -0
- package/dist/frontend/lowering/builtins/v8.js.map +1 -0
- package/dist/frontend/lowering/builtins/webassembly.d.ts +33 -0
- package/dist/frontend/lowering/builtins/webassembly.js +388 -0
- package/dist/frontend/lowering/builtins/webassembly.js.map +1 -0
- package/dist/frontend/lowering/builtins/webcrypto.d.ts +20 -0
- package/dist/frontend/lowering/builtins/webcrypto.js +112 -0
- package/dist/frontend/lowering/builtins/webcrypto.js.map +1 -0
- package/dist/frontend/lowering/builtins/workers.d.ts +12 -0
- package/dist/frontend/lowering/builtins/workers.js +193 -8
- package/dist/frontend/lowering/builtins/workers.js.map +1 -1
- package/dist/frontend/lowering/call-arguments.js +69 -14
- package/dist/frontend/lowering/call-arguments.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.d.ts +23 -1
- package/dist/frontend/lowering/call-signatures.js +379 -55
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/checked-promise-all.d.ts +3 -0
- package/dist/frontend/lowering/checked-promise-all.js +1 -1
- package/dist/frontend/lowering/checked-promise-all.js.map +1 -1
- package/dist/frontend/lowering/cjs-exports-object.d.ts +53 -0
- package/dist/frontend/lowering/cjs-exports-object.js +561 -0
- package/dist/frontend/lowering/cjs-exports-object.js.map +1 -0
- package/dist/frontend/lowering/cjs-inline-require.d.ts +86 -0
- package/dist/frontend/lowering/cjs-inline-require.js +314 -0
- package/dist/frontend/lowering/cjs-inline-require.js.map +1 -0
- package/dist/frontend/lowering/cjs-tsc-interop.d.ts +28 -0
- package/dist/frontend/lowering/cjs-tsc-interop.js +208 -0
- package/dist/frontend/lowering/cjs-tsc-interop.js.map +1 -0
- package/dist/frontend/lowering/class-attributes.d.ts +19 -0
- package/dist/frontend/lowering/class-attributes.js +378 -0
- package/dist/frontend/lowering/class-attributes.js.map +1 -0
- package/dist/frontend/lowering/class-callbacks.d.ts +3 -1
- package/dist/frontend/lowering/class-callbacks.js +21 -10
- package/dist/frontend/lowering/class-callbacks.js.map +1 -1
- package/dist/frontend/lowering/class-construction.js +49 -4
- package/dist/frontend/lowering/class-construction.js.map +1 -1
- package/dist/frontend/lowering/class-descriptors.d.ts +2 -0
- package/dist/frontend/lowering/class-descriptors.js +8 -8
- package/dist/frontend/lowering/class-descriptors.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +64 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.js +1124 -90
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-instance-constructor.js +1 -1
- package/dist/frontend/lowering/class-instance-constructor.js.map +1 -1
- package/dist/frontend/lowering/class-iterables.d.ts +11 -0
- package/dist/frontend/lowering/class-iterables.js +31 -0
- package/dist/frontend/lowering/class-iterables.js.map +1 -0
- package/dist/frontend/lowering/class-method-mutations.js +73 -35
- package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
- package/dist/frontend/lowering/class-method-values.js +56 -10
- package/dist/frontend/lowering/class-method-values.js.map +1 -1
- package/dist/frontend/lowering/class-protocol-dispatch.js +24 -22
- package/dist/frontend/lowering/class-protocol-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-protocols.d.ts +10 -0
- package/dist/frontend/lowering/class-protocols.js +76 -45
- package/dist/frontend/lowering/class-protocols.js.map +1 -1
- package/dist/frontend/lowering/class-prototypes.d.ts +6 -0
- package/dist/frontend/lowering/class-prototypes.js +86 -19
- package/dist/frontend/lowering/class-prototypes.js.map +1 -1
- package/dist/frontend/lowering/class-runtime-statics.js +1 -1
- package/dist/frontend/lowering/class-runtime-statics.js.map +1 -1
- package/dist/frontend/lowering/class-static-data.js +2 -2
- package/dist/frontend/lowering/class-static-data.js.map +1 -1
- package/dist/frontend/lowering/class-to-primitive.d.ts +25 -0
- package/dist/frontend/lowering/class-to-primitive.js +264 -0
- package/dist/frontend/lowering/class-to-primitive.js.map +1 -0
- package/dist/frontend/lowering/class-unions.d.ts +25 -0
- package/dist/frontend/lowering/class-unions.js +102 -1
- package/dist/frontend/lowering/class-unions.js.map +1 -1
- package/dist/frontend/lowering/code-generation.d.ts +14 -0
- package/dist/frontend/lowering/code-generation.js +127 -0
- package/dist/frontend/lowering/code-generation.js.map +1 -0
- package/dist/frontend/lowering/coercions/fresh-spread.d.ts +13 -0
- package/dist/frontend/lowering/coercions/fresh-spread.js +95 -0
- package/dist/frontend/lowering/coercions/fresh-spread.js.map +1 -0
- package/dist/frontend/lowering/coercions/function-adapters.d.ts +16 -2
- package/dist/frontend/lowering/coercions/function-adapters.js +239 -68
- package/dist/frontend/lowering/coercions/function-adapters.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural-plans.js +25 -3
- package/dist/frontend/lowering/coercions/structural-plans.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural.js +35 -3
- package/dist/frontend/lowering/coercions/structural.js.map +1 -1
- package/dist/frontend/lowering/coercions/unions.d.ts +15 -0
- package/dist/frontend/lowering/coercions/unions.js +57 -1
- package/dist/frontend/lowering/coercions/unions.js.map +1 -1
- package/dist/frontend/lowering/collection-ingestion.js +2 -2
- package/dist/frontend/lowering/collection-ingestion.js.map +1 -1
- package/dist/frontend/lowering/collection-narrowing.js +2 -4
- package/dist/frontend/lowering/collection-narrowing.js.map +1 -1
- package/dist/frontend/lowering/construction-escapes.js +8 -8
- package/dist/frontend/lowering/construction-escapes.js.map +1 -1
- package/dist/frontend/lowering/construction-escapes.test.js +4 -4
- package/dist/frontend/lowering/construction-escapes.test.js.map +1 -1
- package/dist/frontend/lowering/constructor-returns.d.ts +61 -0
- package/dist/frontend/lowering/constructor-returns.js +477 -0
- package/dist/frontend/lowering/constructor-returns.js.map +1 -0
- package/dist/frontend/lowering/containers/array-callback-call.js +1 -1
- package/dist/frontend/lowering/containers/array-callback-call.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.d.ts +17 -0
- package/dist/frontend/lowering/containers/array-callbacks.js +287 -118
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-concat.js +1 -1
- package/dist/frontend/lowering/containers/array-concat.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.d.ts +0 -1
- package/dist/frontend/lowering/containers/array-construction.js +58 -13
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-from-async.d.ts +6 -5
- package/dist/frontend/lowering/containers/array-from-async.js +159 -14
- package/dist/frontend/lowering/containers/array-from-async.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +94 -77
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/array-pipelines.js +1 -0
- package/dist/frontend/lowering/containers/array-pipelines.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +9 -0
- package/dist/frontend/lowering/containers/bytes.js +649 -113
- package/dist/frontend/lowering/containers/bytes.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.d.ts +9 -1
- package/dist/frontend/lowering/containers/callback-arguments.js +55 -5
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-grouping.d.ts +7 -8
- package/dist/frontend/lowering/containers/collection-grouping.js +217 -26
- package/dist/frontend/lowering/containers/collection-grouping.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-methods.js +126 -28
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/dynamic-receivers.js +1 -1
- package/dist/frontend/lowering/containers/dynamic-receivers.js.map +1 -1
- package/dist/frontend/lowering/containers/exec-result-uses.js +2 -2
- package/dist/frontend/lowering/containers/exec-result-uses.js.map +1 -1
- package/dist/frontend/lowering/containers/for-of.d.ts +6 -0
- package/dist/frontend/lowering/containers/for-of.js +19 -19
- package/dist/frontend/lowering/containers/for-of.js.map +1 -1
- package/dist/frontend/lowering/containers/indexed-objects.js +142 -57
- package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -1
- package/dist/frontend/lowering/containers/iterator-helpers.d.ts +53 -4
- package/dist/frontend/lowering/containers/iterator-helpers.js +1581 -462
- package/dist/frontend/lowering/containers/iterator-helpers.js.map +1 -1
- package/dist/frontend/lowering/containers/match-row-uses.d.ts +17 -0
- package/dist/frontend/lowering/containers/match-row-uses.js +264 -0
- package/dist/frontend/lowering/containers/match-row-uses.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.d.ts +14 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +455 -30
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/containers/string-replacement.js +1 -1
- package/dist/frontend/lowering/containers/string-replacement.js.map +1 -1
- package/dist/frontend/lowering/cycle-initialization.d.ts +30 -10
- package/dist/frontend/lowering/cycle-initialization.js +191 -35
- package/dist/frontend/lowering/cycle-initialization.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.js +47 -43
- package/dist/frontend/lowering/deferred-module-initializers.js.map +1 -1
- package/dist/frontend/lowering/devirtualize.d.ts +1 -1
- package/dist/frontend/lowering/devirtualize.js +27 -7
- package/dist/frontend/lowering/devirtualize.js.map +1 -1
- package/dist/frontend/lowering/divergences.d.ts +0 -5
- package/dist/frontend/lowering/divergences.js +62 -125
- package/dist/frontend/lowering/divergences.js.map +1 -1
- package/dist/frontend/lowering/dyn-streams.d.ts +25 -0
- package/dist/frontend/lowering/dyn-streams.js +257 -0
- package/dist/frontend/lowering/dyn-streams.js.map +1 -0
- package/dist/frontend/lowering/error-methods.js +4 -1
- package/dist/frontend/lowering/error-methods.js.map +1 -1
- package/dist/frontend/lowering/error-name-order.d.ts +19 -0
- package/dist/frontend/lowering/error-name-order.js +93 -0
- package/dist/frontend/lowering/error-name-order.js.map +1 -0
- package/dist/frontend/lowering/expressions/array-literals.d.ts +21 -0
- package/dist/frontend/lowering/expressions/array-literals.js +723 -0
- package/dist/frontend/lowering/expressions/array-literals.js.map +1 -0
- package/dist/frontend/lowering/expressions/binary.d.ts +35 -0
- package/dist/frontend/lowering/expressions/binary.js +2557 -0
- package/dist/frontend/lowering/expressions/binary.js.map +1 -0
- package/dist/frontend/lowering/expressions/element-access.d.ts +31 -0
- package/dist/frontend/lowering/expressions/element-access.js +1804 -0
- package/dist/frontend/lowering/expressions/element-access.js.map +1 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.js +4 -3
- package/dist/frontend/lowering/expressions/evaluation-safety.js.map +1 -1
- package/dist/frontend/lowering/expressions/hosted-narrowing.d.ts +38 -0
- package/dist/frontend/lowering/expressions/hosted-narrowing.js +160 -0
- package/dist/frontend/lowering/expressions/hosted-narrowing.js.map +1 -0
- package/dist/frontend/lowering/expressions/identifiers.d.ts +4 -0
- package/dist/frontend/lowering/expressions/identifiers.js +830 -0
- package/dist/frontend/lowering/expressions/identifiers.js.map +1 -0
- package/dist/frontend/lowering/expressions/keyed-field-targets.d.ts +52 -0
- package/dist/frontend/lowering/expressions/keyed-field-targets.js +307 -0
- package/dist/frontend/lowering/expressions/keyed-field-targets.js.map +1 -0
- package/dist/frontend/lowering/expressions/narrowing.d.ts +37 -0
- package/dist/frontend/lowering/expressions/narrowing.js +1337 -0
- package/dist/frontend/lowering/expressions/narrowing.js.map +1 -0
- package/dist/frontend/lowering/expressions/native-proxy.js +4 -4
- package/dist/frontend/lowering/expressions/native-proxy.js.map +1 -1
- package/dist/frontend/lowering/expressions/nullish-assignment.js +45 -0
- package/dist/frontend/lowering/expressions/nullish-assignment.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.d.ts +10 -0
- package/dist/frontend/lowering/expressions/object-literals.js +301 -86
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/optional-chains.d.ts +3 -2
- package/dist/frontend/lowering/expressions/optional-chains.js +103 -17
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -1
- package/dist/frontend/lowering/expressions/property-access.d.ts +115 -0
- package/dist/frontend/lowering/expressions/property-access.js +3787 -0
- package/dist/frontend/lowering/expressions/property-access.js.map +1 -0
- package/dist/frontend/lowering/expressions/relational.d.ts +28 -0
- package/dist/frontend/lowering/expressions/relational.js +1724 -0
- package/dist/frontend/lowering/expressions/relational.js.map +1 -0
- package/dist/frontend/lowering/expressions/typeof.d.ts +22 -0
- package/dist/frontend/lowering/expressions/typeof.js +551 -0
- package/dist/frontend/lowering/expressions/typeof.js.map +1 -0
- package/dist/frontend/lowering/expressions/union-fields.js +1 -1
- package/dist/frontend/lowering/expressions/union-fields.js.map +1 -1
- package/dist/frontend/lowering/expressions/updates.d.ts +21 -0
- package/dist/frontend/lowering/expressions/updates.js +780 -0
- package/dist/frontend/lowering/expressions/updates.js.map +1 -0
- package/dist/frontend/lowering/function-context.d.ts +10 -0
- package/dist/frontend/lowering/function-context.js +11 -1
- package/dist/frontend/lowering/function-context.js.map +1 -1
- package/dist/frontend/lowering/function-returns.js +52 -28
- package/dist/frontend/lowering/function-returns.js.map +1 -1
- package/dist/frontend/lowering/general-streams.d.ts +25 -0
- package/dist/frontend/lowering/general-streams.js +108 -0
- package/dist/frontend/lowering/general-streams.js.map +1 -0
- package/dist/frontend/lowering/generator-delegation.d.ts +8 -0
- package/dist/frontend/lowering/generator-delegation.js +191 -1
- package/dist/frontend/lowering/generator-delegation.js.map +1 -1
- package/dist/frontend/lowering/generator-dynamic-dispatch.d.ts +7 -0
- package/dist/frontend/lowering/generator-dynamic-dispatch.js +172 -69
- package/dist/frontend/lowering/generator-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.d.ts +43 -0
- package/dist/frontend/lowering/generic-functions.js +593 -118
- package/dist/frontend/lowering/generic-functions.js.map +1 -1
- package/dist/frontend/lowering/handle-properties.d.ts +24 -0
- package/dist/frontend/lowering/handle-properties.js +281 -0
- package/dist/frontend/lowering/handle-properties.js.map +1 -0
- package/dist/frontend/lowering/import-meta.js +2 -2
- package/dist/frontend/lowering/import-meta.js.map +1 -1
- package/dist/frontend/lowering/intern-tables.js +10 -9
- package/dist/frontend/lowering/intern-tables.js.map +1 -1
- package/dist/frontend/lowering/iterable-spelling.d.ts +7 -0
- package/dist/frontend/lowering/iterable-spelling.js +38 -0
- package/dist/frontend/lowering/iterable-spelling.js.map +1 -0
- package/dist/frontend/lowering/iterator-adapters.d.ts +19 -0
- package/dist/frontend/lowering/iterator-adapters.js +331 -3
- package/dist/frontend/lowering/iterator-adapters.js.map +1 -1
- package/dist/frontend/lowering/js-class-fields.d.ts +28 -0
- package/dist/frontend/lowering/js-class-fields.js +170 -0
- package/dist/frontend/lowering/js-class-fields.js.map +1 -0
- package/dist/frontend/lowering/js-dynamic-objects.d.ts +15 -0
- package/dist/frontend/lowering/js-dynamic-objects.js +299 -0
- package/dist/frontend/lowering/js-dynamic-objects.js.map +1 -0
- package/dist/frontend/lowering/js-dynamic-objects.test.d.ts +1 -0
- package/dist/frontend/lowering/js-dynamic-objects.test.js +35 -0
- package/dist/frontend/lowering/js-dynamic-objects.test.js.map +1 -0
- package/dist/frontend/lowering/json-require.d.ts +22 -0
- package/dist/frontend/lowering/json-require.js +131 -0
- package/dist/frontend/lowering/json-require.js.map +1 -0
- package/dist/frontend/lowering/key-order-witness.d.ts +44 -0
- package/dist/frontend/lowering/key-order-witness.js +641 -0
- package/dist/frontend/lowering/key-order-witness.js.map +1 -0
- package/dist/frontend/lowering/key-order-witness.test.d.ts +1 -0
- package/dist/frontend/lowering/key-order-witness.test.js +239 -0
- package/dist/frontend/lowering/key-order-witness.test.js.map +1 -0
- package/dist/frontend/lowering/lifetime-regions.js +7 -7
- package/dist/frontend/lowering/lifetime-regions.js.map +1 -1
- package/dist/frontend/lowering/lower-array-sort.d.ts +33 -15
- package/dist/frontend/lowering/lower-array-sort.js +117 -21
- package/dist/frontend/lowering/lower-array-sort.js.map +1 -1
- package/dist/frontend/lowering/lower-array-sort.test.js +93 -14
- package/dist/frontend/lowering/lower-array-sort.test.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +61 -60
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-async-iteration.d.ts +10 -1
- package/dist/frontend/lowering/lower-async-iteration.js +34 -6
- package/dist/frontend/lowering/lower-async-iteration.js.map +1 -1
- package/dist/frontend/lowering/lower-builtin-values.d.ts +5 -0
- package/dist/frontend/lowering/lower-builtin-values.js +33 -3
- package/dist/frontend/lowering/lower-builtin-values.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.js +1404 -448
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +54 -3
- package/dist/frontend/lowering/lower-classes.js +1529 -472
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-comptime.d.ts +4 -2
- package/dist/frontend/lowering/lower-comptime.js +111 -13
- package/dist/frontend/lowering/lower-comptime.js.map +1 -1
- package/dist/frontend/lowering/lower-console.js +13 -11
- package/dist/frontend/lowering/lower-console.js.map +1 -1
- package/dist/frontend/lowering/lower-dgram.d.ts +10 -0
- package/dist/frontend/lowering/lower-dgram.js +241 -21
- package/dist/frontend/lowering/lower-dgram.js.map +1 -1
- package/dist/frontend/lowering/lower-enums.js +113 -14
- package/dist/frontend/lowering/lower-enums.js.map +1 -1
- package/dist/frontend/lowering/lower-event-emitter.d.ts +16 -7
- package/dist/frontend/lowering/lower-event-emitter.js +258 -70
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-event-target.js +2 -2
- package/dist/frontend/lowering/lower-event-target.js.map +1 -1
- package/dist/frontend/lowering/lower-expando.js +17 -13
- package/dist/frontend/lowering/lower-expando.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +188 -186
- package/dist/frontend/lowering/lower-exprs.js +1509 -12486
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.js +72 -22
- package/dist/frontend/lowering/lower-functions.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.d.ts +6 -0
- package/dist/frontend/lowering/lower-generators.js +39 -20
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-global-value.js +5 -1
- package/dist/frontend/lowering/lower-global-value.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +900 -107
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-mixins.js +23 -20
- package/dist/frontend/lowering/lower-mixins.js.map +1 -1
- package/dist/frontend/lowering/lower-mock.d.ts +8 -1
- package/dist/frontend/lowering/lower-mock.js +185 -18
- package/dist/frontend/lowering/lower-mock.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.d.ts +11 -3
- package/dist/frontend/lowering/lower-modules.js +445 -94
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.d.ts +6 -0
- package/dist/frontend/lowering/lower-namespaces.js +65 -33
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.d.ts +16 -0
- package/dist/frontend/lowering/lower-node-module.js +147 -14
- package/dist/frontend/lowering/lower-node-module.js.map +1 -1
- package/dist/frontend/lowering/lower-server.d.ts +6 -6
- package/dist/frontend/lowering/lower-server.js +514 -101
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stdlib.d.ts +4 -0
- package/dist/frontend/lowering/lower-stdlib.js +179 -118
- package/dist/frontend/lowering/lower-stdlib.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +30 -7
- package/dist/frontend/lowering/lower-stmts.js +1950 -433
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.d.ts +3 -0
- package/dist/frontend/lowering/lower-stream.js +398 -56
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lower-test.d.ts +3 -0
- package/dist/frontend/lowering/lower-test.js +437 -62
- package/dist/frontend/lowering/lower-test.js.map +1 -1
- package/dist/frontend/lowering/lower-timers.js +96 -32
- package/dist/frontend/lowering/lower-timers.js.map +1 -1
- package/dist/frontend/lowering/lower-url.js +1 -1
- package/dist/frontend/lowering/lower-url.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +424 -27
- package/dist/frontend/lowering/lowerer.js +2062 -310
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/lowerer.test.js +10 -4
- package/dist/frontend/lowering/lowerer.test.js.map +1 -1
- package/dist/frontend/lowering/maybe-promise.d.ts +46 -0
- package/dist/frontend/lowering/maybe-promise.js +249 -0
- package/dist/frontend/lowering/maybe-promise.js.map +1 -0
- package/dist/frontend/lowering/module-member-this.d.ts +3 -0
- package/dist/frontend/lowering/module-member-this.js +262 -0
- package/dist/frontend/lowering/module-member-this.js.map +1 -0
- package/dist/frontend/lowering/module-namespace-elements.js +1 -1
- package/dist/frontend/lowering/module-namespace-elements.js.map +1 -1
- package/dist/frontend/lowering/nan-coded-reads.d.ts +3 -0
- package/dist/frontend/lowering/nan-coded-reads.js +45 -32
- package/dist/frontend/lowering/nan-coded-reads.js.map +1 -1
- package/dist/frontend/lowering/narrowing-stability.d.ts +18 -3
- package/dist/frontend/lowering/narrowing-stability.js +104 -32
- package/dist/frontend/lowering/narrowing-stability.js.map +1 -1
- package/dist/frontend/lowering/native-ffi.js +11 -11
- package/dist/frontend/lowering/native-ffi.js.map +1 -1
- package/dist/frontend/lowering/object-factory-new.js +6 -8
- package/dist/frontend/lowering/object-factory-new.js.map +1 -1
- package/dist/frontend/lowering/private-brands.d.ts +46 -0
- package/dist/frontend/lowering/private-brands.js +265 -0
- package/dist/frontend/lowering/private-brands.js.map +1 -0
- package/dist/frontend/lowering/promise-executor-adapter.d.ts +11 -0
- package/dist/frontend/lowering/promise-executor-adapter.js +87 -0
- package/dist/frontend/lowering/promise-executor-adapter.js.map +1 -0
- package/dist/frontend/lowering/rebindable-functions.d.ts +8 -0
- package/dist/frontend/lowering/rebindable-functions.js +54 -0
- package/dist/frontend/lowering/rebindable-functions.js.map +1 -0
- package/dist/frontend/lowering/require-initialization.d.ts +32 -0
- package/dist/frontend/lowering/require-initialization.js +246 -0
- package/dist/frontend/lowering/require-initialization.js.map +1 -0
- package/dist/frontend/lowering/runtime-optional-bounds.js +7 -7
- package/dist/frontend/lowering/runtime-optional-bounds.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-elements.js +12 -12
- package/dist/frontend/lowering/runtime-optional-elements.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-guards.js +10 -10
- package/dist/frontend/lowering/runtime-optional-guards.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-guards.test.js +1 -1
- package/dist/frontend/lowering/runtime-optional-guards.test.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-ownership.js +10 -9
- package/dist/frontend/lowering/runtime-optional-ownership.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-provenance.js +2 -2
- package/dist/frontend/lowering/runtime-optional-provenance.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-records.d.ts +35 -0
- package/dist/frontend/lowering/runtime-optional-records.js +205 -32
- package/dist/frontend/lowering/runtime-optional-records.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-records.test.js +19 -1
- package/dist/frontend/lowering/runtime-optional-records.test.js.map +1 -1
- package/dist/frontend/lowering/sanitize-class-types.test.js +2 -2
- package/dist/frontend/lowering/split-consumers.js +4 -4
- package/dist/frontend/lowering/split-consumers.js.map +1 -1
- package/dist/frontend/lowering/static-function-names.d.ts +28 -0
- package/dist/frontend/lowering/static-function-names.js +212 -0
- package/dist/frontend/lowering/static-function-names.js.map +1 -0
- package/dist/frontend/lowering/static-this.js +6 -6
- package/dist/frontend/lowering/static-this.js.map +1 -1
- package/dist/frontend/lowering/static-typeof.d.ts +26 -0
- package/dist/frontend/lowering/static-typeof.js +133 -0
- package/dist/frontend/lowering/static-typeof.js.map +1 -0
- package/dist/frontend/lowering/strict-mode.d.ts +5 -0
- package/dist/frontend/lowering/strict-mode.js +31 -0
- package/dist/frontend/lowering/strict-mode.js.map +1 -0
- package/dist/frontend/lowering/string-index-bounds.js +13 -12
- package/dist/frontend/lowering/string-index-bounds.js.map +1 -1
- package/dist/frontend/lowering/string-index.d.ts +12 -0
- package/dist/frontend/lowering/string-index.js +72 -1
- package/dist/frontend/lowering/string-index.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +12 -3
- package/dist/frontend/lowering/surfaces.js +282 -45
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/lowering/symbol-fields.d.ts +7 -0
- package/dist/frontend/lowering/symbol-fields.js +204 -36
- package/dist/frontend/lowering/symbol-fields.js.map +1 -1
- package/dist/frontend/lowering/symbol-methods.d.ts +2 -1
- package/dist/frontend/lowering/symbol-methods.js +24 -6
- package/dist/frontend/lowering/symbol-methods.js.map +1 -1
- package/dist/frontend/lowering/thenables.d.ts +16 -0
- package/dist/frontend/lowering/thenables.js +124 -0
- package/dist/frontend/lowering/thenables.js.map +1 -0
- package/dist/frontend/lowering/thread-slots.d.ts +13 -0
- package/dist/frontend/lowering/thread-slots.js +208 -0
- package/dist/frontend/lowering/thread-slots.js.map +1 -0
- package/dist/frontend/lowering/typed-arguments.d.ts +74 -0
- package/dist/frontend/lowering/typed-arguments.js +472 -0
- package/dist/frontend/lowering/typed-arguments.js.map +1 -0
- package/dist/frontend/lowering/union-retag.d.ts +8 -0
- package/dist/frontend/lowering/union-retag.js +27 -0
- package/dist/frontend/lowering/union-retag.js.map +1 -1
- package/dist/frontend/lowering/union-retag.test.js +24 -1
- package/dist/frontend/lowering/union-retag.test.js.map +1 -1
- package/dist/frontend/lowering/var-hoisting.js +6 -6
- package/dist/frontend/lowering/var-hoisting.js.map +1 -1
- package/dist/frontend/lowering/width-lift.d.ts +4 -0
- package/dist/frontend/mock-shapes.js +13 -6
- package/dist/frontend/mock-shapes.js.map +1 -1
- package/dist/frontend/module-source-candidates.js +1 -1
- package/dist/frontend/module-source-candidates.js.map +1 -1
- package/dist/frontend/module-source-candidates.test.js +2 -1
- package/dist/frontend/module-source-candidates.test.js.map +1 -1
- package/dist/frontend/module-syntax.js +8 -8
- package/dist/frontend/module-syntax.js.map +1 -1
- package/dist/frontend/npm-static-builtin-aliases.d.ts +8 -0
- package/dist/frontend/npm-static-builtin-aliases.js +65 -0
- package/dist/frontend/npm-static-builtin-aliases.js.map +1 -0
- package/dist/frontend/npm-static-bundled-chunks.d.ts +58 -0
- package/dist/frontend/npm-static-bundled-chunks.js +981 -0
- package/dist/frontend/npm-static-bundled-chunks.js.map +1 -0
- package/dist/frontend/npm-static-bundled-chunks.test.d.ts +1 -0
- package/dist/frontend/npm-static-bundled-chunks.test.js +399 -0
- package/dist/frontend/npm-static-bundled-chunks.test.js.map +1 -0
- package/dist/frontend/npm-static-bundled-cjs.js +24 -23
- package/dist/frontend/npm-static-bundled-cjs.js.map +1 -1
- package/dist/frontend/npm-static-bundled-esm.d.ts +9 -0
- package/dist/frontend/npm-static-bundled-esm.js +988 -0
- package/dist/frontend/npm-static-bundled-esm.js.map +1 -0
- package/dist/frontend/npm-static-bundled-esm.test.d.ts +1 -0
- package/dist/frontend/npm-static-bundled-esm.test.js +336 -0
- package/dist/frontend/npm-static-bundled-esm.test.js.map +1 -0
- package/dist/frontend/npm-static-cjs-exports-alias.d.ts +2 -0
- package/dist/frontend/npm-static-cjs-exports-alias.js +186 -0
- package/dist/frontend/npm-static-cjs-exports-alias.js.map +1 -0
- package/dist/frontend/npm-static-cjs-exports-alias.test.d.ts +1 -0
- package/dist/frontend/npm-static-cjs-exports-alias.test.js +73 -0
- package/dist/frontend/npm-static-cjs-exports-alias.test.js.map +1 -0
- package/dist/frontend/npm-static-cjs-exports-var.d.ts +2 -0
- package/dist/frontend/npm-static-cjs-exports-var.js +236 -0
- package/dist/frontend/npm-static-cjs-exports-var.js.map +1 -0
- package/dist/frontend/npm-static-declaration-syntax.js +102 -101
- package/dist/frontend/npm-static-declaration-syntax.js.map +1 -1
- package/dist/frontend/npm-static-enum-iife.d.ts +6 -0
- package/dist/frontend/npm-static-enum-iife.js +280 -0
- package/dist/frontend/npm-static-enum-iife.js.map +1 -0
- package/dist/frontend/npm-static-enum-iife.test.d.ts +1 -0
- package/dist/frontend/npm-static-enum-iife.test.js +116 -0
- package/dist/frontend/npm-static-enum-iife.test.js.map +1 -0
- package/dist/frontend/npm-static-prune.js +36 -24
- package/dist/frontend/npm-static-prune.js.map +1 -1
- package/dist/frontend/npm-static-rewrite-host.d.ts +4 -1
- package/dist/frontend/npm-static-rewrite-host.js +14 -3
- package/dist/frontend/npm-static-rewrite-host.js.map +1 -1
- package/dist/frontend/npm-static-rewrite-syntax.d.ts +19 -0
- package/dist/frontend/npm-static-rewrite-syntax.js +274 -101
- package/dist/frontend/npm-static-rewrite-syntax.js.map +1 -1
- package/dist/frontend/npm-static-subtyping.js +7 -9
- package/dist/frontend/npm-static-subtyping.js.map +1 -1
- package/dist/frontend/npm-static.d.ts +25 -1
- package/dist/frontend/npm-static.js +212 -16
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm-static.test.js +22 -1
- package/dist/frontend/npm-static.test.js.map +1 -1
- package/dist/frontend/npm.js +13 -0
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/package-shims.d.ts +47 -0
- package/dist/frontend/package-shims.js +300 -0
- package/dist/frontend/package-shims.js.map +1 -0
- package/dist/frontend/pipeline.js +230 -26
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/pipeline.test.js +22 -1
- package/dist/frontend/pipeline.test.js.map +1 -1
- package/dist/frontend/program-analysis.d.ts +6 -1
- package/dist/frontend/program-analysis.js +7 -0
- package/dist/frontend/program-analysis.js.map +1 -1
- package/dist/frontend/program.d.ts +100 -2
- package/dist/frontend/program.js +1627 -262
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/program.test.js +76 -6
- package/dist/frontend/program.test.js.map +1 -1
- package/dist/frontend/resolve.js +49 -2
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/resolve.test.js +49 -0
- package/dist/frontend/resolve.test.js.map +1 -1
- package/dist/frontend/services.d.ts +26 -1
- package/dist/frontend/services.js +59 -3
- package/dist/frontend/services.js.map +1 -1
- package/dist/frontend/services.test.js +2 -1
- package/dist/frontend/services.test.js.map +1 -1
- package/dist/frontend/threads-import.js +1 -1
- package/dist/frontend/threads-import.js.map +1 -1
- package/dist/frontend/tier-analysis.d.ts +71 -0
- package/dist/frontend/tier-analysis.js +522 -0
- package/dist/frontend/tier-analysis.js.map +1 -0
- package/dist/frontend/ts7/api-conformance.d.ts +234 -0
- package/dist/frontend/ts7/api-conformance.js +7 -0
- package/dist/frontend/ts7/api-conformance.js.map +1 -0
- package/dist/frontend/ts7/ast-guards.generated.js +2 -1
- package/dist/frontend/ts7/ast-guards.generated.js.map +1 -1
- package/dist/frontend/ts7/ast-node.d.ts +47 -25
- package/dist/frontend/ts7/ast-node.js +64 -18
- package/dist/frontend/ts7/ast-node.js.map +1 -1
- package/dist/frontend/ts7/ast-node.test.js +36 -12
- package/dist/frontend/ts7/ast-node.test.js.map +1 -1
- package/dist/frontend/ts7/ast-types.d.ts +10 -3
- package/dist/frontend/ts7/ast-types.generated.d.ts +39 -39
- package/dist/frontend/ts7/ast.d.ts +1 -0
- package/dist/frontend/ts7/ast.js +3 -2
- package/dist/frontend/ts7/ast.js.map +1 -1
- package/dist/frontend/ts7/checker-backend.d.ts +23 -0
- package/dist/frontend/ts7/checker-backend.js +88 -0
- package/dist/frontend/ts7/checker-backend.js.map +1 -0
- package/dist/frontend/ts7/checker-backend.test.d.ts +1 -0
- package/dist/frontend/ts7/checker-backend.test.js +63 -0
- package/dist/frontend/ts7/checker-backend.test.js.map +1 -0
- package/dist/frontend/ts7/checker-cache.d.ts +0 -3
- package/dist/frontend/ts7/checker-cache.js +0 -6
- package/dist/frontend/ts7/checker-cache.js.map +1 -1
- package/dist/frontend/ts7/checker.d.ts +18 -11
- package/dist/frontend/ts7/checker.js +42 -55
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/ts7/checker.test.js +10 -7
- package/dist/frontend/ts7/checker.test.js.map +1 -1
- package/dist/frontend/ts7/diagnostic.d.ts +19 -0
- package/dist/frontend/ts7/diagnostic.js +22 -0
- package/dist/frontend/ts7/diagnostic.js.map +1 -0
- package/dist/frontend/ts7/node-functions.d.ts +8 -0
- package/dist/frontend/ts7/node-functions.js +18 -0
- package/dist/frontend/ts7/node-functions.js.map +1 -0
- package/dist/frontend/ts7/program-host.d.ts +10 -5
- package/dist/frontend/ts7/program-host.js +19 -0
- package/dist/frontend/ts7/program-host.js.map +1 -1
- package/dist/frontend/ts7/rpc-api.d.ts +5 -1
- package/dist/frontend/ts7/rpc-api.js +8 -1
- package/dist/frontend/ts7/rpc-api.js.map +1 -1
- package/dist/frontend/ts7/semantic-checker.d.ts +13 -6
- package/dist/frontend/ts7/semantic-checker.js +26 -8
- package/dist/frontend/ts7/semantic-checker.js.map +1 -1
- package/dist/frontend/ts7/semantic-checker.test.js +12 -9
- package/dist/frontend/ts7/semantic-checker.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.d.ts +57 -24
- package/dist/frontend/ts7/semantic-model.js +114 -16
- package/dist/frontend/ts7/semantic-model.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.test.js +4 -4
- package/dist/frontend/ts7/semantic-model.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-types.d.ts +7 -3
- package/dist/frontend/ts7/semantic-types.js +1 -1
- package/dist/frontend/ts7/semantic-types.js.map +1 -1
- package/dist/frontend/ts7/session.d.ts +30 -15
- package/dist/frontend/ts7/session.js +8 -5
- package/dist/frontend/ts7/session.js.map +1 -1
- package/dist/frontend/ts7/session.test.js +9 -5
- package/dist/frontend/ts7/session.test.js.map +1 -1
- package/dist/frontend/ts7/source-parser.d.ts +6 -2
- package/dist/frontend/ts7/source-parser.js +24 -3
- package/dist/frontend/ts7/source-parser.js.map +1 -1
- package/dist/frontend/ts7/source-parser.test.js +38 -17
- package/dist/frontend/ts7/source-parser.test.js.map +1 -1
- package/dist/frontend/type-mapper.d.ts +122 -2
- package/dist/frontend/type-mapper.js +2735 -723
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/frontend/type-only-imports.d.ts +28 -0
- package/dist/frontend/type-only-imports.js +122 -0
- package/dist/frontend/type-only-imports.js.map +1 -0
- package/dist/frontend/worker-target.js +8 -8
- package/dist/frontend/worker-target.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +87 -8
- package/dist/index.js.map +1 -1
- package/dist/ir/analysis.js +4 -2
- package/dist/ir/analysis.js.map +1 -1
- package/dist/ir/api.d.ts +1 -1
- package/dist/ir/api.js +1 -1
- package/dist/ir/api.js.map +1 -1
- package/dist/ir/array-length-stability.d.ts +31 -0
- package/dist/ir/array-length-stability.js +249 -0
- package/dist/ir/array-length-stability.js.map +1 -0
- package/dist/ir/array-length-stability.test.d.ts +1 -0
- package/dist/ir/array-length-stability.test.js +134 -0
- package/dist/ir/array-length-stability.test.js.map +1 -0
- package/dist/ir/build.d.ts +2 -2
- package/dist/ir/build.js +1 -1
- package/dist/ir/build.js.map +1 -1
- package/dist/ir/builtin-effects.js +116 -0
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +1 -1
- package/dist/ir/builtin-signatures.js +540 -29
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/byte-numbers.js +3 -0
- package/dist/ir/byte-numbers.js.map +1 -1
- package/dist/ir/callback-specialization.d.ts +37 -0
- package/dist/ir/callback-specialization.js +459 -0
- package/dist/ir/callback-specialization.js.map +1 -0
- package/dist/ir/callback-specialization.test.d.ts +1 -0
- package/dist/ir/callback-specialization.test.js +208 -0
- package/dist/ir/callback-specialization.test.js.map +1 -0
- package/dist/ir/capture-values.d.ts +0 -1
- package/dist/ir/capture-values.js +51 -40
- package/dist/ir/capture-values.js.map +1 -1
- package/dist/ir/constant-globals.test.js +1 -1
- package/dist/ir/constant-tables.test.js +1 -1
- package/dist/ir/field-values.test.js +1 -1
- package/dist/ir/final-fields.test.js +1 -1
- package/dist/ir/function-references.test.js +9 -1
- package/dist/ir/function-references.test.js.map +1 -1
- package/dist/ir/init-only-globals.test.js +1 -1
- package/dist/ir/initializer-bindings.test.js +1 -1
- package/dist/ir/int32-slots.d.ts +14 -0
- package/dist/ir/int32-slots.js +97 -14
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/int32-slots.test.js +1 -1
- package/dist/ir/integer-loop-facts.d.ts +7 -0
- package/dist/ir/integer-loop-facts.js +103 -17
- package/dist/ir/integer-loop-facts.js.map +1 -1
- package/dist/ir/integer-loops.d.ts +1 -1
- package/dist/ir/integer-loops.js +39 -9
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/integer-loops.test.js +104 -0
- package/dist/ir/integer-loops.test.js.map +1 -1
- package/dist/ir/integer-ranges.d.ts +13 -1
- package/dist/ir/integer-ranges.js +125 -26
- package/dist/ir/integer-ranges.js.map +1 -1
- package/dist/ir/integer-ranges.test.js +273 -2
- package/dist/ir/integer-ranges.test.js.map +1 -1
- package/dist/ir/intrinsic-signatures.js +6 -0
- package/dist/ir/intrinsic-signatures.js.map +1 -1
- package/dist/ir/ir.d.ts +221 -58
- package/dist/ir/ir.js +127 -12
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/ir.test.js +10 -0
- package/dist/ir/ir.test.js.map +1 -1
- package/dist/ir/js-ic.d.ts +52 -0
- package/dist/ir/js-ic.js +199 -0
- package/dist/ir/js-ic.js.map +1 -0
- package/dist/ir/js-ic.test.d.ts +1 -0
- package/dist/ir/js-ic.test.js +148 -0
- package/dist/ir/js-ic.test.js.map +1 -0
- package/dist/ir/jsval.d.ts +8 -0
- package/dist/ir/jsval.js +399 -0
- package/dist/ir/jsval.js.map +1 -0
- package/dist/ir/jsval.test.d.ts +1 -0
- package/dist/ir/jsval.test.js +239 -0
- package/dist/ir/jsval.test.js.map +1 -0
- package/dist/ir/runtime-features.d.ts +183 -33
- package/dist/ir/runtime-features.js +795 -422
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/scalar-records.test.js +1 -1
- package/dist/ir/self-captures.d.ts +33 -0
- package/dist/ir/self-captures.js +245 -0
- package/dist/ir/self-captures.js.map +1 -0
- package/dist/ir/self-captures.test.d.ts +1 -0
- package/dist/ir/self-captures.test.js +135 -0
- package/dist/ir/self-captures.test.js.map +1 -0
- package/dist/ir/serialize.d.ts +1 -1
- package/dist/ir/serialize.js +7 -4
- package/dist/ir/serialize.js.map +1 -1
- package/dist/ir/tiers.d.ts +26 -0
- package/dist/ir/tiers.js +101 -0
- package/dist/ir/tiers.js.map +1 -0
- package/dist/ir/tiers.test.d.ts +1 -0
- package/dist/ir/tiers.test.js +140 -0
- package/dist/ir/tiers.test.js.map +1 -0
- package/dist/ir/traverse.js +201 -150
- package/dist/ir/traverse.js.map +1 -1
- package/dist/ir/traverse.test.js +33 -30
- package/dist/ir/traverse.test.js.map +1 -1
- package/dist/ir/unshare.js +65 -3
- package/dist/ir/unshare.js.map +1 -1
- package/dist/ir/unshare.test.js +1 -1
- package/dist/ir/validate.js +196 -76
- package/dist/ir/validate.js.map +1 -1
- package/dist/ir/validate.test.js +41 -11
- package/dist/ir/validate.test.js.map +1 -1
- package/dist/library/fence-eval.test.js +1 -1
- package/dist/library/int-infer.test.js +4 -4
- package/dist/library/ir-policy.js +14 -0
- package/dist/library/ir-policy.js.map +1 -1
- package/dist/library/library-cache.d.ts +1 -0
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +5 -5
- package/dist/library/library-profile.d.ts +4 -4
- package/dist/library/library-profile.js +35 -7
- package/dist/library/library-profile.js.map +1 -1
- package/dist/library/prepare.js +13 -1
- package/dist/library/prepare.js.map +1 -1
- package/dist/native/cli.js +22 -0
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.js +35 -6
- package/dist/native/compiler.js.map +1 -1
- package/dist/native/compiler.test.js +2 -2
- package/dist/native/executable-cache.js +3 -0
- package/dist/native/executable-cache.js.map +1 -1
- package/dist/native/prepare.js +10 -0
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/sanitizer.test.js +19 -0
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/native/toolchain.d.ts +2 -0
- package/dist/native/toolchain.js +10 -1
- package/dist/native/toolchain.js.map +1 -1
- package/dist/native/toolchain.test.js +39 -1
- package/dist/native/toolchain.test.js.map +1 -1
- package/dist/startup-cache.d.ts +1 -0
- package/dist/startup-cache.js +1 -0
- package/dist/startup-cache.js.map +1 -1
- package/dist/wasm/base64.d.ts +5 -0
- package/dist/wasm/base64.js +62 -0
- package/dist/wasm/base64.js.map +1 -0
- package/dist/wasm/binary.d.ts +36 -0
- package/dist/wasm/binary.js +1976 -0
- package/dist/wasm/binary.js.map +1 -0
- package/dist/wasm/binary.test.d.ts +1 -0
- package/dist/wasm/binary.test.js +190 -0
- package/dist/wasm/binary.test.js.map +1 -0
- package/dist/wasm/discover.d.ts +38 -0
- package/dist/wasm/discover.js +377 -0
- package/dist/wasm/discover.js.map +1 -0
- package/dist/wasm/discover.test.d.ts +1 -0
- package/dist/wasm/discover.test.js +24 -0
- package/dist/wasm/discover.test.js.map +1 -0
- package/dist/wasm/module.d.ts +151 -0
- package/dist/wasm/module.js +575 -0
- package/dist/wasm/module.js.map +1 -0
- package/dist/wasm/translate.d.ts +48 -0
- package/dist/wasm/translate.js +2129 -0
- package/dist/wasm/translate.js.map +1 -0
- package/dist/wasm/translate.test.d.ts +1 -0
- package/dist/wasm/translate.test.js +207 -0
- package/dist/wasm/translate.test.js.map +1 -0
- package/package.json +22 -20
- package/shims/fs-extra/core/api.ts +1192 -0
- package/shims/fs-extra/index.ts +9 -0
- package/shims/undici/core/agent.ts +163 -0
- package/shims/undici/core/api.ts +93 -0
- package/shims/undici/core/client.ts +1304 -0
- package/shims/undici/core/connector.ts +157 -0
- package/shims/undici/core/diagnostics-types.ts +68 -0
- package/shims/undici/core/diagnostics.ts +16 -0
- package/shims/undici/core/dispatcher.ts +574 -0
- package/shims/undici/core/errors-v5.ts +22 -0
- package/shims/undici/core/errors-v7.ts +25 -0
- package/shims/undici/core/errors.ts +255 -0
- package/shims/undici/core/fetch.ts +635 -0
- package/shims/undici/core/pool.ts +280 -0
- package/shims/undici/core/readable.ts +268 -0
- package/shims/undici/core/request.ts +313 -0
- package/shims/undici/core/timers.ts +80 -0
- package/shims/undici/core/types.ts +167 -0
- package/shims/undici/core/util.ts +67 -0
- package/shims/undici/v5.ts +119 -0
- package/shims/undici/v7.ts +119 -0
- package/surface-manifest.json +304 -22
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
import * as ts from "../ts7/adapter.js";
|
|
2
|
+
import { staticCondition, staticallySelected } from "./static-typeof.js";
|
|
3
|
+
function unparenthesized(e) {
|
|
4
|
+
while (ts.isParenthesizedExpression(e))
|
|
5
|
+
e = e.expression;
|
|
6
|
+
return e;
|
|
7
|
+
}
|
|
2
8
|
import { UNSUPPORTED } from "../../diagnostics/diagnostic.js";
|
|
3
9
|
import { BOOL, BYTES_U8, CHILD_T, CRYPTOHASH_T, CRYPTOHMAC_T, DIR_T, DYN, F64, FILEHANDLE_T, SPAWNRES_T, STATS_T, STRING, URL_T, VOID, arrayOf, } from "../../ir/ir.js";
|
|
4
|
-
import { isNodeTypesPath, requireSpecOf } from "../program.js";
|
|
10
|
+
import { isJsSourceFile, isNodeTypesPath, requireSpecOf } from "../program.js";
|
|
5
11
|
import { ZLIB_CONSTANTS } from "./zlib-constants.js";
|
|
12
|
+
import { V8_MEMBER_REASON } from "../builtin-modules.js";
|
|
6
13
|
/** zlib stream instances: runtime Transform streams (scr_zlib_stream.c). */
|
|
7
14
|
const ZLIB_STREAM = { kind: "object", className: "%Transform" };
|
|
8
15
|
/** Statement-level constructs rejected wholesale, keyed by syntax kind. */
|
|
@@ -106,13 +113,13 @@ export function sideEffectFreeOptionValue(node) {
|
|
|
106
113
|
return sideEffectFreeOptionValue(e.operand);
|
|
107
114
|
}
|
|
108
115
|
if (ts.isObjectLiteralExpression(e)) {
|
|
109
|
-
return e.properties.every((p) => ts.isShorthandPropertyAssignment(p) ||
|
|
116
|
+
return e.properties.nodes.every((p) => ts.isShorthandPropertyAssignment(p) ||
|
|
110
117
|
(ts.isPropertyAssignment(p) &&
|
|
111
118
|
!ts.isComputedPropertyName(p.name) &&
|
|
112
119
|
sideEffectFreeOptionValue(p.initializer)));
|
|
113
120
|
}
|
|
114
121
|
if (ts.isArrayLiteralExpression(e)) {
|
|
115
|
-
return e.elements.every((el) => !ts.isSpreadElement(el) && sideEffectFreeOptionValue(el));
|
|
122
|
+
return e.elements.nodes.every((el) => !ts.isSpreadElement(el) && sideEffectFreeOptionValue(el));
|
|
116
123
|
}
|
|
117
124
|
return false;
|
|
118
125
|
}
|
|
@@ -215,8 +222,8 @@ export const HTTP_SERVER_DOCUMENTED_OPTIONS = new Set([
|
|
|
215
222
|
/** new http.Agent(options)'s documented keys (Node v24 — the Agent
|
|
216
223
|
* constructor table plus the socket.connect() options it forwards into
|
|
217
224
|
* each dial). The lowered set is keepAlive/keepAliveMsecs/maxSockets/
|
|
218
|
-
* maxFreeSockets/timeout/port
|
|
219
|
-
*
|
|
225
|
+
* maxFreeSockets/timeout/port/scheduling; the rest fence by name and
|
|
226
|
+
* unknown keys drop like Node. */
|
|
220
227
|
export const AGENT_DOCUMENTED_OPTIONS = new Set([
|
|
221
228
|
"family",
|
|
222
229
|
"hints",
|
|
@@ -566,6 +573,7 @@ export const STDLIB_SURFACE = {
|
|
|
566
573
|
cosh: ISL_N1,
|
|
567
574
|
exp: ISL_N1,
|
|
568
575
|
expm1: ISL_N1,
|
|
576
|
+
f16round: ISL_N1,
|
|
569
577
|
fround: ISL_N1,
|
|
570
578
|
hypot: ISL_N2,
|
|
571
579
|
imul: ISL_N2,
|
|
@@ -649,6 +657,7 @@ export const STATIC_MATH_FNS = {
|
|
|
649
657
|
sign: { fn: "math.sign", arity: 1 },
|
|
650
658
|
exp: { fn: "math.exp", arity: 1 },
|
|
651
659
|
expm1: { fn: "math.expm1", arity: 1 },
|
|
660
|
+
f16round: { fn: "math.f16round", arity: 1 },
|
|
652
661
|
fround: { fn: "math.fround", arity: 1 },
|
|
653
662
|
sqrt: { fn: "math.sqrt", arity: 1 },
|
|
654
663
|
log: { fn: "math.log", arity: 1 },
|
|
@@ -665,6 +674,7 @@ export const STATIC_MATH_FNS = {
|
|
|
665
674
|
* fences, while the arity range is the surface manifest's support claim. */
|
|
666
675
|
export const STATIC_NUMBER_METHODS = {
|
|
667
676
|
toFixed: { fns: ["num.toFixed0", "num.toFixed"], minArgs: 0, maxArgs: 1 },
|
|
677
|
+
toPrecision: { fns: ["num.toPrecision"], minArgs: 0, maxArgs: 1 },
|
|
668
678
|
};
|
|
669
679
|
/** The common first-class shape for builtin functions whose supported
|
|
670
680
|
* source signature is already exactly the fixed native ABI. Keeping the
|
|
@@ -1345,6 +1355,9 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1345
1355
|
result: F64,
|
|
1346
1356
|
valueParams: [{ mode: "optional", type: F64, defaultValue: 0 }],
|
|
1347
1357
|
},
|
|
1358
|
+
// A one-argument call is setPriority(0, priority)
|
|
1359
|
+
// (lowerOsSetPriorityCall completes it).
|
|
1360
|
+
setPriority: { fn: "os.setPriority", params: [F64, F64], result: VOID },
|
|
1348
1361
|
// Special-cased (lowerOsCpusCall): the call site's CpuInfo[] assembles
|
|
1349
1362
|
// from one uv_cpu_info snapshot.
|
|
1350
1363
|
cpus: { fn: "os.cpusTake", params: [], result: VOID },
|
|
@@ -1357,7 +1370,15 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1357
1370
|
userInfo: { fn: "os.userName", params: [], result: VOID },
|
|
1358
1371
|
},
|
|
1359
1372
|
crypto: {
|
|
1360
|
-
randomUUID: {
|
|
1373
|
+
randomUUID: {
|
|
1374
|
+
fn: "crypto.randomUUID",
|
|
1375
|
+
params: [],
|
|
1376
|
+
result: STRING,
|
|
1377
|
+
// As a value (uuid's `export default { randomUUID }`), the optional
|
|
1378
|
+
// options argument goes through the validating entry point.
|
|
1379
|
+
valueFn: "crypto.randomUUIDOpts",
|
|
1380
|
+
valueParams: [{ mode: "optional", type: DYN, defaultValue: undefined }],
|
|
1381
|
+
},
|
|
1361
1382
|
// A real Buffer result. The composed randomBytes(n).toString(enc)
|
|
1362
1383
|
// form KEEPS its one-libCall lowering (lowerCryptoComposedCall runs
|
|
1363
1384
|
// first and the Buffer never materializes there); this entry covers
|
|
@@ -1376,9 +1397,15 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1376
1397
|
hash: { fn: "crypto.hashDigestStr", params: [STRING, STRING, STRING], result: STRING },
|
|
1377
1398
|
timingSafeEqual: { fn: "crypto.timingSafeEqual", params: [BYTES_U8, BYTES_U8], result: BOOL },
|
|
1378
1399
|
randomFillSync: { fn: "crypto.randomFill", params: [BYTES_U8, F64, F64], result: BYTES_U8 },
|
|
1400
|
+
getRandomValues: { fn: "crypto.getRandomValues", params: [BYTES_U8], result: BYTES_U8 },
|
|
1379
1401
|
randomInt: { fn: "crypto.randomInt", params: [F64, F64], result: F64 },
|
|
1380
1402
|
randomFill: { fn: "crypto.randomFillCb", params: [], result: VOID },
|
|
1381
|
-
randomUUIDv7: {
|
|
1403
|
+
randomUUIDv7: {
|
|
1404
|
+
fn: "crypto.randomUUIDv7",
|
|
1405
|
+
params: [DYN],
|
|
1406
|
+
result: STRING,
|
|
1407
|
+
valueParams: [{ mode: "optional", type: DYN, defaultValue: undefined }],
|
|
1408
|
+
},
|
|
1382
1409
|
createSecretKey: { fn: "crypto.createSecretKey", params: [DYN, DYN], result: DYN },
|
|
1383
1410
|
generateKeySync: { fn: "crypto.generateKeySync", params: [DYN, DYN], result: DYN },
|
|
1384
1411
|
generateKey: { fn: "crypto.generateKeyCb", params: [], result: VOID },
|
|
@@ -1400,6 +1427,9 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1400
1427
|
// Decipheriv handle (lowerCryptoModuleCall).
|
|
1401
1428
|
createCipheriv: { fn: "crypto.cipherNew", params: [BOOL, DYN, DYN, DYN, DYN], result: DYN },
|
|
1402
1429
|
createDecipheriv: { fn: "crypto.cipherNew", params: [BOOL, DYN, DYN, DYN, DYN], result: DYN },
|
|
1430
|
+
// A checked-dynamic curve name; the result is a native ECDH handle
|
|
1431
|
+
// (lowerCreateEcdh).
|
|
1432
|
+
createECDH: { fn: "crypto.ecdhNew", params: [DYN], result: DYN },
|
|
1403
1433
|
},
|
|
1404
1434
|
zlib: {
|
|
1405
1435
|
// The default-options convenience family is special-cased in
|
|
@@ -1618,6 +1648,22 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1618
1648
|
isAsyncFunction: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1619
1649
|
isGeneratorFunction: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1620
1650
|
isGeneratorObject: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1651
|
+
isDate: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1652
|
+
isSharedArrayBuffer: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1653
|
+
isMapIterator: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1654
|
+
isSetIterator: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1655
|
+
isKeyObject: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1656
|
+
isNumberObject: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1657
|
+
isStringObject: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1658
|
+
isBooleanObject: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1659
|
+
isBigIntObject: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1660
|
+
isSymbolObject: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1661
|
+
isBoxedPrimitive: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1662
|
+
isBigInt64Array: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1663
|
+
isBigUint64Array: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1664
|
+
isFloat16Array: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1665
|
+
isCryptoKey: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1666
|
+
isExternal: { fn: "util.typeIs", params: [DYN], result: BOOL },
|
|
1621
1667
|
},
|
|
1622
1668
|
buffer: {
|
|
1623
1669
|
isAscii: { fn: "buffer.isAscii", params: [DYN], result: BOOL },
|
|
@@ -1661,6 +1707,22 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1661
1707
|
valueParams: [{ mode: "required", type: STRING }],
|
|
1662
1708
|
},
|
|
1663
1709
|
},
|
|
1710
|
+
// node:punycode (deprecated): punycode.js 2.1.0's conversions over
|
|
1711
|
+
// strings (scr_url.c). ucs2.decode/encode are members of the module's
|
|
1712
|
+
// ucs2 object, dispatched as module members (builtinMemberOf). The
|
|
1713
|
+
// DEP0040 report rides the module's load sites (punycodeLoadWarning).
|
|
1714
|
+
punycode: {
|
|
1715
|
+
decode: { fn: "punycode.decode", params: [STRING], result: STRING },
|
|
1716
|
+
encode: { fn: "punycode.encode", params: [STRING], result: STRING },
|
|
1717
|
+
toASCII: { fn: "punycode.toASCII", params: [STRING], result: STRING },
|
|
1718
|
+
toUnicode: { fn: "punycode.toUnicode", params: [STRING], result: STRING },
|
|
1719
|
+
"ucs2.decode": { fn: "punycode.ucs2Decode", params: [STRING], result: arrayOf(F64) },
|
|
1720
|
+
"ucs2.encode": { fn: "punycode.ucs2Encode", params: [arrayOf(F64)], result: STRING },
|
|
1721
|
+
},
|
|
1722
|
+
// node:constants (deprecated) is one frozen object (Object.assign of
|
|
1723
|
+
// os.constants' groups, fs.constants and crypto.constants): bindings of
|
|
1724
|
+
// the module read it as a checked-dynamic value (builtinConstantsObject).
|
|
1725
|
+
constants: {},
|
|
1664
1726
|
// node:readline: createInterface's options are entirely special-cased
|
|
1665
1727
|
// (exactly { input: process.stdin, output?: process.stdout } — see
|
|
1666
1728
|
// lowerBuiltinModuleCall); the entry carries the canonical shape. The
|
|
@@ -1712,6 +1774,18 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1712
1774
|
// special-cased); the keys exist for the same reason net/http's do.
|
|
1713
1775
|
dgram: {},
|
|
1714
1776
|
dns: {},
|
|
1777
|
+
// node:dns/promises rides the same spoke (lookup's promise form).
|
|
1778
|
+
"dns/promises": {},
|
|
1779
|
+
// node:v8: getHeapStatistics answers allocator-derived figures in
|
|
1780
|
+
// Node's shape (builtins/v8.ts — the entry carries the canonical
|
|
1781
|
+
// shape); every other member fences with the by-design reason
|
|
1782
|
+
// (builtinFenceHintOf).
|
|
1783
|
+
v8: {
|
|
1784
|
+
getHeapStatistics: { fn: "process.memoryUsageTake", params: [], result: VOID },
|
|
1785
|
+
},
|
|
1786
|
+
// node:stream/web re-exports the web stream globals (the same objects);
|
|
1787
|
+
// its members lower through the globals' own paths.
|
|
1788
|
+
"stream/web": {},
|
|
1715
1789
|
// node:assert lowers ENTIRELY through the assert spoke (lower-assert.ts
|
|
1716
1790
|
// — every call shape is special-cased: optional messages complete, the
|
|
1717
1791
|
// comparisons pick per-type libCalls, deep equality synthesizes
|
|
@@ -1733,13 +1807,25 @@ export const BUILTIN_MODULE_FNS = {
|
|
|
1733
1807
|
// module-qualified with the pointed hint below.
|
|
1734
1808
|
"stream/consumers": {},
|
|
1735
1809
|
// node:timers/promises — the delay-only setTimeout and bare setImmediate
|
|
1736
|
-
// (void promises the shared timer heap settles)
|
|
1737
|
-
//
|
|
1738
|
-
//
|
|
1739
|
-
//
|
|
1810
|
+
// (void promises the shared timer heap settles), and scheduler.wait /
|
|
1811
|
+
// scheduler.yield, which Node defines as setTimeout(delay, undefined,
|
|
1812
|
+
// options) and setImmediate(). The arity completion (omitted delay =
|
|
1813
|
+
// Node's 1ms) and the value/options fences are special-cased in
|
|
1814
|
+
// lowerBuiltinModuleCall; these entries carry the canonical shapes and
|
|
1815
|
+
// route the dispatch.
|
|
1740
1816
|
"timers/promises": {
|
|
1741
1817
|
setTimeout: { fn: "tp.setTimeout", params: [F64], result: { kind: "promise", inner: VOID } },
|
|
1742
1818
|
setImmediate: { fn: "tp.setImmediate", params: [], result: { kind: "promise", inner: VOID } },
|
|
1819
|
+
"scheduler.wait": {
|
|
1820
|
+
fn: "tp.setTimeout",
|
|
1821
|
+
params: [F64],
|
|
1822
|
+
result: { kind: "promise", inner: VOID },
|
|
1823
|
+
},
|
|
1824
|
+
"scheduler.yield": {
|
|
1825
|
+
fn: "tp.setImmediate",
|
|
1826
|
+
params: [],
|
|
1827
|
+
result: { kind: "promise", inner: VOID },
|
|
1828
|
+
},
|
|
1743
1829
|
},
|
|
1744
1830
|
// node:diagnostics_channel — the pub/sub core. channel() answers an f64
|
|
1745
1831
|
// handle (type-mapper.ts maps Channel to F64); the subscriber arguments box
|
|
@@ -1774,6 +1860,7 @@ export const BUILTIN_MODULE_CONSTS = {
|
|
|
1774
1860
|
os: { EOL: "\n", devNull: "/dev/null" },
|
|
1775
1861
|
worker_threads: { isMainThread: true, threadId: 0 },
|
|
1776
1862
|
cluster: { isPrimary: true, isMaster: true, isWorker: false },
|
|
1863
|
+
punycode: { version: "2.1.0" },
|
|
1777
1864
|
// zlib's module-level copies of its constants (every member outside
|
|
1778
1865
|
// BROTLI_*, Node's own loop over zlib.constants).
|
|
1779
1866
|
zlib: Object.fromEntries(Object.entries(ZLIB_CONSTANTS).filter(([name]) => !name.startsWith("BROTLI"))),
|
|
@@ -1836,6 +1923,9 @@ export const BUILTIN_MODULE_FN_ALIASES = {
|
|
|
1836
1923
|
readdirSync: ["fs.readdirTypesSync"],
|
|
1837
1924
|
// The { throwIfNoEntry } probe form.
|
|
1838
1925
|
statSync: ["fs.statProbeSync"],
|
|
1926
|
+
// realpathSync and realpathSync.native read as function values.
|
|
1927
|
+
realpathSync: ["fs.realpathValue"],
|
|
1928
|
+
"realpathSync.native": ["fs.realpathValue"],
|
|
1839
1929
|
lstatSync: ["fs.lstatProbeSync"],
|
|
1840
1930
|
globSync: ["fs.globTypesSync"],
|
|
1841
1931
|
// The JS-source validation-ladder variant (lowerFsLadderCall): the
|
|
@@ -1864,8 +1954,13 @@ export const BUILTIN_MODULE_FN_ALIASES = {
|
|
|
1864
1954
|
crypto: {
|
|
1865
1955
|
// The composed randomBytes(n).toString(enc) chain keeps its one-libCall
|
|
1866
1956
|
// lowering (lowerCryptoComposedCall), while the callback overload has
|
|
1867
|
-
// its own adapter spelling. Both remain the randomBytes surface
|
|
1868
|
-
|
|
1957
|
+
// its own adapter spelling. Both remain the randomBytes surface, as does
|
|
1958
|
+
// the util.promisify form.
|
|
1959
|
+
randomBytes: [
|
|
1960
|
+
"crypto.randomBytesToString",
|
|
1961
|
+
"crypto.randomBytesCb",
|
|
1962
|
+
"crypto.randomBytesPromise",
|
|
1963
|
+
],
|
|
1869
1964
|
// Omitting size fills from offset through the rest of the Buffer and
|
|
1870
1965
|
// uses a separate runtime entry point for Node's exact bounds checks.
|
|
1871
1966
|
// Views of every kind return themselves; other buffers take the Dyn form.
|
|
@@ -1875,9 +1970,14 @@ export const BUILTIN_MODULE_FN_ALIASES = {
|
|
|
1875
1970
|
"crypto.randomFillViewRest",
|
|
1876
1971
|
"crypto.randomFillSyncDyn",
|
|
1877
1972
|
],
|
|
1878
|
-
randomFill: [
|
|
1973
|
+
randomFill: [
|
|
1974
|
+
"crypto.randomFillCbDyn",
|
|
1975
|
+
"crypto.randomFillPromise",
|
|
1976
|
+
"crypto.randomFillPromiseDyn",
|
|
1977
|
+
],
|
|
1879
1978
|
timingSafeEqual: ["crypto.timingSafeEqualDyn"],
|
|
1880
|
-
|
|
1979
|
+
getRandomValues: ["crypto.getRandomValuesDyn"],
|
|
1980
|
+
randomInt: ["crypto.randomIntMax", "crypto.randomIntCb", "crypto.randomIntPromise"],
|
|
1881
1981
|
randomUUID: ["crypto.randomUUIDOpts"],
|
|
1882
1982
|
},
|
|
1883
1983
|
os: {
|
|
@@ -1899,7 +1999,14 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
1899
1999
|
id: "node-builtin.worker_threads.metadata",
|
|
1900
2000
|
kind: "node-builtin",
|
|
1901
2001
|
name: "worker_threads metadata",
|
|
1902
|
-
fns: [
|
|
2002
|
+
fns: [
|
|
2003
|
+
"worker.isMainThread",
|
|
2004
|
+
"worker.threadId",
|
|
2005
|
+
"worker.data",
|
|
2006
|
+
"worker.parentPort",
|
|
2007
|
+
"worker.resourceLimits",
|
|
2008
|
+
"worker.threadName",
|
|
2009
|
+
],
|
|
1903
2010
|
note: "current-thread metadata and the worker's parent message port",
|
|
1904
2011
|
},
|
|
1905
2012
|
{
|
|
@@ -1923,6 +2030,20 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
1923
2030
|
fns: ["blob.fileNew"],
|
|
1924
2031
|
note: "a Blob with name and lastModified (Date.now() when absent)",
|
|
1925
2032
|
},
|
|
2033
|
+
{
|
|
2034
|
+
id: "stdlib.webcrypto.subtle",
|
|
2035
|
+
kind: "stdlib",
|
|
2036
|
+
name: "globalThis.crypto.subtle",
|
|
2037
|
+
fns: ["webcrypto.importKey", "webcrypto.sign", "webcrypto.verify", "webcrypto.digest"],
|
|
2038
|
+
note: "importKey('raw') for HMAC keys, HMAC sign and verify, and SHA-1/SHA-2 digest; other methods, algorithms and key formats are refused",
|
|
2039
|
+
},
|
|
2040
|
+
{
|
|
2041
|
+
id: "stdlib.webcrypto.CryptoKey",
|
|
2042
|
+
kind: "stdlib",
|
|
2043
|
+
name: "CryptoKey",
|
|
2044
|
+
fns: ["webcrypto.isCryptoKey"],
|
|
2045
|
+
note: "secret HMAC keys with type, extractable, algorithm and usages, and instanceof CryptoKey",
|
|
2046
|
+
},
|
|
1926
2047
|
{
|
|
1927
2048
|
id: "stdlib.atomics",
|
|
1928
2049
|
kind: "stdlib",
|
|
@@ -1951,14 +2072,22 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
1951
2072
|
kind: "stdlib",
|
|
1952
2073
|
name: "Date.parse",
|
|
1953
2074
|
fns: ["date.parse"],
|
|
1954
|
-
note: "one date string, using
|
|
2075
|
+
note: "one date string, using V8's date parser shared with new Date(dateString)",
|
|
1955
2076
|
},
|
|
1956
2077
|
{
|
|
1957
2078
|
id: "stdlib.date.constructor",
|
|
1958
2079
|
kind: "stdlib",
|
|
1959
2080
|
name: "Date constructor",
|
|
1960
|
-
fns: [
|
|
1961
|
-
|
|
2081
|
+
fns: [
|
|
2082
|
+
"date.newNow",
|
|
2083
|
+
"date.newMs",
|
|
2084
|
+
"date.newString",
|
|
2085
|
+
"date.nativeNew",
|
|
2086
|
+
"date.newLocal",
|
|
2087
|
+
"date.nativeNewFields",
|
|
2088
|
+
"date.nativeNewValue",
|
|
2089
|
+
],
|
|
2090
|
+
note: "zero arguments, one milliseconds/date-string argument, or local-time year/month fields; values are the read-only TimeClip scalar slice",
|
|
1962
2091
|
},
|
|
1963
2092
|
{
|
|
1964
2093
|
id: "stdlib.date.UTC",
|
|
@@ -1988,6 +2117,13 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
1988
2117
|
fns: ["date.toISOString", "date.toISOStringValue"],
|
|
1989
2118
|
note: "UTC ISO formatting over constructed and stored Date values",
|
|
1990
2119
|
},
|
|
2120
|
+
{
|
|
2121
|
+
id: "stdlib.date.toUTCString",
|
|
2122
|
+
kind: "stdlib",
|
|
2123
|
+
name: "Date.prototype.toUTCString",
|
|
2124
|
+
fns: ["date.toUTCString"],
|
|
2125
|
+
note: "RFC 7231 IMF-fixdate formatting over stored Date values",
|
|
2126
|
+
},
|
|
1991
2127
|
{
|
|
1992
2128
|
id: "stdlib.date.getFullYear",
|
|
1993
2129
|
kind: "stdlib",
|
|
@@ -2085,6 +2221,25 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
2085
2221
|
name: "Date.prototype.getTimezoneOffset",
|
|
2086
2222
|
fns: ["date.getTimezoneOffset"],
|
|
2087
2223
|
},
|
|
2224
|
+
{
|
|
2225
|
+
id: "stdlib.date.toString",
|
|
2226
|
+
kind: "stdlib",
|
|
2227
|
+
name: "Date.prototype.toString",
|
|
2228
|
+
fns: ["date.toString"],
|
|
2229
|
+
note: "local time with the host zone's long English name; String(date) and template literals use it",
|
|
2230
|
+
},
|
|
2231
|
+
{
|
|
2232
|
+
id: "stdlib.date.toDateString",
|
|
2233
|
+
kind: "stdlib",
|
|
2234
|
+
name: "Date.prototype.toDateString",
|
|
2235
|
+
fns: ["date.toDateString"],
|
|
2236
|
+
},
|
|
2237
|
+
{
|
|
2238
|
+
id: "stdlib.date.toTimeString",
|
|
2239
|
+
kind: "stdlib",
|
|
2240
|
+
name: "Date.prototype.toTimeString",
|
|
2241
|
+
fns: ["date.toTimeString"],
|
|
2242
|
+
},
|
|
2088
2243
|
// ── perf_hooks (lowerPerfHooksCall): the monotonic clock.
|
|
2089
2244
|
{
|
|
2090
2245
|
id: "node-builtin.perf_hooks.performance.now",
|
|
@@ -2135,6 +2290,27 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
2135
2290
|
name: "perf_hooks.performance.clearMeasures",
|
|
2136
2291
|
fns: ["perf.clearMeasures"],
|
|
2137
2292
|
},
|
|
2293
|
+
{
|
|
2294
|
+
id: "node-builtin.perf_hooks.performance.eventLoopUtilization",
|
|
2295
|
+
kind: "node-builtin",
|
|
2296
|
+
name: "perf_hooks.performance.eventLoopUtilization",
|
|
2297
|
+
fns: ["perf.loopStart", "perf.idleTime"],
|
|
2298
|
+
note: "active time is the main thread's CPU time since the loop started; the one- and two-argument difference forms are supported",
|
|
2299
|
+
},
|
|
2300
|
+
{
|
|
2301
|
+
id: "node-builtin.perf_hooks.monitorEventLoopDelay",
|
|
2302
|
+
kind: "node-builtin",
|
|
2303
|
+
name: "perf_hooks.monitorEventLoopDelay",
|
|
2304
|
+
fns: [
|
|
2305
|
+
"perf.eldNew",
|
|
2306
|
+
"perf.eldEnable",
|
|
2307
|
+
"perf.eldDisable",
|
|
2308
|
+
"perf.eldReset",
|
|
2309
|
+
"perf.eldPercentile",
|
|
2310
|
+
"perf.eldStat",
|
|
2311
|
+
],
|
|
2312
|
+
note: "an unref'd sampling interval records the delay histogram; enable, disable, reset, percentile and the min, max, mean, stddev, count and exceeds readings are supported",
|
|
2313
|
+
},
|
|
2138
2314
|
// ── the process global's ambient reads and authority calls
|
|
2139
2315
|
// (lowerProcessProperty/lowerProcessMethodCall — process is a
|
|
2140
2316
|
// provenance-checked global here, not an importable module).
|
|
@@ -2246,6 +2422,12 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
2246
2422
|
name: "process.argv0",
|
|
2247
2423
|
fns: ["process.argv0"],
|
|
2248
2424
|
},
|
|
2425
|
+
{
|
|
2426
|
+
id: "node-builtin.process.execArgv",
|
|
2427
|
+
kind: "node-builtin",
|
|
2428
|
+
name: "process.execArgv",
|
|
2429
|
+
fns: ["process.execArgv"],
|
|
2430
|
+
},
|
|
2249
2431
|
{
|
|
2250
2432
|
id: "node-builtin.process.execPath",
|
|
2251
2433
|
kind: "node-builtin",
|
|
@@ -2354,8 +2536,8 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
2354
2536
|
id: "node-builtin.process.exitCode",
|
|
2355
2537
|
kind: "node-builtin",
|
|
2356
2538
|
name: "process.exitCode",
|
|
2357
|
-
fns: ["process.setExitCode"],
|
|
2358
|
-
note: "numeric writes in statement position set the implicit exit status; process.exit() reads it",
|
|
2539
|
+
fns: ["process.setExitCode", "process.setExitCodeTracked", "process.hasExitCode"],
|
|
2540
|
+
note: "numeric writes in statement position set the implicit exit status; reads answer the assigned code or undefined; process.exit() reads it",
|
|
2359
2541
|
},
|
|
2360
2542
|
// ── the tls CA store (lowerTlsCaCall / lowerTlsRootCertificates): the
|
|
2361
2543
|
// host's trust anchors, read and replaced. Dedicated paths, and
|
|
@@ -2395,6 +2577,15 @@ export const AMBIENT_SURFACE_FNS = [
|
|
|
2395
2577
|
fns: ["os.constants"],
|
|
2396
2578
|
note: "the platform's dlopen, errno, signals and priority groups; members a platform lacks read as undefined",
|
|
2397
2579
|
},
|
|
2580
|
+
// fs.constants as a value, and its members beyond the baked access-mode
|
|
2581
|
+
// bits: the target libc's null-prototype constants object.
|
|
2582
|
+
{
|
|
2583
|
+
id: "node-builtin.fs.constants",
|
|
2584
|
+
kind: "node-builtin",
|
|
2585
|
+
name: "fs.constants",
|
|
2586
|
+
fns: ["fs.constants"],
|
|
2587
|
+
note: "node_constants.cc's fs group under the target libc's macros; members a platform lacks read as undefined",
|
|
2588
|
+
},
|
|
2398
2589
|
];
|
|
2399
2590
|
/** The win32-target overrides of the bare modules' constants: path's
|
|
2400
2591
|
* constants ARE the path/win32 namespace's, and os.EOL is CRLF (Node's
|
|
@@ -2477,7 +2668,11 @@ export const FS_CALLBACK_MEMBERS = new Set([
|
|
|
2477
2668
|
* inherited function into the diagnostic text). */
|
|
2478
2669
|
export function builtinFenceHintOf(module, member) {
|
|
2479
2670
|
const mod = ownEntry(BUILTIN_MODULE_FENCE_HINTS, module);
|
|
2480
|
-
|
|
2671
|
+
const hint = mod ? ownEntry(mod, member) : undefined;
|
|
2672
|
+
// node:v8's unlowered members observe the engine itself: the by-design
|
|
2673
|
+
// reason, not a pending-surface hint (kept out of the hint table so the
|
|
2674
|
+
// compatibility rows stay by-design rather than refused).
|
|
2675
|
+
return hint === undefined && module === "v8" ? V8_MEMBER_REASON : hint;
|
|
2481
2676
|
}
|
|
2482
2677
|
/** BUILTIN_MODULE_CONSTS with the win32-target overrides applied — the
|
|
2483
2678
|
* constants twin of builtinModuleFnsOf. */
|
|
@@ -2624,7 +2819,7 @@ export const BUILTIN_MODULE_FENCE_HINTS = {
|
|
|
2624
2819
|
doesNotReject: ASSERT_MODULE_HINTS["doesNotReject"],
|
|
2625
2820
|
},
|
|
2626
2821
|
util: {
|
|
2627
|
-
promisify: "the lowered shapes are const bindings over child_process.execFile, child_process.exec, setTimeout, setImmediate, stream.finished, stream.pipeline, the zlib callback one-shots and the fs callback functions with an fs/promises counterpart; call the bound function directly",
|
|
2822
|
+
promisify: "the lowered shapes are const bindings over child_process.execFile, child_process.exec, setTimeout, setImmediate, stream.finished, stream.pipeline, the zlib callback one-shots, the crypto callback functions, dns.lookup, dns.lookupService and the fs callback functions with an fs/promises counterpart, plus typed callback-last function values whose callback takes (error?: Error | null, value?); call the bound function directly",
|
|
2628
2823
|
},
|
|
2629
2824
|
"stream/consumers": {
|
|
2630
2825
|
blob: "collecting a stream into a Blob is not supported yet — " +
|
|
@@ -2636,7 +2831,7 @@ export const BUILTIN_MODULE_FENCE_HINTS = {
|
|
|
2636
2831
|
"relative .json documents and natively compiled npm packages resolve at build time; " +
|
|
2637
2832
|
"dynamic specifiers cannot exist in a compiled binary's fixed module graph",
|
|
2638
2833
|
isBuiltin: "the lowered call checks a string against the baked Node v24 list, including bare/node: aliases and prefix-only builtins",
|
|
2639
|
-
syncBuiltinESMExports: "the direct zero-argument call
|
|
2834
|
+
syncBuiltinESMExports: "the direct zero-argument call statement refreshes the ES module namespace copy of events.defaultMaxListeners, the one builtin export a program can change",
|
|
2640
2835
|
},
|
|
2641
2836
|
child_process: {
|
|
2642
2837
|
execFile: "the callback forms execFile(file, callback), execFile(file, args, callback), and execFile(file, args, { encoding: 'utf8', maxBuffer: N }, callback) lower; " +
|
|
@@ -2655,7 +2850,6 @@ export const BUILTIN_MODULE_FENCE_HINTS = {
|
|
|
2655
2850
|
"createDiffieHellman",
|
|
2656
2851
|
"createDiffieHellmanGroup",
|
|
2657
2852
|
"getDiffieHellman",
|
|
2658
|
-
"createECDH",
|
|
2659
2853
|
"diffieHellman",
|
|
2660
2854
|
"publicEncrypt",
|
|
2661
2855
|
"publicDecrypt",
|
|
@@ -2754,8 +2948,8 @@ export function stdlibMemberFence(lowerer, access) {
|
|
|
2754
2948
|
}
|
|
2755
2949
|
else if (container === "Math" && (member === "min" || member === "max")) {
|
|
2756
2950
|
hint =
|
|
2757
|
-
`Math.${member} lowers with
|
|
2758
|
-
`
|
|
2951
|
+
`Math.${member} lowers with number arguments and spreads of number[] values ` +
|
|
2952
|
+
`(Math.${member}(...xs, y))`;
|
|
2759
2953
|
}
|
|
2760
2954
|
else if (recvIr?.kind === "array" &&
|
|
2761
2955
|
member === "index" &&
|
|
@@ -2771,8 +2965,8 @@ export function stdlibMemberFence(lowerer, access) {
|
|
|
2771
2965
|
hint =
|
|
2772
2966
|
"'.groups' lowers when the match's regex is STATICALLY known — a regex literal, or a " +
|
|
2773
2967
|
"const initialized with one (the group-name table is built at compile time) — and the " +
|
|
2774
|
-
"
|
|
2775
|
-
"
|
|
2968
|
+
"match comes from exec, match, a for-of over matchAll, or the element parameter of an " +
|
|
2969
|
+
"array-method callback over matchAll rows";
|
|
2776
2970
|
}
|
|
2777
2971
|
else if (recvIr?.kind === "array" && member === "flat") {
|
|
2778
2972
|
hint =
|
|
@@ -2901,11 +3095,11 @@ export function isChildSurfaceMember(lowerer, access) {
|
|
|
2901
3095
|
if (isStdlibMember(lowerer, access))
|
|
2902
3096
|
return true;
|
|
2903
3097
|
const sym = lowerer.checker.getSymbolAtLocation(access.name);
|
|
2904
|
-
const decl = sym ?
|
|
3098
|
+
const decl = sym ? sym.declarations[0] : undefined;
|
|
2905
3099
|
const iface = decl?.parent;
|
|
2906
3100
|
if (!decl || !iface || !ts.isInterfaceDeclaration(iface))
|
|
2907
3101
|
return false;
|
|
2908
|
-
if (lowerer.isStdlibFile(
|
|
3102
|
+
if (lowerer.isStdlibFile(ts.getSourceFileOfNode(decl)))
|
|
2909
3103
|
return false;
|
|
2910
3104
|
return lowerer.mapTypeOf(lowerer.checker.getTypeAtLocation(iface.name))?.kind === "child";
|
|
2911
3105
|
}
|
|
@@ -2915,8 +3109,7 @@ export function isChildSurfaceMember(lowerer, access) {
|
|
|
2915
3109
|
* with lib interfaces, so a member can carry declarations from both. A
|
|
2916
3110
|
* user's own declaration is in neither, so shadowing never matches. */
|
|
2917
3111
|
export function isStdlibSymbol(lowerer, symbol) {
|
|
2918
|
-
return (!!symbol &&
|
|
2919
|
-
lowerer.checker.declarationsOf(symbol).some((d) => lowerer.isStdlibFile(d.getSourceFile())));
|
|
3112
|
+
return (!!symbol && symbol.declarations.some((d) => lowerer.isStdlibFile(ts.getSourceFileOfNode(d))));
|
|
2920
3113
|
}
|
|
2921
3114
|
/** The canonical stdlib-global name `expr` denotes, or null. Three
|
|
2922
3115
|
* spellings reach the same global (Node's own aliasing):
|
|
@@ -2929,26 +3122,38 @@ export function isStdlibSymbol(lowerer, symbol) {
|
|
|
2929
3122
|
* `global.process`) — `declare var` globals ARE properties of
|
|
2930
3123
|
* `typeof globalThis`, same symbol either way;
|
|
2931
3124
|
* - a local alias binding (`const process = globalThis.process`, the
|
|
2932
|
-
* tamper-guard prologue) registered in stdlibGlobalAliases
|
|
3125
|
+
* tamper-guard prologue) registered in stdlibGlobalAliases;
|
|
3126
|
+
* - a const binding of the Map or Set constructor (`const M = Map`,
|
|
3127
|
+
* builtinClassAliasOf). */
|
|
2933
3128
|
export function stdlibGlobalNameOf(lowerer, expr) {
|
|
2934
3129
|
if (ts.isParenthesizedExpression(expr))
|
|
2935
3130
|
return stdlibGlobalNameOf(lowerer, expr.expression);
|
|
3131
|
+
// The global-object detection chain (`typeof global < "u" ? global :
|
|
3132
|
+
// typeof window < "u" ? window : {}`): a condition with static typeof
|
|
3133
|
+
// answers selects one arm, and only that arm ever evaluates.
|
|
3134
|
+
if (ts.isConditionalExpression(expr)) {
|
|
3135
|
+
const taken = staticCondition(lowerer, expr.condition);
|
|
3136
|
+
if (taken === null)
|
|
3137
|
+
return null;
|
|
3138
|
+
return stdlibGlobalNameOf(lowerer, taken ? expr.whenTrue : expr.whenFalse);
|
|
3139
|
+
}
|
|
2936
3140
|
if (ts.isIdentifier(expr)) {
|
|
2937
3141
|
const symbol = lowerer.checker.getSymbolAtLocation(expr);
|
|
2938
3142
|
// `globalThis` itself: a reserved intrinsic — tsc rejects user
|
|
2939
3143
|
// global bindings, but local parameters can shadow it. Its special
|
|
2940
3144
|
// symbol has no ordinary declarations for the provenance check.
|
|
2941
3145
|
if (expr.text === "globalThis" &&
|
|
2942
|
-
(!symbol ||
|
|
2943
|
-
lowerer.checker.declarationsOf(symbol).length === 0 ||
|
|
2944
|
-
lowerer.isStdlibSymbol(symbol)))
|
|
3146
|
+
(!symbol || symbol.declarations.length === 0 || lowerer.isStdlibSymbol(symbol)))
|
|
2945
3147
|
return "globalThis";
|
|
2946
3148
|
if (!symbol)
|
|
2947
3149
|
return null;
|
|
2948
3150
|
const alias = lowerer.stdlibGlobalAliases.get(symbol);
|
|
2949
3151
|
if (alias !== undefined)
|
|
2950
3152
|
return alias;
|
|
2951
|
-
const
|
|
3153
|
+
const classAlias = lowerer.builtinClassAliasOf(symbol);
|
|
3154
|
+
if (classAlias?.kind === "collection")
|
|
3155
|
+
return classAlias.which;
|
|
3156
|
+
const decl = symbol.declarations[0];
|
|
2952
3157
|
if (decl !== undefined && ts.isImportClause(decl) && decl.name !== undefined) {
|
|
2953
3158
|
const importDecl = decl.parent;
|
|
2954
3159
|
if (ts.isImportDeclaration(importDecl) && ts.isStringLiteral(importDecl.moduleSpecifier)) {
|
|
@@ -2964,17 +3169,35 @@ export function stdlibGlobalNameOf(lowerer, expr) {
|
|
|
2964
3169
|
// the bare-global spelling. A user module re-exporting its own
|
|
2965
3170
|
// `Buffer` resolves to a user-file declaration and still misses.
|
|
2966
3171
|
const resolved = symbol.flags & ts.SymbolFlags.Alias ? lowerer.checker.getAliasedSymbol(symbol) : symbol;
|
|
2967
|
-
if (!lowerer.isStdlibSymbol(resolved))
|
|
3172
|
+
if (!lowerer.isStdlibSymbol(resolved)) {
|
|
3173
|
+
// A CommonJS binding of the buffer module's Buffer (`var Buffer =
|
|
3174
|
+
// require('buffer').Buffer`, `const { Buffer } = require('buffer')`
|
|
3175
|
+
// — safe-buffer and compression): the module member IS the global
|
|
3176
|
+
// constructor.
|
|
3177
|
+
if (decl !== undefined &&
|
|
3178
|
+
(ts.isVariableDeclaration(decl) || ts.isBindingElement(decl)) &&
|
|
3179
|
+
isJsSourceFile(ts.getSourceFileOfNode(decl))) {
|
|
3180
|
+
const imported = lowerer.builtinImportOf(expr);
|
|
3181
|
+
if (imported?.module === "buffer" && imported.member === "Buffer")
|
|
3182
|
+
return "Buffer";
|
|
3183
|
+
}
|
|
2968
3184
|
return null;
|
|
2969
|
-
|
|
3185
|
+
}
|
|
3186
|
+
return ts.symbolName(resolved) === "global" ? "globalThis" : ts.symbolName(resolved);
|
|
2970
3187
|
}
|
|
2971
3188
|
if (ts.isPropertyAccessExpression(expr) && !expr.questionDotToken) {
|
|
2972
3189
|
if (stdlibGlobalNameOf(lowerer, expr.expression) !== "globalThis")
|
|
2973
3190
|
return null;
|
|
2974
|
-
|
|
3191
|
+
// Through a detection chain the checker types the receiver as the
|
|
3192
|
+
// union of every arm; the selected arm (the global object) owns the
|
|
3193
|
+
// member.
|
|
3194
|
+
const selected = staticallySelected(lowerer, expr.expression);
|
|
3195
|
+
const symbol = selected === expr.expression || ts.isIdentifier(unparenthesized(expr.expression))
|
|
3196
|
+
? lowerer.checker.getSymbolAtLocation(expr.name)
|
|
3197
|
+
: lowerer.checker.getPropertyOfType(lowerer.typeOf(selected), expr.name.text);
|
|
2975
3198
|
if (!symbol || !lowerer.isStdlibSymbol(symbol))
|
|
2976
3199
|
return null;
|
|
2977
|
-
return symbol
|
|
3200
|
+
return ts.symbolName(symbol) === "global" ? "globalThis" : ts.symbolName(symbol);
|
|
2978
3201
|
}
|
|
2979
3202
|
return null;
|
|
2980
3203
|
}
|
|
@@ -3032,7 +3255,9 @@ export function stdlibGlobalAliasNameOf(lowerer, init) {
|
|
|
3032
3255
|
const requireSpec = requireSpecOf(aliasExpr);
|
|
3033
3256
|
const name = requireSpec === "process" || requireSpec === "node:process"
|
|
3034
3257
|
? "process"
|
|
3035
|
-
:
|
|
3258
|
+
: bufferNamespaceMember(lowerer, aliasExpr)
|
|
3259
|
+
? "Buffer"
|
|
3260
|
+
: stdlibGlobalNameOf(lowerer, aliasExpr);
|
|
3036
3261
|
if (name === null)
|
|
3037
3262
|
return null;
|
|
3038
3263
|
// These globals have provenance-aware call or member lowering, so a
|
|
@@ -3049,10 +3274,22 @@ export function stdlibGlobalAliasNameOf(lowerer, init) {
|
|
|
3049
3274
|
"Number",
|
|
3050
3275
|
"String",
|
|
3051
3276
|
"Boolean",
|
|
3277
|
+
// Code generation from strings throws Node's EvalError at every call
|
|
3278
|
+
// (code-generation.ts); zod 4 probes `const F = Function; new F("")`.
|
|
3279
|
+
"Function",
|
|
3280
|
+
"eval",
|
|
3052
3281
|
].includes(name)
|
|
3053
3282
|
? name
|
|
3054
3283
|
: null;
|
|
3055
3284
|
}
|
|
3285
|
+
/** `buffer.Buffer` through a buffer-module namespace binding (`var buffer
|
|
3286
|
+
* = require('buffer')`): the module's Buffer IS the global constructor. */
|
|
3287
|
+
export function bufferNamespaceMember(lowerer, expr) {
|
|
3288
|
+
if (!ts.isPropertyAccessExpression(expr) || expr.name.text !== "Buffer")
|
|
3289
|
+
return false;
|
|
3290
|
+
const member = lowerer.builtinMemberOf(expr);
|
|
3291
|
+
return member?.module === "buffer" && member.member === "Buffer";
|
|
3292
|
+
}
|
|
3056
3293
|
export function stdlibGlobalAliasDecl(lowerer, nameNode, init) {
|
|
3057
3294
|
if (!ts.isIdentifier(nameNode))
|
|
3058
3295
|
return false;
|
|
@@ -3076,12 +3313,12 @@ export function stdlibGlobalAliasDecl(lowerer, nameNode, init) {
|
|
|
3076
3313
|
* the SC2020 fence's wording: "typed by @types/node", not "standard
|
|
3077
3314
|
* library". */
|
|
3078
3315
|
export function nodeTypesOnlySymbol(lowerer, sym) {
|
|
3079
|
-
const decls = sym ?
|
|
3316
|
+
const decls = sym ? sym.declarations : undefined;
|
|
3080
3317
|
if (!decls || decls.length === 0)
|
|
3081
3318
|
return false;
|
|
3082
3319
|
let viaNode = false;
|
|
3083
3320
|
for (const d of decls) {
|
|
3084
|
-
const sf =
|
|
3321
|
+
const sf = ts.getSourceFileOfNode(d);
|
|
3085
3322
|
if (sf.isDeclarationFile && isNodeTypesPath(sf.fileName))
|
|
3086
3323
|
viaNode = true;
|
|
3087
3324
|
else if (lowerer.isStdlibFile(sf))
|