@scriptc/compiler 0.2.3 → 0.2.5
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 +915 -215
- package/ambient/scriptc-overrides.d.ts +5 -1
- package/ambient/scriptc.d.ts +22 -2
- package/dist/backend/build-cache.d.ts +4 -0
- package/dist/backend/build-cache.js +16 -2
- package/dist/backend/build-cache.js.map +1 -1
- package/dist/backend/cycle-analysis.js +17 -5
- package/dist/backend/cycle-analysis.js.map +1 -1
- package/dist/backend/cycle-analysis.test.js +50 -11
- package/dist/backend/cycle-analysis.test.js.map +1 -1
- package/dist/backend/debug-symbols.js.map +1 -1
- package/dist/backend/executable-features.js +2 -1
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/external-c.d.ts +13 -6
- package/dist/backend/external-c.js +15 -3
- package/dist/backend/external-c.js.map +1 -1
- package/dist/backend/ffi-callbacks.js +6 -9
- package/dist/backend/ffi-callbacks.js.map +1 -1
- package/dist/backend/library-identity-markers.js.map +1 -1
- package/dist/backend/library-pack.d.ts +1 -1
- package/dist/backend/library-pack.js +81 -24
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/link-plan-core.js +9 -2
- package/dist/backend/link-plan-core.js.map +1 -1
- package/dist/backend/link-plan.d.ts +1 -1
- package/dist/backend/link-plan.js +4 -5
- package/dist/backend/link-plan.js.map +1 -1
- package/dist/backend/linker.d.ts +1 -1
- package/dist/backend/linker.js +42 -23
- package/dist/backend/linker.js.map +1 -1
- package/dist/backend/literals.js +5 -4
- package/dist/backend/literals.js.map +1 -1
- package/dist/backend/literals.test.js +30 -5
- package/dist/backend/literals.test.js.map +1 -1
- package/dist/backend/llvm/blocks.test.js +5 -2
- package/dist/backend/llvm/blocks.test.js.map +1 -1
- package/dist/backend/llvm/borrowed-inputs.d.ts +15 -0
- package/dist/backend/llvm/borrowed-inputs.js +28 -0
- package/dist/backend/llvm/borrowed-inputs.js.map +1 -0
- package/dist/backend/llvm/borrowed-receivers.js +43 -19
- package/dist/backend/llvm/borrowed-receivers.js.map +1 -1
- package/dist/backend/llvm/byte-numbers.d.ts +10 -0
- package/dist/backend/llvm/byte-numbers.js +240 -0
- package/dist/backend/llvm/byte-numbers.js.map +1 -0
- package/dist/backend/llvm/bytes-bounds.d.ts +9 -0
- package/dist/backend/llvm/bytes-bounds.js +240 -0
- package/dist/backend/llvm/bytes-bounds.js.map +1 -0
- package/dist/backend/llvm/call-lifetimes.d.ts +10 -0
- package/dist/backend/llvm/call-lifetimes.js +83 -20
- package/dist/backend/llvm/call-lifetimes.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.test.js +203 -18
- package/dist/backend/llvm/call-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/checked-value-lifetimes.d.ts +13 -0
- package/dist/backend/llvm/checked-value-lifetimes.js +45 -0
- package/dist/backend/llvm/checked-value-lifetimes.js.map +1 -0
- package/dist/backend/llvm/classes.js +16 -12
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/common.js +4 -1
- package/dist/backend/llvm/common.js.map +1 -1
- package/dist/backend/llvm/counted-loops.d.ts +6 -0
- package/dist/backend/llvm/counted-loops.js +35 -0
- package/dist/backend/llvm/counted-loops.js.map +1 -0
- package/dist/backend/llvm/debug-info.js +33 -13
- package/dist/backend/llvm/debug-info.js.map +1 -1
- package/dist/backend/llvm/debug-info.test.js +28 -6
- package/dist/backend/llvm/debug-info.test.js.map +1 -1
- package/dist/backend/llvm/dyn.js +68 -22
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +34 -12
- package/dist/backend/llvm/emitter.js +357 -124
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/emitter.test.js +237 -46
- package/dist/backend/llvm/emitter.test.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +28 -8
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.d.ts +4 -4
- package/dist/backend/llvm/expr-bytes.js +78 -36
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-callbacks.js +10 -4
- package/dist/backend/llvm/expr-callbacks.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js +40 -21
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.d.ts +4 -1
- package/dist/backend/llvm/expr-containers.js +157 -76
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +11 -0
- package/dist/backend/llvm/expr-control.js +27 -8
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dispatch.js +3 -1
- package/dist/backend/llvm/expr-dispatch.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.js +50 -33
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-island.js +26 -6
- package/dist/backend/llvm/expr-island.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +139 -37
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.test.js +43 -1
- package/dist/backend/llvm/expr-primitives.test.js.map +1 -1
- package/dist/backend/llvm/expr-records.js +16 -9
- package/dist/backend/llvm/expr-records.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +44 -26
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.test.js +51 -14
- package/dist/backend/llvm/expr-stream-bridges.test.js.map +1 -1
- package/dist/backend/llvm/expr-stream-callbacks.js +34 -14
- package/dist/backend/llvm/expr-stream-callbacks.js.map +1 -1
- package/dist/backend/llvm/integer-values.d.ts +10 -0
- package/dist/backend/llvm/integer-values.js +52 -0
- package/dist/backend/llvm/integer-values.js.map +1 -0
- package/dist/backend/llvm/integer-views.d.ts +7 -0
- package/dist/backend/llvm/integer-views.js +83 -0
- package/dist/backend/llvm/integer-views.js.map +1 -0
- package/dist/backend/llvm/integer-views.test.d.ts +1 -0
- package/dist/backend/llvm/integer-views.test.js +69 -0
- package/dist/backend/llvm/integer-views.test.js.map +1 -0
- package/dist/backend/llvm/lib-abi.js +13 -4
- package/dist/backend/llvm/lib-abi.js.map +1 -1
- package/dist/backend/llvm/lib-connect.js +7 -1
- package/dist/backend/llvm/lib-connect.js.map +1 -1
- package/dist/backend/llvm/lib-datagram.js +35 -10
- package/dist/backend/llvm/lib-datagram.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +36 -15
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-filesystem.js +38 -23
- package/dist/backend/llvm/lib-filesystem.js.map +1 -1
- package/dist/backend/llvm/lib-http2.js +60 -15
- package/dist/backend/llvm/lib-http2.js.map +1 -1
- package/dist/backend/llvm/lib-lookup.js +12 -5
- package/dist/backend/llvm/lib-lookup.js.map +1 -1
- package/dist/backend/llvm/lib-network.js +97 -31
- package/dist/backend/llvm/lib-network.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +57 -14
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +107 -31
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-stream.js +33 -14
- package/dist/backend/llvm/lib-stream.js.map +1 -1
- package/dist/backend/llvm/lib-test.js +21 -7
- package/dist/backend/llvm/lib-test.js.map +1 -1
- package/dist/backend/llvm/lib-tls.js +69 -20
- package/dist/backend/llvm/lib-tls.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.d.ts +3 -4
- package/dist/backend/llvm/local-array-reads.js +100 -121
- package/dist/backend/llvm/local-array-reads.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.test.js +379 -71
- package/dist/backend/llvm/local-array-reads.test.js.map +1 -1
- package/dist/backend/llvm/local-union-storage.d.ts +25 -0
- package/dist/backend/llvm/local-union-storage.js +109 -0
- package/dist/backend/llvm/local-union-storage.js.map +1 -0
- package/dist/backend/llvm/local-union-storage.test.d.ts +1 -0
- package/dist/backend/llvm/local-union-storage.test.js +210 -0
- package/dist/backend/llvm/local-union-storage.test.js.map +1 -0
- package/dist/backend/llvm/map-read-lifetimes.d.ts +6 -2
- package/dist/backend/llvm/map-read-lifetimes.js +46 -16
- package/dist/backend/llvm/map-read-lifetimes.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.test.js +93 -17
- package/dist/backend/llvm/map-read-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/reference-effects.d.ts +23 -0
- package/dist/backend/llvm/reference-effects.js +179 -0
- package/dist/backend/llvm/reference-effects.js.map +1 -0
- package/dist/backend/llvm/reference-effects.test.d.ts +1 -0
- package/dist/backend/llvm/reference-effects.test.js +157 -0
- package/dist/backend/llvm/reference-effects.test.js.map +1 -0
- package/dist/backend/llvm/shapes.d.ts +7 -4
- package/dist/backend/llvm/shapes.js +82 -22
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +3 -1
- package/dist/backend/llvm/shapes.test.js.map +1 -1
- package/dist/backend/llvm/split.js +4 -4
- package/dist/backend/llvm/split.js.map +1 -1
- package/dist/backend/llvm/split.test.js +14 -6
- package/dist/backend/llvm/split.test.js.map +1 -1
- package/dist/backend/llvm/stack-unions.js +14 -5
- package/dist/backend/llvm/stack-unions.js.map +1 -1
- package/dist/backend/llvm/stack-unions.test.js +172 -32
- package/dist/backend/llvm/stack-unions.test.js.map +1 -1
- package/dist/backend/llvm/string-construction.d.ts +10 -0
- package/dist/backend/llvm/string-construction.js +38 -0
- package/dist/backend/llvm/string-construction.js.map +1 -0
- package/dist/backend/llvm/string-construction.test.d.ts +1 -0
- package/dist/backend/llvm/string-construction.test.js +90 -0
- package/dist/backend/llvm/string-construction.test.js.map +1 -0
- package/dist/backend/llvm/string-lifetimes.d.ts +2 -2
- package/dist/backend/llvm/string-lifetimes.js +19 -11
- package/dist/backend/llvm/string-lifetimes.js.map +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js +127 -32
- package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/switch-dispatch.d.ts +9 -0
- package/dist/backend/llvm/switch-dispatch.js +114 -0
- package/dist/backend/llvm/switch-dispatch.js.map +1 -0
- package/dist/backend/llvm/switch-dispatch.test.d.ts +1 -0
- package/dist/backend/llvm/switch-dispatch.test.js +83 -0
- package/dist/backend/llvm/switch-dispatch.test.js.map +1 -0
- package/dist/backend/llvm/unsupported.js.map +1 -1
- package/dist/backend/llvm/walkers.js +6 -3
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/mangle.js +9 -3
- package/dist/backend/mangle.js.map +1 -1
- package/dist/backend/may-throw.js +18 -8
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/may-throw.test.js +118 -22
- package/dist/backend/may-throw.test.js.map +1 -1
- package/dist/backend/native/artifact-stamps.d.ts +39 -0
- package/dist/backend/native/artifact-stamps.js +371 -0
- package/dist/backend/native/artifact-stamps.js.map +1 -0
- package/dist/backend/native/cache-warm.d.ts +24 -0
- package/dist/backend/native/cache-warm.js +80 -0
- package/dist/backend/native/cache-warm.js.map +1 -0
- package/dist/backend/native/compiler-fingerprint.d.ts +19 -0
- package/dist/backend/native/compiler-fingerprint.js +357 -0
- package/dist/backend/native/compiler-fingerprint.js.map +1 -0
- package/dist/backend/native/contracts.d.ts +314 -0
- package/dist/backend/native/contracts.js +2 -0
- package/dist/backend/native/contracts.js.map +1 -0
- package/dist/backend/native/dependency-files.d.ts +5 -0
- package/dist/backend/native/dependency-files.js +83 -0
- package/dist/backend/native/dependency-files.js.map +1 -0
- package/dist/backend/native/driver.d.ts +50 -0
- package/dist/backend/native/driver.js +294 -0
- package/dist/backend/native/driver.js.map +1 -0
- package/dist/backend/native/executable.d.ts +18 -0
- package/dist/backend/native/executable.js +1267 -0
- package/dist/backend/native/executable.js.map +1 -0
- package/dist/backend/native/library.d.ts +2 -0
- package/dist/backend/native/library.js +614 -0
- package/dist/backend/native/library.js.map +1 -0
- package/dist/backend/native/linker-fingerprint.d.ts +8 -0
- package/dist/backend/native/linker-fingerprint.js +174 -0
- package/dist/backend/native/linker-fingerprint.js.map +1 -0
- package/dist/backend/native/object-merge.d.ts +2 -0
- package/dist/backend/native/object-merge.js +154 -0
- package/dist/backend/native/object-merge.js.map +1 -0
- package/dist/backend/native/process.d.ts +17 -0
- package/dist/backend/native/process.js +42 -0
- package/dist/backend/native/process.js.map +1 -0
- package/dist/backend/native/program-shards.d.ts +21 -0
- package/dist/backend/native/program-shards.js +99 -0
- package/dist/backend/native/program-shards.js.map +1 -0
- package/dist/backend/native/runtime-inputs.d.ts +12 -0
- package/dist/backend/native/runtime-inputs.js +163 -0
- package/dist/backend/native/runtime-inputs.js.map +1 -0
- package/dist/backend/native/runtime-inputs.test.d.ts +1 -0
- package/dist/backend/native/runtime-inputs.test.js +64 -0
- package/dist/backend/native/runtime-inputs.test.js.map +1 -0
- package/dist/backend/native/runtime-objects.d.ts +16 -0
- package/dist/backend/native/runtime-objects.js +122 -0
- package/dist/backend/native/runtime-objects.js.map +1 -0
- package/dist/backend/native/session.d.ts +12 -0
- package/dist/backend/native/session.js +31 -0
- package/dist/backend/native/session.js.map +1 -0
- package/dist/backend/native/tool-identity.d.ts +37 -0
- package/dist/backend/native/tool-identity.js +310 -0
- package/dist/backend/native/tool-identity.js.map +1 -0
- package/dist/backend/native/trace-paths.d.ts +12 -0
- package/dist/backend/native/trace-paths.js +73 -0
- package/dist/backend/native/trace-paths.js.map +1 -0
- package/dist/backend/native/vendor.d.ts +1 -0
- package/dist/backend/native/vendor.js +12 -0
- package/dist/backend/native/vendor.js.map +1 -0
- package/dist/backend/native-codegen-core.js +2 -1
- package/dist/backend/native-codegen-core.js.map +1 -1
- package/dist/backend/native-codegen.d.ts +1 -1
- package/dist/backend/native-codegen.js +24 -13
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-codegen.test.js +12 -9
- package/dist/backend/native-codegen.test.js.map +1 -1
- package/dist/backend/native-link-info-core.js +9 -5
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/native-link-info.js +14 -5
- package/dist/backend/native-link-info.js.map +1 -1
- package/dist/backend/native-link-info.test.js +58 -13
- package/dist/backend/native-link-info.test.js.map +1 -1
- package/dist/backend/native-toolchain.d.ts +17 -450
- package/dist/backend/native-toolchain.js +17 -3971
- package/dist/backend/native-toolchain.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +103 -72
- package/dist/backend/native-toolchain.test.js.map +1 -1
- package/dist/backend/native-tools.js +27 -8
- package/dist/backend/native-tools.js.map +1 -1
- package/dist/backend/object-localize.js +17 -14
- package/dist/backend/object-localize.js.map +1 -1
- package/dist/backend/object-localize.test.js +59 -12
- package/dist/backend/object-localize.test.js.map +1 -1
- package/dist/backend/runtime-pack-core.js +96 -49
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-native.js +5 -3
- package/dist/backend/runtime-pack-native.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +87 -15
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.d.ts +1 -1
- package/dist/backend/runtime-pack.js +11 -12
- package/dist/backend/runtime-pack.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +40 -24
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/source-locations.js.map +1 -1
- package/dist/backend/source-locations.test.js +7 -2
- package/dist/backend/source-locations.test.js.map +1 -1
- package/dist/backend/target-diagnostics.js +44 -14
- package/dist/backend/target-diagnostics.js.map +1 -1
- package/dist/backend/target-diagnostics.test.js +93 -20
- package/dist/backend/target-diagnostics.test.js.map +1 -1
- package/dist/backend/targets.js +230 -86
- package/dist/backend/targets.js.map +1 -1
- package/dist/backend/targets.test.js +32 -18
- package/dist/backend/targets.test.js.map +1 -1
- package/dist/backend/toolchain-environment.js +5 -1
- package/dist/backend/toolchain-environment.js.map +1 -1
- package/dist/backend/vendor-archives.d.ts +2 -2
- package/dist/backend/vendor-archives.js +84 -35
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/backend/vendor-inputs.js +13 -1
- package/dist/backend/vendor-inputs.js.map +1 -1
- package/dist/backend/warm-cache.d.ts +1 -1
- package/dist/backend/warm-cache.js +33 -9
- package/dist/backend/warm-cache.js.map +1 -1
- package/dist/cli/command.js +39 -9
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/output-options.js +14 -4
- package/dist/cli/output-options.js.map +1 -1
- package/dist/cli/paths.js.map +1 -1
- package/dist/cli/wasi-runner.js.map +1 -1
- package/dist/compat/fetch-profile.js +36 -35
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/coverage/report.js +16 -17
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +112 -26
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/diagnostics/diagnostic.js +55 -16
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +1 -1
- package/dist/executable/executable-cache.js +78 -48
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +75 -26
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/executable/prepare.js +2 -2
- package/dist/executable/prepare.js.map +1 -1
- package/dist/ffi/ffi-manifest.js +78 -20
- package/dist/ffi/ffi-manifest.js.map +1 -1
- package/dist/ffi/ffi-manifest.test.js +96 -16
- package/dist/ffi/ffi-manifest.test.js.map +1 -1
- package/dist/format-integer.js.map +1 -1
- package/dist/frontend/analysis.js +12 -2
- package/dist/frontend/analysis.js.map +1 -1
- package/dist/frontend/arguments-usage.js.map +1 -1
- package/dist/frontend/binding-source.js +9 -3
- package/dist/frontend/binding-source.js.map +1 -1
- package/dist/frontend/builtin-modules.js +46 -2
- package/dist/frontend/builtin-modules.js.map +1 -1
- package/dist/frontend/cjs-resolve.js +40 -17
- package/dist/frontend/cjs-resolve.js.map +1 -1
- package/dist/frontend/cjs-syntax.js +31 -10
- package/dist/frontend/cjs-syntax.js.map +1 -1
- package/dist/frontend/comptime-node.test.js +10 -11
- package/dist/frontend/comptime-node.test.js.map +1 -1
- package/dist/frontend/dts-paths.js +7 -3
- package/dist/frontend/dts-paths.js.map +1 -1
- package/dist/frontend/fork-target.js +17 -12
- package/dist/frontend/fork-target.js.map +1 -1
- package/dist/frontend/function-completion.js +11 -6
- package/dist/frontend/function-completion.js.map +1 -1
- package/dist/frontend/helper-tokens.js +53 -6
- package/dist/frontend/helper-tokens.js.map +1 -1
- package/dist/frontend/helper-tokens.test.js +18 -2
- package/dist/frontend/helper-tokens.test.js.map +1 -1
- package/dist/frontend/inferred-js-diagnostics.js +32 -12
- package/dist/frontend/inferred-js-diagnostics.js.map +1 -1
- package/dist/frontend/inferred-js-diagnostics.test.js +11 -15
- package/dist/frontend/inferred-js-diagnostics.test.js.map +1 -1
- package/dist/frontend/input-tracker.js +11 -11
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +4 -1
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lib-contract.js +38 -9
- package/dist/frontend/lib-contract.js.map +1 -1
- package/dist/frontend/literal-values.js.map +1 -1
- package/dist/frontend/literal-values.test.js +28 -8
- package/dist/frontend/literal-values.test.js.map +1 -1
- package/dist/frontend/lowering/abstract-equality.js +53 -10
- package/dist/frontend/lowering/abstract-equality.js.map +1 -1
- package/dist/frontend/lowering/array-indexed-mutation.d.ts +1 -1
- package/dist/frontend/lowering/array-indexed-mutation.js +108 -106
- package/dist/frontend/lowering/array-indexed-mutation.js.map +1 -1
- package/dist/frontend/lowering/array-values.js +37 -14
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/binding-analysis.d.ts +50 -0
- package/dist/frontend/lowering/binding-analysis.js +376 -0
- package/dist/frontend/lowering/binding-analysis.js.map +1 -0
- package/dist/frontend/lowering/builtin-calls.d.ts +9 -0
- package/dist/frontend/lowering/builtin-calls.js +60 -0
- package/dist/frontend/lowering/builtin-calls.js.map +1 -0
- package/dist/frontend/lowering/builtins/arguments.d.ts +43 -0
- package/dist/frontend/lowering/builtins/arguments.js +247 -0
- package/dist/frontend/lowering/builtins/arguments.js.map +1 -0
- package/dist/frontend/lowering/builtins/async-context.d.ts +52 -0
- package/dist/frontend/lowering/builtins/async-context.js +436 -0
- package/dist/frontend/lowering/builtins/async-context.js.map +1 -0
- package/dist/frontend/lowering/builtins/atomics.d.ts +15 -0
- package/dist/frontend/lowering/builtins/atomics.js +46 -0
- package/dist/frontend/lowering/builtins/atomics.js.map +1 -0
- package/dist/frontend/lowering/builtins/callable-aliases.d.ts +13 -0
- package/dist/frontend/lowering/builtins/callable-aliases.js +87 -0
- package/dist/frontend/lowering/builtins/callable-aliases.js.map +1 -0
- package/dist/frontend/lowering/builtins/child-process-async.d.ts +18 -0
- package/dist/frontend/lowering/builtins/child-process-async.js +245 -0
- package/dist/frontend/lowering/builtins/child-process-async.js.map +1 -0
- package/dist/frontend/lowering/builtins/child-process-methods.d.ts +21 -0
- package/dist/frontend/lowering/builtins/child-process-methods.js +362 -0
- package/dist/frontend/lowering/builtins/child-process-methods.js.map +1 -0
- package/dist/frontend/lowering/builtins/child-process-sync.d.ts +4 -0
- package/dist/frontend/lowering/builtins/child-process-sync.js +639 -0
- package/dist/frontend/lowering/builtins/child-process-sync.js.map +1 -0
- package/dist/frontend/lowering/builtins/child-process.d.ts +55 -0
- package/dist/frontend/lowering/builtins/child-process.js +669 -0
- package/dist/frontend/lowering/builtins/child-process.js.map +1 -0
- package/dist/frontend/lowering/builtins/compression.d.ts +7 -0
- package/dist/frontend/lowering/builtins/compression.js +115 -0
- package/dist/frontend/lowering/builtins/compression.js.map +1 -0
- package/dist/frontend/lowering/builtins/console.d.ts +10 -0
- package/dist/frontend/lowering/builtins/console.js +38 -0
- package/dist/frontend/lowering/builtins/console.js.map +1 -0
- package/dist/frontend/lowering/builtins/constants.d.ts +24 -0
- package/dist/frontend/lowering/builtins/constants.js +141 -0
- package/dist/frontend/lowering/builtins/constants.js.map +1 -0
- package/dist/frontend/lowering/builtins/crypto.d.ts +22 -0
- package/dist/frontend/lowering/builtins/crypto.js +517 -0
- package/dist/frontend/lowering/builtins/crypto.js.map +1 -0
- package/dist/frontend/lowering/builtins/dates.d.ts +7 -0
- package/dist/frontend/lowering/builtins/dates.js +101 -0
- package/dist/frontend/lowering/builtins/dates.js.map +1 -0
- package/dist/frontend/lowering/builtins/environment.d.ts +34 -0
- package/dist/frontend/lowering/builtins/environment.js +95 -0
- package/dist/frontend/lowering/builtins/environment.js.map +1 -0
- package/dist/frontend/lowering/builtins/errors.d.ts +14 -0
- package/dist/frontend/lowering/builtins/errors.js +83 -0
- package/dist/frontend/lowering/builtins/errors.js.map +1 -0
- package/dist/frontend/lowering/builtins/filesystem-calls.d.ts +32 -0
- package/dist/frontend/lowering/builtins/filesystem-calls.js +678 -0
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -0
- package/dist/frontend/lowering/builtins/filesystem.d.ts +108 -0
- package/dist/frontend/lowering/builtins/filesystem.js +1061 -0
- package/dist/frontend/lowering/builtins/filesystem.js.map +1 -0
- package/dist/frontend/lowering/builtins/ipc.d.ts +8 -0
- package/dist/frontend/lowering/builtins/ipc.js +76 -0
- package/dist/frontend/lowering/builtins/ipc.js.map +1 -0
- package/dist/frontend/lowering/builtins/json.d.ts +12 -0
- package/dist/frontend/lowering/builtins/json.js +387 -0
- package/dist/frontend/lowering/builtins/json.js.map +1 -0
- package/dist/frontend/lowering/builtins/module-bindings.d.ts +85 -0
- package/dist/frontend/lowering/builtins/module-bindings.js +346 -0
- package/dist/frontend/lowering/builtins/module-bindings.js.map +1 -0
- package/dist/frontend/lowering/builtins/module-calls.d.ts +8 -0
- package/dist/frontend/lowering/builtins/module-calls.js +303 -0
- package/dist/frontend/lowering/builtins/module-calls.js.map +1 -0
- package/dist/frontend/lowering/builtins/module-resolution.d.ts +38 -0
- package/dist/frontend/lowering/builtins/module-resolution.js +344 -0
- package/dist/frontend/lowering/builtins/module-resolution.js.map +1 -0
- package/dist/frontend/lowering/builtins/numbers.d.ts +15 -0
- package/dist/frontend/lowering/builtins/numbers.js +124 -0
- package/dist/frontend/lowering/builtins/numbers.js.map +1 -0
- package/dist/frontend/lowering/builtins/operating-system.d.ts +13 -0
- package/dist/frontend/lowering/builtins/operating-system.js +148 -0
- package/dist/frontend/lowering/builtins/operating-system.js.map +1 -0
- package/dist/frontend/lowering/builtins/performance.d.ts +13 -0
- package/dist/frontend/lowering/builtins/performance.js +100 -0
- package/dist/frontend/lowering/builtins/performance.js.map +1 -0
- package/dist/frontend/lowering/builtins/process.d.ts +50 -0
- package/dist/frontend/lowering/builtins/process.js +1138 -0
- package/dist/frontend/lowering/builtins/process.js.map +1 -0
- package/dist/frontend/lowering/builtins/promises.d.ts +14 -0
- package/dist/frontend/lowering/builtins/promises.js +356 -0
- package/dist/frontend/lowering/builtins/promises.js.map +1 -0
- package/dist/frontend/lowering/builtins/properties.d.ts +11 -0
- package/dist/frontend/lowering/builtins/properties.js +186 -0
- package/dist/frontend/lowering/builtins/properties.js.map +1 -0
- package/dist/frontend/lowering/builtins/querystring.d.ts +19 -0
- package/dist/frontend/lowering/builtins/querystring.js +150 -0
- package/dist/frontend/lowering/builtins/querystring.js.map +1 -0
- package/dist/frontend/lowering/builtins/readline.d.ts +13 -0
- package/dist/frontend/lowering/builtins/readline.js +138 -0
- package/dist/frontend/lowering/builtins/readline.js.map +1 -0
- package/dist/frontend/lowering/builtins/receiver-types.d.ts +5 -0
- package/dist/frontend/lowering/builtins/receiver-types.js +15 -0
- package/dist/frontend/lowering/builtins/receiver-types.js.map +1 -0
- package/dist/frontend/lowering/builtins/reflection.d.ts +13 -0
- package/dist/frontend/lowering/builtins/reflection.js +95 -0
- package/dist/frontend/lowering/builtins/reflection.js.map +1 -0
- package/dist/frontend/lowering/builtins/strings.d.ts +14 -0
- package/dist/frontend/lowering/builtins/strings.js +121 -0
- package/dist/frontend/lowering/builtins/strings.js.map +1 -0
- package/dist/frontend/lowering/builtins/text-codecs.d.ts +29 -0
- package/dist/frontend/lowering/builtins/text-codecs.js +590 -0
- package/dist/frontend/lowering/builtins/text-codecs.js.map +1 -0
- package/dist/frontend/lowering/builtins/timers.d.ts +22 -0
- package/dist/frontend/lowering/builtins/timers.js +180 -0
- package/dist/frontend/lowering/builtins/timers.js.map +1 -0
- package/dist/frontend/lowering/builtins/url.d.ts +37 -0
- package/dist/frontend/lowering/builtins/url.js +596 -0
- package/dist/frontend/lowering/builtins/url.js.map +1 -0
- package/dist/frontend/lowering/builtins/util-types.d.ts +7 -0
- package/dist/frontend/lowering/builtins/util-types.js +31 -0
- package/dist/frontend/lowering/builtins/util-types.js.map +1 -0
- package/dist/frontend/lowering/call-arguments.d.ts +72 -0
- package/dist/frontend/lowering/call-arguments.js +618 -0
- package/dist/frontend/lowering/call-arguments.js.map +1 -0
- package/dist/frontend/lowering/call-signatures.d.ts +115 -0
- package/dist/frontend/lowering/call-signatures.js +719 -0
- package/dist/frontend/lowering/call-signatures.js.map +1 -0
- package/dist/frontend/lowering/callback-arg.js.map +1 -1
- package/dist/frontend/lowering/checked-iterable-spread.js +53 -10
- package/dist/frontend/lowering/checked-iterable-spread.js.map +1 -1
- package/dist/frontend/lowering/checked-promise-all.js +41 -9
- package/dist/frontend/lowering/checked-promise-all.js.map +1 -1
- package/dist/frontend/lowering/class-callbacks.d.ts +1 -1
- package/dist/frontend/lowering/class-callbacks.js +130 -27
- package/dist/frontend/lowering/class-callbacks.js.map +1 -1
- package/dist/frontend/lowering/class-construction.d.ts +1 -1
- package/dist/frontend/lowering/class-construction.js +247 -50
- package/dist/frontend/lowering/class-construction.js.map +1 -1
- package/dist/frontend/lowering/class-descriptors.js +109 -29
- package/dist/frontend/lowering/class-descriptors.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +6 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.js +2471 -465
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js +284 -44
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js.map +1 -1
- package/dist/frontend/lowering/class-instance-constructor.js +17 -5
- package/dist/frontend/lowering/class-instance-constructor.js.map +1 -1
- package/dist/frontend/lowering/class-method-values.js +199 -51
- package/dist/frontend/lowering/class-method-values.js.map +1 -1
- package/dist/frontend/lowering/class-prototypes.js +345 -86
- package/dist/frontend/lowering/class-prototypes.js.map +1 -1
- package/dist/frontend/lowering/class-runtime-statics.d.ts +1 -1
- package/dist/frontend/lowering/class-runtime-statics.js +80 -17
- package/dist/frontend/lowering/class-runtime-statics.js.map +1 -1
- package/dist/frontend/lowering/class-static-data.js +76 -16
- package/dist/frontend/lowering/class-static-data.js.map +1 -1
- package/dist/frontend/lowering/coercions/builders.d.ts +13 -0
- package/dist/frontend/lowering/coercions/builders.js +77 -0
- package/dist/frontend/lowering/coercions/builders.js.map +1 -0
- package/dist/frontend/lowering/coercions/function-adapters.d.ts +58 -0
- package/dist/frontend/lowering/coercions/function-adapters.js +430 -0
- package/dist/frontend/lowering/coercions/function-adapters.js.map +1 -0
- package/dist/frontend/lowering/coercions/island.d.ts +37 -0
- package/dist/frontend/lowering/coercions/island.js +350 -0
- package/dist/frontend/lowering/coercions/island.js.map +1 -0
- package/dist/frontend/lowering/coercions/state.d.ts +14 -0
- package/dist/frontend/lowering/coercions/state.js +16 -0
- package/dist/frontend/lowering/coercions/state.js.map +1 -0
- package/dist/frontend/lowering/coercions/structural-plans.d.ts +40 -0
- package/dist/frontend/lowering/coercions/structural-plans.js +447 -0
- package/dist/frontend/lowering/coercions/structural-plans.js.map +1 -0
- package/dist/frontend/lowering/coercions/structural.d.ts +63 -0
- package/dist/frontend/lowering/coercions/structural.js +616 -0
- package/dist/frontend/lowering/coercions/structural.js.map +1 -0
- package/dist/frontend/lowering/coercions/unions.d.ts +65 -0
- package/dist/frontend/lowering/coercions/unions.js +318 -0
- package/dist/frontend/lowering/coercions/unions.js.map +1 -0
- package/dist/frontend/lowering/collection-ingestion.js +359 -67
- package/dist/frontend/lowering/collection-ingestion.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.d.ts +92 -0
- package/dist/frontend/lowering/containers/array-callbacks.js +1646 -0
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -0
- package/dist/frontend/lowering/containers/array-construction.d.ts +42 -0
- package/dist/frontend/lowering/containers/array-construction.js +1044 -0
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -0
- package/dist/frontend/lowering/containers/array-iteration.d.ts +16 -0
- package/dist/frontend/lowering/containers/array-iteration.js +95 -0
- package/dist/frontend/lowering/containers/array-iteration.js.map +1 -0
- package/dist/frontend/lowering/containers/array-methods.d.ts +27 -0
- package/dist/frontend/lowering/containers/array-methods.js +1854 -0
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -0
- package/dist/frontend/lowering/containers/bytes.d.ts +17 -17
- package/dist/frontend/lowering/containers/bytes.js +419 -105
- package/dist/frontend/lowering/containers/bytes.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.d.ts +26 -0
- package/dist/frontend/lowering/containers/callback-arguments.js +179 -0
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -0
- package/dist/frontend/lowering/containers/collection-grouping.d.ts +19 -0
- package/dist/frontend/lowering/containers/collection-grouping.js +297 -0
- package/dist/frontend/lowering/containers/collection-grouping.js.map +1 -0
- package/dist/frontend/lowering/containers/collection-methods.d.ts +57 -0
- package/dist/frontend/lowering/containers/collection-methods.js +1314 -0
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -0
- package/dist/frontend/lowering/containers/dynamic-receivers.d.ts +18 -0
- package/dist/frontend/lowering/containers/dynamic-receivers.js +114 -0
- package/dist/frontend/lowering/containers/dynamic-receivers.js.map +1 -0
- package/dist/frontend/lowering/containers/for-of.d.ts +60 -0
- package/dist/frontend/lowering/containers/for-of.js +643 -0
- package/dist/frontend/lowering/containers/for-of.js.map +1 -0
- package/dist/frontend/lowering/containers/indexed-objects.d.ts +132 -0
- package/dist/frontend/lowering/containers/indexed-objects.js +1743 -0
- package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -0
- package/dist/frontend/lowering/containers/iterator-helpers.d.ts +20 -0
- package/dist/frontend/lowering/containers/iterator-helpers.js +809 -0
- package/dist/frontend/lowering/containers/iterator-helpers.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +585 -157
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/containers/string-replacement.js +213 -63
- package/dist/frontend/lowering/containers/string-replacement.js.map +1 -1
- package/dist/frontend/lowering/crypto-tables.js +263 -64
- package/dist/frontend/lowering/crypto-tables.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.js +172 -68
- package/dist/frontend/lowering/deferred-module-initializers.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.test.js +41 -8
- package/dist/frontend/lowering/deferred-module-initializers.test.js.map +1 -1
- package/dist/frontend/lowering/error-methods.js +339 -65
- package/dist/frontend/lowering/error-methods.js.map +1 -1
- package/dist/frontend/lowering/expressions/evaluation-safety.js +3 -2
- package/dist/frontend/lowering/expressions/evaluation-safety.js.map +1 -1
- package/dist/frontend/lowering/expressions/global-symbols.js +2 -1
- package/dist/frontend/lowering/expressions/global-symbols.js.map +1 -1
- package/dist/frontend/lowering/expressions/native-proxy.js +11 -5
- package/dist/frontend/lowering/expressions/native-proxy.js.map +1 -1
- package/dist/frontend/lowering/expressions/nullish-assignment.js +67 -13
- package/dist/frontend/lowering/expressions/nullish-assignment.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.js +589 -162
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/optional-chains.d.ts +1 -1
- package/dist/frontend/lowering/expressions/optional-chains.js +68 -17
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -1
- package/dist/frontend/lowering/expressions/union-field-write.js +45 -18
- package/dist/frontend/lowering/expressions/union-field-write.js.map +1 -1
- package/dist/frontend/lowering/function-context.js +5 -1
- package/dist/frontend/lowering/function-context.js.map +1 -1
- package/dist/frontend/lowering/function-returns.d.ts +67 -0
- package/dist/frontend/lowering/function-returns.js +392 -0
- package/dist/frontend/lowering/function-returns.js.map +1 -0
- package/dist/frontend/lowering/generator-delegation.d.ts +1 -1
- package/dist/frontend/lowering/generator-delegation.js +171 -39
- package/dist/frontend/lowering/generator-delegation.js.map +1 -1
- package/dist/frontend/lowering/generator-dynamic-dispatch.d.ts +1 -1
- package/dist/frontend/lowering/generator-dynamic-dispatch.js +176 -36
- package/dist/frontend/lowering/generator-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.d.ts +274 -0
- package/dist/frontend/lowering/generic-functions.js +1727 -0
- package/dist/frontend/lowering/generic-functions.js.map +1 -0
- package/dist/frontend/lowering/import-meta.d.ts +1 -1
- package/dist/frontend/lowering/import-meta.js +37 -14
- package/dist/frontend/lowering/import-meta.js.map +1 -1
- package/dist/frontend/lowering/indexed-comparison.js +6 -2
- package/dist/frontend/lowering/indexed-comparison.js.map +1 -1
- package/dist/frontend/lowering/iterator-consumption.d.ts +9 -0
- package/dist/frontend/lowering/iterator-consumption.js +91 -0
- package/dist/frontend/lowering/iterator-consumption.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.js +40 -17
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lib-boundary.test.js +49 -11
- package/dist/frontend/lowering/lib-boundary.test.js.map +1 -1
- package/dist/frontend/lowering/lower-array-sort.d.ts +0 -19
- package/dist/frontend/lowering/lower-array-sort.js +331 -566
- package/dist/frontend/lowering/lower-array-sort.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +248 -43
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-async-iteration.js +71 -16
- package/dist/frontend/lowering/lower-async-iteration.js.map +1 -1
- package/dist/frontend/lowering/lower-builtin-values.js +420 -71
- package/dist/frontend/lowering/lower-builtin-values.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +39 -558
- package/dist/frontend/lowering/lower-calls.js +2593 -5667
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +243 -242
- package/dist/frontend/lowering/lower-classes.js +1704 -727
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-comptime.d.ts +35 -35
- package/dist/frontend/lowering/lower-comptime.js +39 -37
- package/dist/frontend/lowering/lower-comptime.js.map +1 -1
- package/dist/frontend/lowering/lower-dgram.js +59 -31
- package/dist/frontend/lowering/lower-dgram.js.map +1 -1
- package/dist/frontend/lowering/lower-enums.js +5 -2
- package/dist/frontend/lowering/lower-enums.js.map +1 -1
- package/dist/frontend/lowering/lower-event-emitter.js +322 -85
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-expando.js +19 -7
- package/dist/frontend/lowering/lower-expando.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +194 -194
- package/dist/frontend/lowering/lower-exprs.js +3455 -1153
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.d.ts +23 -0
- package/dist/frontend/lowering/lower-functions.js +449 -0
- package/dist/frontend/lowering/lower-functions.js.map +1 -0
- package/dist/frontend/lowering/lower-generators.js +121 -32
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-global-value.js +15 -4
- package/dist/frontend/lowering/lower-global-value.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +479 -89
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.d.ts +79 -79
- package/dist/frontend/lowering/lower-island.js +365 -273
- package/dist/frontend/lowering/lower-island.js.map +1 -1
- package/dist/frontend/lowering/lower-island.test.js +7 -2
- package/dist/frontend/lowering/lower-island.test.js.map +1 -1
- package/dist/frontend/lowering/lower-mixins.js +17 -8
- package/dist/frontend/lowering/lower-mixins.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.d.ts +94 -94
- package/dist/frontend/lowering/lower-modules.js +612 -321
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.test.js +91 -20
- package/dist/frontend/lowering/lower-modules.test.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.js +25 -8
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.js +115 -34
- package/dist/frontend/lowering/lower-node-module.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +1210 -290
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +148 -148
- package/dist/frontend/lowering/lower-stmts.js +2312 -984
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.test.js +13 -5
- package/dist/frontend/lowering/lower-stmts.test.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +362 -90
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lower-system-errors.js +30 -8
- package/dist/frontend/lowering/lower-system-errors.js.map +1 -1
- package/dist/frontend/lowering/lower-test.js +40 -13
- package/dist/frontend/lowering/lower-test.js.map +1 -1
- package/dist/frontend/lowering/lower-timers.d.ts +31 -0
- package/dist/frontend/lowering/lower-timers.js +336 -0
- package/dist/frontend/lowering/lower-timers.js.map +1 -0
- package/dist/frontend/lowering/lower-url.d.ts +1 -1
- package/dist/frontend/lowering/lower-url.js +46 -13
- package/dist/frontend/lowering/lower-url.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +21 -351
- package/dist/frontend/lowering/lowerer.js +1031 -2704
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/lowerer.test.js +85 -17
- package/dist/frontend/lowering/lowerer.test.js.map +1 -1
- package/dist/frontend/lowering/module-namespace-elements.js +43 -8
- package/dist/frontend/lowering/module-namespace-elements.js.map +1 -1
- package/dist/frontend/lowering/native-ffi.d.ts +21 -1
- package/dist/frontend/lowering/native-ffi.js +487 -18
- package/dist/frontend/lowering/native-ffi.js.map +1 -1
- package/dist/frontend/lowering/object-enumeration-receiver.js +55 -10
- package/dist/frontend/lowering/object-enumeration-receiver.js.map +1 -1
- package/dist/frontend/lowering/object-factory-new.d.ts +1 -1
- package/dist/frontend/lowering/object-factory-new.js +36 -11
- package/dist/frontend/lowering/object-factory-new.js.map +1 -1
- package/dist/frontend/lowering/optional-arguments.js +49 -20
- package/dist/frontend/lowering/optional-arguments.js.map +1 -1
- package/dist/frontend/lowering/pairs-snapshot.js +66 -14
- package/dist/frontend/lowering/pairs-snapshot.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-locals.js +3 -1
- package/dist/frontend/lowering/runtime-optional-locals.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-locals.test.js.map +1 -1
- package/dist/frontend/lowering/sanitize-class-types.js +4 -1
- package/dist/frontend/lowering/sanitize-class-types.js.map +1 -1
- package/dist/frontend/lowering/sanitize-class-types.test.js +86 -18
- package/dist/frontend/lowering/sanitize-class-types.test.js.map +1 -1
- package/dist/frontend/lowering/static-this.js +13 -6
- package/dist/frontend/lowering/static-this.js.map +1 -1
- package/dist/frontend/lowering/string-index.js +32 -10
- package/dist/frontend/lowering/string-index.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +42 -42
- package/dist/frontend/lowering/surfaces.js +1094 -249
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/lowering/symbol-fields.js +40 -15
- package/dist/frontend/lowering/symbol-fields.js.map +1 -1
- package/dist/frontend/lowering/symbol-methods.js.map +1 -1
- package/dist/frontend/lowering/text-decoder-encoding.js +236 -24
- package/dist/frontend/lowering/text-decoder-encoding.js.map +1 -1
- package/dist/frontend/lowering/text-decoder-encoding.test.js +84 -12
- package/dist/frontend/lowering/text-decoder-encoding.test.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.js +59 -16
- package/dist/frontend/lowering/union-narrow.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.test.js +24 -7
- package/dist/frontend/lowering/union-narrow.test.js.map +1 -1
- package/dist/frontend/lowering/union-retag.js +155 -40
- package/dist/frontend/lowering/union-retag.js.map +1 -1
- package/dist/frontend/lowering/union-retag.test.js +131 -33
- package/dist/frontend/lowering/union-retag.test.js.map +1 -1
- package/dist/frontend/lowering/unregistered-class-types.js.map +1 -1
- package/dist/frontend/lowering/unregistered-class-types.test.js +34 -8
- package/dist/frontend/lowering/unregistered-class-types.test.js.map +1 -1
- package/dist/frontend/module-syntax.js +21 -8
- package/dist/frontend/module-syntax.js.map +1 -1
- package/dist/frontend/module-syntax.test.js +37 -13
- package/dist/frontend/module-syntax.test.js.map +1 -1
- package/dist/frontend/npm-fetch-analysis.js +13 -4
- package/dist/frontend/npm-fetch-analysis.js.map +1 -1
- package/dist/frontend/npm-fetch-analysis.test.js +33 -10
- package/dist/frontend/npm-fetch-analysis.test.js.map +1 -1
- package/dist/frontend/npm-fetch-node.js.map +1 -1
- package/dist/frontend/npm-fetch-syntax.js +4 -9
- package/dist/frontend/npm-fetch-syntax.js.map +1 -1
- package/dist/frontend/npm-node.js +3 -1
- package/dist/frontend/npm-node.js.map +1 -1
- package/dist/frontend/npm-static-bundled-cjs.js +88 -29
- package/dist/frontend/npm-static-bundled-cjs.js.map +1 -1
- package/dist/frontend/npm-static-bundled-cjs.test.js +29 -10
- package/dist/frontend/npm-static-bundled-cjs.test.js.map +1 -1
- package/dist/frontend/npm-static-declaration-syntax.js +148 -56
- package/dist/frontend/npm-static-declaration-syntax.js.map +1 -1
- package/dist/frontend/npm-static-declarations.d.ts +1 -1
- package/dist/frontend/npm-static-declarations.js.map +1 -1
- package/dist/frontend/npm-static-declarations.test.js +33 -7
- package/dist/frontend/npm-static-declarations.test.js.map +1 -1
- package/dist/frontend/npm-static-prune.js +26 -12
- package/dist/frontend/npm-static-prune.js.map +1 -1
- package/dist/frontend/npm-static-prune.test.js +17 -3
- package/dist/frontend/npm-static-prune.test.js.map +1 -1
- package/dist/frontend/npm-static-rewrite-host.js +2 -3
- package/dist/frontend/npm-static-rewrite-host.js.map +1 -1
- package/dist/frontend/npm-static-rewrite-syntax.js +64 -21
- package/dist/frontend/npm-static-rewrite-syntax.js.map +1 -1
- package/dist/frontend/npm-static-rewrite.js.map +1 -1
- package/dist/frontend/npm-static-subtyping.js +9 -4
- package/dist/frontend/npm-static-subtyping.js.map +1 -1
- package/dist/frontend/npm-static-subtyping.test.js +30 -6
- package/dist/frontend/npm-static-subtyping.test.js.map +1 -1
- package/dist/frontend/npm-static.js +15 -4
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm.js +122 -36
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/npm.test.js +30 -10
- package/dist/frontend/npm.test.js.map +1 -1
- package/dist/frontend/pipeline-native.js.map +1 -1
- package/dist/frontend/pipeline.js +25 -8
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/pipeline.test.js +21 -7
- package/dist/frontend/pipeline.test.js.map +1 -1
- package/dist/frontend/program-node.js +5 -3
- package/dist/frontend/program-node.js.map +1 -1
- package/dist/frontend/program.d.ts +2 -2
- package/dist/frontend/program.js +234 -101
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/program.test.js +27 -27
- package/dist/frontend/program.test.js.map +1 -1
- package/dist/frontend/provenance-core.js +8 -4
- package/dist/frontend/provenance-core.js.map +1 -1
- package/dist/frontend/provenance-registry.js +1 -4
- package/dist/frontend/provenance-registry.js.map +1 -1
- package/dist/frontend/resolve.js +32 -20
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/resolve.test.js +1 -1
- package/dist/frontend/resolve.test.js.map +1 -1
- package/dist/frontend/runtime-resolve.js +13 -4
- package/dist/frontend/runtime-resolve.js.map +1 -1
- package/dist/frontend/runtime-resolve.test.js +25 -9
- package/dist/frontend/runtime-resolve.test.js.map +1 -1
- package/dist/frontend/services-node.js +6 -2
- package/dist/frontend/services-node.js.map +1 -1
- package/dist/frontend/services-node.test.js +18 -6
- package/dist/frontend/services-node.test.js.map +1 -1
- package/dist/frontend/services.js +8 -4
- package/dist/frontend/services.js.map +1 -1
- package/dist/frontend/services.test.js +6 -2
- package/dist/frontend/services.test.js.map +1 -1
- package/dist/frontend/ts7/api.js +12 -4
- package/dist/frontend/ts7/api.js.map +1 -1
- package/dist/frontend/ts7/ast-bytes.js +10 -3
- package/dist/frontend/ts7/ast-bytes.js.map +1 -1
- package/dist/frontend/ts7/ast-bytes.test.js +23 -4
- package/dist/frontend/ts7/ast-bytes.test.js.map +1 -1
- package/dist/frontend/ts7/ast-guards.test.js +14 -5
- package/dist/frontend/ts7/ast-guards.test.js.map +1 -1
- package/dist/frontend/ts7/ast-node.d.ts +6 -1
- package/dist/frontend/ts7/ast-node.js +484 -164
- package/dist/frontend/ts7/ast-node.js.map +1 -1
- package/dist/frontend/ts7/ast-node.test.js +109 -36
- package/dist/frontend/ts7/ast-node.test.js.map +1 -1
- package/dist/frontend/ts7/ast-text.js +13 -3
- package/dist/frontend/ts7/ast-text.js.map +1 -1
- package/dist/frontend/ts7/ast-text.test.js.map +1 -1
- package/dist/frontend/ts7/ast-types.js.map +1 -1
- package/dist/frontend/ts7/ast-wire.d.ts +1 -1
- package/dist/frontend/ts7/ast-wire.js +55 -20
- package/dist/frontend/ts7/ast-wire.js.map +1 -1
- package/dist/frontend/ts7/ast-wire.test.js +53 -8
- package/dist/frontend/ts7/ast-wire.test.js.map +1 -1
- package/dist/frontend/ts7/ast.js +47 -28
- package/dist/frontend/ts7/ast.js.map +1 -1
- package/dist/frontend/ts7/census-check.js +1 -1
- package/dist/frontend/ts7/census-check.js.map +1 -1
- package/dist/frontend/ts7/checker-cache.js.map +1 -1
- package/dist/frontend/ts7/checker.js +5 -3
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/ts7/checker.test.js +54 -17
- package/dist/frontend/ts7/checker.test.js.map +1 -1
- package/dist/frontend/ts7/enums.test.js +9 -4
- package/dist/frontend/ts7/enums.test.js.map +1 -1
- package/dist/frontend/ts7/native-api.js.map +1 -1
- package/dist/frontend/ts7/native-host.js.map +1 -1
- package/dist/frontend/ts7/native-process.js +9 -3
- package/dist/frontend/ts7/native-process.js.map +1 -1
- package/dist/frontend/ts7/program-adapter.js +1 -1
- package/dist/frontend/ts7/program-adapter.js.map +1 -1
- package/dist/frontend/ts7/program-host.js +7 -4
- package/dist/frontend/ts7/program-host.js.map +1 -1
- package/dist/frontend/ts7/program-host.test.js +43 -11
- package/dist/frontend/ts7/program-host.test.js.map +1 -1
- package/dist/frontend/ts7/rpc-api.js +3 -1
- package/dist/frontend/ts7/rpc-api.js.map +1 -1
- package/dist/frontend/ts7/rpc-client.js +15 -5
- package/dist/frontend/ts7/rpc-client.js.map +1 -1
- package/dist/frontend/ts7/rpc-client.test.js +26 -8
- package/dist/frontend/ts7/rpc-client.test.js.map +1 -1
- package/dist/frontend/ts7/rpc-filesystem.js.map +1 -1
- package/dist/frontend/ts7/rpc-filesystem.test.js +43 -10
- package/dist/frontend/ts7/rpc-filesystem.test.js.map +1 -1
- package/dist/frontend/ts7/rpc-process.js +16 -6
- package/dist/frontend/ts7/rpc-process.js.map +1 -1
- package/dist/frontend/ts7/rpc-process.test.js.map +1 -1
- package/dist/frontend/ts7/rpc-wire.d.ts +1 -0
- package/dist/frontend/ts7/rpc-wire.js +41 -14
- package/dist/frontend/ts7/rpc-wire.js.map +1 -1
- package/dist/frontend/ts7/rpc-wire.test.js +36 -6
- package/dist/frontend/ts7/rpc-wire.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-checker.js +209 -68
- package/dist/frontend/ts7/semantic-checker.js.map +1 -1
- package/dist/frontend/ts7/semantic-checker.test.js +29 -14
- package/dist/frontend/ts7/semantic-checker.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-json.js +7 -1
- package/dist/frontend/ts7/semantic-json.js.map +1 -1
- package/dist/frontend/ts7/semantic-json.test.js +17 -3
- package/dist/frontend/ts7/semantic-json.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.js +147 -51
- package/dist/frontend/ts7/semantic-model.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.test.js +72 -19
- package/dist/frontend/ts7/semantic-model.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-types.d.ts +2 -2
- package/dist/frontend/ts7/session-cache.js +10 -3
- package/dist/frontend/ts7/session-cache.js.map +1 -1
- package/dist/frontend/ts7/session-cache.test.js +13 -4
- package/dist/frontend/ts7/session-cache.test.js.map +1 -1
- package/dist/frontend/ts7/session-path.js +25 -10
- package/dist/frontend/ts7/session-path.js.map +1 -1
- package/dist/frontend/ts7/session-path.test.js +47 -4
- package/dist/frontend/ts7/session-path.test.js.map +1 -1
- package/dist/frontend/ts7/session-timing.js +22 -3
- package/dist/frontend/ts7/session-timing.js.map +1 -1
- package/dist/frontend/ts7/session-timing.test.js +12 -3
- package/dist/frontend/ts7/session-timing.test.js.map +1 -1
- package/dist/frontend/ts7/session.d.ts +1 -0
- package/dist/frontend/ts7/session.js +109 -35
- package/dist/frontend/ts7/session.js.map +1 -1
- package/dist/frontend/ts7/session.test.js +69 -15
- package/dist/frontend/ts7/session.test.js.map +1 -1
- package/dist/frontend/ts7/source-parser.js +17 -6
- package/dist/frontend/ts7/source-parser.js.map +1 -1
- package/dist/frontend/ts7/source-parser.test.js +32 -9
- package/dist/frontend/ts7/source-parser.test.js.map +1 -1
- package/dist/frontend/tsc-codes.js +56 -11
- package/dist/frontend/tsc-codes.js.map +1 -1
- package/dist/frontend/tsc-codes.test.d.ts +1 -0
- package/dist/frontend/tsc-codes.test.js +16 -0
- package/dist/frontend/tsc-codes.test.js.map +1 -0
- package/dist/frontend/type-mapper.js +547 -206
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/frontend/type-mapper.test.js +108 -33
- package/dist/frontend/type-mapper.test.js.map +1 -1
- package/dist/frontend/union-discriminants.js +8 -2
- package/dist/frontend/union-discriminants.js.map +1 -1
- package/dist/frontend/union-discriminants.test.js +77 -20
- package/dist/frontend/union-discriminants.test.js.map +1 -1
- package/dist/index.d.ts +9 -8
- package/dist/index.js +150 -81
- package/dist/index.js.map +1 -1
- package/dist/ir/analysis.js +97 -38
- package/dist/ir/analysis.js.map +1 -1
- package/dist/ir/analysis.test.js +91 -15
- package/dist/ir/analysis.test.js.map +1 -1
- package/dist/ir/api.d.ts +4 -0
- package/dist/ir/api.js +6 -0
- package/dist/ir/api.js.map +1 -0
- package/dist/ir/build.d.ts +7 -0
- package/dist/ir/build.js +27 -1
- package/dist/ir/build.js.map +1 -1
- package/dist/ir/builtin-effects.d.ts +9 -0
- package/dist/ir/builtin-effects.js +631 -0
- package/dist/ir/builtin-effects.js.map +1 -0
- package/dist/ir/builtin-signatures.d.ts +15 -0
- package/dist/ir/builtin-signatures.js +3396 -0
- package/dist/ir/builtin-signatures.js.map +1 -0
- package/dist/ir/byte-numbers.d.ts +20 -0
- package/dist/ir/byte-numbers.js +116 -0
- package/dist/ir/byte-numbers.js.map +1 -0
- package/dist/ir/byte-numbers.test.d.ts +1 -0
- package/dist/ir/byte-numbers.test.js +55 -0
- package/dist/ir/byte-numbers.test.js.map +1 -0
- package/dist/ir/constant-tables.js +13 -5
- package/dist/ir/constant-tables.js.map +1 -1
- package/dist/ir/constant-tables.test.js +47 -7
- package/dist/ir/constant-tables.test.js.map +1 -1
- package/dist/ir/control-flow.js +2 -1
- package/dist/ir/control-flow.js.map +1 -1
- package/dist/ir/control-flow.test.js +35 -11
- package/dist/ir/control-flow.test.js.map +1 -1
- package/dist/ir/initializer-bindings.d.ts +9 -0
- package/dist/ir/initializer-bindings.js +115 -0
- package/dist/ir/initializer-bindings.js.map +1 -0
- package/dist/ir/initializer-bindings.test.d.ts +1 -0
- package/dist/ir/initializer-bindings.test.js +118 -0
- package/dist/ir/initializer-bindings.test.js.map +1 -0
- package/dist/ir/integer-loop-facts.d.ts +12 -0
- package/dist/ir/integer-loop-facts.js +137 -0
- package/dist/ir/integer-loop-facts.js.map +1 -0
- package/dist/ir/integer-loops.d.ts +19 -0
- package/dist/ir/integer-loops.js +172 -11
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/integer-loops.test.js +122 -9
- package/dist/ir/integer-loops.test.js.map +1 -1
- package/dist/ir/integer-ranges.d.ts +8 -6
- package/dist/ir/integer-ranges.js +416 -90
- package/dist/ir/integer-ranges.js.map +1 -1
- package/dist/ir/integer-ranges.test.js +239 -10
- package/dist/ir/integer-ranges.test.js.map +1 -1
- package/dist/ir/intrinsic-signatures.d.ts +20 -0
- package/dist/ir/intrinsic-signatures.js +57 -0
- package/dist/ir/intrinsic-signatures.js.map +1 -0
- package/dist/ir/ir.d.ts +14 -2155
- package/dist/ir/ir.js +169 -1394
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/ir.test.js +98 -77
- package/dist/ir/ir.test.js.map +1 -1
- package/dist/ir/runtime-features.d.ts +221 -0
- package/dist/ir/runtime-features.js +551 -0
- package/dist/ir/runtime-features.js.map +1 -0
- package/dist/ir/runtime-features.test.d.ts +1 -0
- package/dist/ir/runtime-features.test.js +98 -0
- package/dist/ir/runtime-features.test.js.map +1 -0
- package/dist/ir/scalar-records.js +130 -40
- package/dist/ir/scalar-records.js.map +1 -1
- package/dist/ir/scalar-records.test.js +146 -27
- package/dist/ir/scalar-records.test.js.map +1 -1
- package/dist/ir/serialize.js +4 -2
- package/dist/ir/serialize.js.map +1 -1
- package/dist/ir/serialize.test.js +44 -9
- package/dist/ir/serialize.test.js.map +1 -1
- package/dist/ir/traverse.js +156 -43
- package/dist/ir/traverse.js.map +1 -1
- package/dist/ir/traverse.test.js +99 -24
- package/dist/ir/traverse.test.js.map +1 -1
- package/dist/ir/validate.d.ts +1 -31
- package/dist/ir/validate.js +826 -1915
- package/dist/ir/validate.js.map +1 -1
- package/dist/ir/validate.test.js +627 -111
- package/dist/ir/validate.test.js.map +1 -1
- package/dist/library/cache-primitives.js +9 -10
- package/dist/library/cache-primitives.js.map +1 -1
- package/dist/library/cache-reset.test.js +2 -1
- package/dist/library/cache-reset.test.js.map +1 -1
- package/dist/library/compiler-self-identity.js +11 -5
- package/dist/library/compiler-self-identity.js.map +1 -1
- package/dist/library/compiler-self-identity.test.js +10 -3
- package/dist/library/compiler-self-identity.test.js.map +1 -1
- package/dist/library/fence-eval.js +24 -7
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/fence-eval.test.js +31 -7
- package/dist/library/fence-eval.test.js.map +1 -1
- package/dist/library/int-infer.js +199 -59
- package/dist/library/int-infer.js.map +1 -1
- package/dist/library/int-infer.test.js +133 -57
- package/dist/library/int-infer.test.js.map +1 -1
- package/dist/library/ir-policy.d.ts +27 -0
- package/dist/library/ir-policy.js +232 -0
- package/dist/library/ir-policy.js.map +1 -0
- package/dist/library/library-cache.js +40 -17
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +24 -13
- package/dist/library/library-cache.test.js.map +1 -1
- package/dist/library/library-profile.js +68 -13
- package/dist/library/library-profile.js.map +1 -1
- package/dist/library/prepare.js +48 -20
- package/dist/library/prepare.js.map +1 -1
- package/dist/library/semantic-source.js +16 -14
- package/dist/library/semantic-source.js.map +1 -1
- package/dist/library/semantic-source.test.js +9 -14
- package/dist/library/semantic-source.test.js.map +1 -1
- package/dist/library/sidecar-validate.js +53 -12
- package/dist/library/sidecar-validate.js.map +1 -1
- package/dist/library/sidecar.js +85 -24
- package/dist/library/sidecar.js.map +1 -1
- package/dist/library/trap-teaching.js +11 -2
- package/dist/library/trap-teaching.js.map +1 -1
- package/dist/native/cache.js +10 -4
- package/dist/native/cache.js.map +1 -1
- package/dist/native/cli.js +34 -9
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.js +167 -43
- package/dist/native/compiler.js.map +1 -1
- package/dist/native/compiler.test.js +129 -32
- package/dist/native/compiler.test.js.map +1 -1
- package/dist/native/comptime.js +23 -7
- package/dist/native/comptime.js.map +1 -1
- package/dist/native/comptime.test.js +26 -6
- package/dist/native/comptime.test.js.map +1 -1
- package/dist/native/executable-cache.js +77 -27
- package/dist/native/executable-cache.js.map +1 -1
- package/dist/native/executable-cache.test.js +41 -6
- package/dist/native/executable-cache.test.js.map +1 -1
- package/dist/native/file-identity.js +9 -2
- package/dist/native/file-identity.js.map +1 -1
- package/dist/native/file-identity.test.js.map +1 -1
- package/dist/native/library.js +50 -12
- package/dist/native/library.js.map +1 -1
- package/dist/native/prepare.js +119 -34
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/prepare.test.js +22 -6
- package/dist/native/prepare.test.js.map +1 -1
- package/dist/native/runtime-typescript.js +24 -11
- package/dist/native/runtime-typescript.js.map +1 -1
- package/dist/native/runtime-typescript.test.js.map +1 -1
- package/dist/native/sanitizer.js +71 -18
- package/dist/native/sanitizer.js.map +1 -1
- package/dist/native/sanitizer.test.js +77 -20
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/native/task.js.map +1 -1
- package/dist/native/task.test.js +7 -2
- package/dist/native/task.test.js.map +1 -1
- package/dist/native/toolchain.js +74 -29
- package/dist/native/toolchain.js.map +1 -1
- package/dist/native/toolchain.test.js +95 -18
- package/dist/native/toolchain.test.js.map +1 -1
- package/dist/startup-cache.d.ts +1 -1
- package/dist/startup-cache.js +1 -1
- package/dist/startup-cache.js.map +1 -1
- package/dist/timing.js.map +1 -1
- package/package.json +20 -20
- package/surface-manifest.json +1 -1
- package/dist/frontend/lowering/lower-builtins.d.ts +0 -601
- package/dist/frontend/lowering/lower-builtins.js +0 -8984
- package/dist/frontend/lowering/lower-builtins.js.map +0 -1
- package/dist/frontend/lowering/lower-containers.d.ts +0 -382
- package/dist/frontend/lowering/lower-containers.js +0 -7366
- package/dist/frontend/lowering/lower-containers.js.map +0 -1
|
@@ -1,601 +0,0 @@
|
|
|
1
|
-
import * as ts from "../ts7/adapter.js";
|
|
2
|
-
import type { Lowerer } from "./lowerer.js";
|
|
3
|
-
import { type BuiltinModuleFn } from "./surfaces.js";
|
|
4
|
-
import { type IrExpr, type IrType, type SrcLoc } from "../../ir/ir.js";
|
|
5
|
-
/** URL component assignment captures its receiver and RHS once, and yields
|
|
6
|
-
* the original RHS after the setter performs string conversion. */
|
|
7
|
-
export declare function lowerUrlAssignment(lowerer: Lowerer, expr: ts.BinaryExpression): IrExpr | null;
|
|
8
|
-
/** timers/promises.setInterval(delay, value), the first Node API built on
|
|
9
|
-
* the generic async-generator protocol. The supported form has an explicit
|
|
10
|
-
* value and no AbortSignal options. It lowers to a generated typed async
|
|
11
|
-
* generator whose loop awaits the existing promise timeout then yields the
|
|
12
|
-
* retained value; creating the iterator remains lazy. */
|
|
13
|
-
export declare function lowerTimersPromisesSetInterval(lowerer: Lowerer, expr: ts.CallExpression, bi: {
|
|
14
|
-
module: string;
|
|
15
|
-
member: string;
|
|
16
|
-
}, loc: SrcLoc): IrExpr | null;
|
|
17
|
-
/** Resolves an identifier to a supported builtin-module IMPORT BINDING:
|
|
18
|
-
* a named import (through its alias, so `import { join as j }` matches)
|
|
19
|
-
* whose declaration is an ImportSpecifier under a supported builtin
|
|
20
|
-
* specifier — "fs"/"node:fs", "path"/"node:path", ... The SPECIFIER is
|
|
21
|
-
* the provenance: user code can only acquire these bindings by importing
|
|
22
|
-
* the module (preflight allowlists exactly these specifiers, and Node
|
|
23
|
-
* itself resolves bare builtin names to the builtin — no npm shadowing),
|
|
24
|
-
* and a same-named local or user function has a different symbol whose
|
|
25
|
-
* declaration is not an import specifier. Returns the CANONICAL module
|
|
26
|
-
* name and the EXPORTED member name (not the local alias). */
|
|
27
|
-
export declare function builtinImportOf(lowerer: Lowerer, ident: ts.Identifier): {
|
|
28
|
-
module: string;
|
|
29
|
-
member: string;
|
|
30
|
-
} | null;
|
|
31
|
-
/** True for `const <name> = require("<builtin>").<member>` — the
|
|
32
|
-
* member-binding require import builtinImportOf resolves. Both
|
|
33
|
-
* declaration walks (lowerVarDecl, collectGlobals) skip these: like a
|
|
34
|
-
* named import, the binding is alias plumbing with no storage — call
|
|
35
|
-
* sites lower through the module tables, value uses fence per site. */
|
|
36
|
-
export declare function builtinMemberRequireDecl(nameNode: ts.Node, init: ts.Expression | undefined): boolean;
|
|
37
|
-
/** The supported builtin module when `decl` destructures a builtin
|
|
38
|
-
* NAMESPACE binding (`const crypto = require('crypto'); const {
|
|
39
|
-
* createSign, sign: mySign } = crypto;` — test/common/crypto.js's
|
|
40
|
-
* idiom; the `import * as ns` form rides the same resolution). Pure
|
|
41
|
-
* alias plumbing: the bindings key the same tables as named imports
|
|
42
|
-
* (builtinImportOf's alias hop), so no storage and no statement exist —
|
|
43
|
-
* both declaration walks skip by this test. Plain identifier elements
|
|
44
|
-
* and renames only: a rest element needs the namespace VALUE and a
|
|
45
|
-
* default needs a missing-member probe — those keep the existing
|
|
46
|
-
* namespace-as-value fence. The direct-require initializer answers null
|
|
47
|
-
* here (its own arm already resolves it). */
|
|
48
|
-
export declare function builtinNamespaceDestructureModuleOf(lowerer: Lowerer, decl: ts.VariableDeclaration): string | null;
|
|
49
|
-
/** Strips the type-only wrappers the require pattern rides in typed
|
|
50
|
-
* code (`require("node:os") as typeof import("node:os")` — the
|
|
51
|
-
* fallback declarations answer `unknown`, so the cast IS the idiom),
|
|
52
|
-
* plus parens, legacy assertions, and non-null suffixes. */
|
|
53
|
-
export declare function stripTypeCasts(e: ts.Expression): ts.Expression;
|
|
54
|
-
/** True for `const require = createRequire(import.meta.url)` — the
|
|
55
|
-
* binding is compile-time plumbing (each call through it resolves per
|
|
56
|
-
* site) with no storage and no code; both declaration walks skip by
|
|
57
|
-
* this test. Top-level let/var bindings also qualify when preflight's
|
|
58
|
-
* shared proof rules out writes, escapes, and use before initialization. */
|
|
59
|
-
export declare function createRequireBindingDecl(lowerer: Lowerer, nameNode: ts.Node, init: ts.Expression | undefined): boolean;
|
|
60
|
-
/** The declaring source file when `callee` denotes a createRequire-made
|
|
61
|
-
* require: a stable binding over createRequire(import.meta.url) (the
|
|
62
|
-
* binding's own file anchors resolution) or the inline
|
|
63
|
-
* `createRequire(import.meta.url)(...)` spelling (the call's file).
|
|
64
|
-
* Null off the pattern, so call chains keep trying. */
|
|
65
|
-
export declare function createRequireCalleeFileOf(lowerer: Lowerer, callee: ts.Expression): ts.SourceFile | null;
|
|
66
|
-
/** The static require of `R("spec")` through a createRequire binding:
|
|
67
|
-
* the literal specifier plus the file anchoring relative resolution.
|
|
68
|
-
* Null when the callee is not a createRequire-made require; a matching
|
|
69
|
-
* callee with a non-literal (or missing) specifier answers spec null,
|
|
70
|
-
* so the call lowering fences by name instead of falling through to
|
|
71
|
-
* the generic call paths. */
|
|
72
|
-
export declare function createRequireSpecOf(lowerer: Lowerer, call: ts.CallExpression): {
|
|
73
|
-
spec: string | null;
|
|
74
|
-
baseFile: ts.SourceFile;
|
|
75
|
-
} | null;
|
|
76
|
-
/** node:ffi is a checked native module value, so its require binding needs
|
|
77
|
-
* storage even when the createRequire loader is named `require`. */
|
|
78
|
-
export declare function isNativeFfiRequire(lowerer: Lowerer, expr: ts.Expression | undefined): boolean;
|
|
79
|
-
/** True for `const fs = require("node:fs")` through a createRequire
|
|
80
|
-
* binding — a builtin namespace import in const clothing: alias
|
|
81
|
-
* plumbing with no storage (uses resolve through
|
|
82
|
-
* builtinNamespaceModuleOf's createRequire arm); both declaration
|
|
83
|
-
* walks skip by this test. */
|
|
84
|
-
export declare function createRequireNamespaceDecl(lowerer: Lowerer, nameNode: ts.Node, init: ts.Expression | undefined): boolean;
|
|
85
|
-
/** A statically compiled program module reached through a canonical
|
|
86
|
-
* createRequire binding. This is the ESM twin of an ordinary CommonJS
|
|
87
|
-
* require edge: the same project resolver, require-condition npm-static
|
|
88
|
-
* entry, module initializer, and export registrations own the target. */
|
|
89
|
-
export declare function createRequireProgramModuleOf(lowerer: Lowerer, expr: ts.Expression | undefined): {
|
|
90
|
-
spec: string;
|
|
91
|
-
baseFile: ts.SourceFile;
|
|
92
|
-
dep: ts.SourceFile;
|
|
93
|
-
} | null;
|
|
94
|
-
/** True for a const identifier whose initializer is a createRequire call
|
|
95
|
-
* reaching a compiled program module. The binding is namespace/value
|
|
96
|
-
* alias plumbing; its declaration emits only the dependency's run-once
|
|
97
|
-
* initializer at the source position. */
|
|
98
|
-
export declare function createRequireProgramModuleDecl(lowerer: Lowerer, nameNode: ts.Node, init: ts.Expression | undefined): boolean;
|
|
99
|
-
/** node:module's two compiler-only calls. isBuiltin compares one evaluated
|
|
100
|
-
* string against the pinned Node 24 list (bare builtins also accept their
|
|
101
|
-
* node: spelling; prefix-only entries do not gain a bare alias).
|
|
102
|
-
* syncBuiltinESMExports is observably a no-op inside the static surface:
|
|
103
|
-
* builtin exports cannot be mutated, so its only supported behavior is
|
|
104
|
-
* evaluating no arguments and returning undefined. */
|
|
105
|
-
export declare function lowerNodeModuleCall(lowerer: Lowerer, expr: ts.CallExpression, bi: {
|
|
106
|
-
module: string;
|
|
107
|
-
member: string;
|
|
108
|
-
}, loc: SrcLoc): IrExpr | null;
|
|
109
|
-
/** `require("spec")` through a createRequire binding — the erasure per
|
|
110
|
-
* target. Builtins are reached here only OUTSIDE the const-namespace-
|
|
111
|
-
* binding shape (that declaration erases; member uses resolve through
|
|
112
|
-
* the namespace tables) and fence toward it. A relative .json document
|
|
113
|
-
* bakes: the file's text validates as JSON at compile time and the
|
|
114
|
-
* call lowers to json.parse over the baked literal — JSON.parse's
|
|
115
|
-
* checked-dynamic `unknown` stance, and exactly Node's value (require
|
|
116
|
-
* of JSON IS JSON.parse of the file; the per-call re-parse forgoes
|
|
117
|
-
* Node's module-cache identity, unobservable without mutation). A bare
|
|
118
|
-
* specifier NOTHING installed resolves compiles to Node's catchable
|
|
119
|
-
* MODULE_NOT_FOUND throw (the optional-dependency try/require
|
|
120
|
-
* pattern); an installed package loads through the island's
|
|
121
|
-
* require-condition entry under --dynamic (collectCreateRequires
|
|
122
|
-
* embedded it) and reports the requires-dynamic diagnostic in a static
|
|
123
|
-
* build. Null when the callee is not a createRequire require. */
|
|
124
|
-
export declare function lowerCreateRequireCall(lowerer: Lowerer, call: ts.CallExpression, loc: SrcLoc): IrExpr | null;
|
|
125
|
-
/** import.meta.resolve("literal") folds through the runtime-module
|
|
126
|
-
* resolver, never TypeScript's declaration-file resolver. Relative and
|
|
127
|
-
* URL-like names remain valid even when no file exists; bare packages use
|
|
128
|
-
* Node's import-condition exports path. */
|
|
129
|
-
export declare function lowerImportMetaResolveCall(lowerer: Lowerer, call: ts.CallExpression): IrExpr | null;
|
|
130
|
-
/** CommonJS require.resolve and require.resolve.paths for the ambient
|
|
131
|
-
* wrapper or a supported createRequire binding. Results are build-time
|
|
132
|
-
* constants; failures lower to Node's catchable error object. */
|
|
133
|
-
export declare function lowerRequireResolveCall(lowerer: Lowerer, call: ts.CallExpression): IrExpr | null;
|
|
134
|
-
/** `constants.NGHTTP2_CANCEL` / `constants.SSL_OP_NO_TICKET` (any baked-
|
|
135
|
-
* constants spelling) → the literal; unknown members fence by name.
|
|
136
|
-
* Null when the receiver is not a baked constants object (the property
|
|
137
|
-
* chain keeps trying). */
|
|
138
|
-
export declare function lowerBuiltinConstantsProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
139
|
-
/** Presence probes do not extract an unbound Performance method value. */
|
|
140
|
-
export declare function lowerPerfHooksTypeof(lowerer: Lowerer, expression: ts.Expression): IrExpr | null;
|
|
141
|
-
/** The node:perf_hooks spoke: `performance.now()` reads the runtime's
|
|
142
|
-
* monotonic clock anchored at process start — Node's timeOrigin for a
|
|
143
|
-
* compiled program, fractional milliseconds — and
|
|
144
|
-
* `performance.now.bind(performance)` (the mockable-clock idiom's
|
|
145
|
-
* getTimestamp) is the same clock as a plain () => number function
|
|
146
|
-
* value. Other members on the performance object fence by name; null
|
|
147
|
-
* for non-perf_hooks callees (the call chain keeps trying). */
|
|
148
|
-
export declare function lowerPerfHooksCall(lowerer: Lowerer, expr: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
149
|
-
/** True for `const { NGHTTP2_CANCEL, ... } = http2.constants` (and the
|
|
150
|
-
* crypto.constants twin) — a plain object destructure (identifier
|
|
151
|
-
* elements, renames allowed, no rest/defaults/nesting) over a baked
|
|
152
|
-
* constants object whose every name is in its table. The declaration is
|
|
153
|
-
* alias plumbing with no storage (lowerVarDecl and collectGlobals both
|
|
154
|
-
* skip it); each USE reads its baked literal
|
|
155
|
-
* (builtinConstantBindingOf). */
|
|
156
|
-
export declare function builtinConstantsDestructureDecl(lowerer: Lowerer, nameNode: ts.Node, init: ts.Expression | undefined): boolean;
|
|
157
|
-
/** Resolves an identifier bound by a builtinConstantsDestructureDecl to
|
|
158
|
-
* its baked literal value. Null for every other binding. */
|
|
159
|
-
export declare function builtinConstantBindingOf(lowerer: Lowerer, ident: ts.Identifier): IrExpr | null;
|
|
160
|
-
export declare function lowerFsToUnixTimestampCall(lowerer: Lowerer, expr: ts.CallExpression, bi: {
|
|
161
|
-
module: string;
|
|
162
|
-
member: string;
|
|
163
|
-
}, loc: SrcLoc): IrExpr | null;
|
|
164
|
-
/** The fs validation-ladder spoke (checked-dynamic lane, JS sources
|
|
165
|
-
* only — TypeScript keeps its compile fences): implemented-namespace
|
|
166
|
-
* calls whose misuse Node rejects with typed errors lower to fs.*Chk
|
|
167
|
-
* libCalls that replicate the validation ladder over dyn values and
|
|
168
|
-
* throw Node's exact ERR_INVALID_ARG_TYPE / ERR_INVALID_ARG_VALUE /
|
|
169
|
-
* ERR_OUT_OF_RANGE — the honest tail (the real operation where one
|
|
170
|
-
* exists, the compiler-rendered SC2020 fence otherwise) runs only
|
|
171
|
-
* after every validation passes, exactly Node's order. Null when this
|
|
172
|
-
* is not a claimed member/shape (the table or fence path stands). */
|
|
173
|
-
export declare function lowerFsLadderCall(lowerer: Lowerer, expr: ts.CallExpression, bi: {
|
|
174
|
-
module: string;
|
|
175
|
-
member: string;
|
|
176
|
-
}, loc: SrcLoc): IrExpr | null;
|
|
177
|
-
export declare function lowerBuiltinModuleCall(lowerer: Lowerer, expr: ts.CallExpression, bi: {
|
|
178
|
-
module: string;
|
|
179
|
-
member: string;
|
|
180
|
-
}, fn: BuiltinModuleFn, loc: SrcLoc): IrExpr;
|
|
181
|
-
/** Reflect.ownKeys uses native computed-key reflection. Reflect.apply(target,
|
|
182
|
-
* thisArg, argsList) where the TARGET is a builtin
|
|
183
|
-
* rest-parameter table fn (path.join / path.resolve — test/common
|
|
184
|
-
* fixtures.js's fixturesPath forwards its rest args exactly this way):
|
|
185
|
-
* the packed libCall over a validated string[] extraction of argsList.
|
|
186
|
-
* The builtins ignore the receiver, so thisArg must be an effect-free
|
|
187
|
-
* spelling (`this`, an identifier, a unit literal) whose dropped
|
|
188
|
-
* evaluation is unobservable; every other Reflect.apply keeps the
|
|
189
|
-
* fence. Null when this isn't a supported Reflect call. */
|
|
190
|
-
export declare function lowerReflectCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
191
|
-
/** The child-process args list: one string[] value. An omitted list
|
|
192
|
-
* completes to an empty literal (Node's default); an array LITERAL
|
|
193
|
-
* builds element-wise (its contextual type is the optional parameter's
|
|
194
|
-
* `string[] | undefined`, which the generic literal path cannot map —
|
|
195
|
-
* the Set-seed situation exactly); everything else lowers as itself. */
|
|
196
|
-
export declare function lowerChildArgsArg(lowerer: Lowerer, node: ts.Expression | undefined, loc: SrcLoc): IrExpr;
|
|
197
|
-
/** `spawnSync(command, args?, options?)` → one cp.spawnSync /
|
|
198
|
-
* cp.spawnSyncOpts libCall. An omitted args list completes to an empty
|
|
199
|
-
* string[] literal (Node's default). The options argument must be an
|
|
200
|
-
* object LITERAL whose members are drawn from the honestly-implemented
|
|
201
|
-
* set: `encoding` (the "utf8"/"utf-8" literal — the runtime captures
|
|
202
|
-
* utf8 unconditionally, and the option flips @types/node's
|
|
203
|
-
* stdout/stderr to string), `timeout` (ms — killSignal fires at the
|
|
204
|
-
* deadline and the result carries error: ETIMEDOUT + the signal, never
|
|
205
|
-
* a throw: Node's spawnSync shape), `killSignal` (a signal-name
|
|
206
|
-
* literal, validated against Node's table), `stdio` (the "pipe"/
|
|
207
|
-
* "ignore"/"inherit" string form or a 3-tuple of those — non-piped
|
|
208
|
-
* outputs read "" where Node types them null, spawnSync's documented
|
|
209
|
-
* stance), and `windowsHide` (a POSIX no-op, evaluated for side
|
|
210
|
-
* effects). Everything else (shell, cwd, env, input, maxBuffer, ...)
|
|
211
|
-
* fences by name. The bare `{ encoding: "utf8" }` shape keeps its
|
|
212
|
-
* historical cp.spawnSync lowering. */
|
|
213
|
-
export declare function lowerSpawnSyncCall(lowerer: Lowerer, expr: ts.CallExpression, loc: SrcLoc): IrExpr;
|
|
214
|
-
/** `spawn(command, args?, options)` → one cp.spawn / cp.spawnOpts
|
|
215
|
-
* libCall. Computed options use native runtime normalization. Inline
|
|
216
|
-
* stdio accepts "ignore", "inherit", or "pipe" as the scalar,
|
|
217
|
-
* or the 3-tuple whose stdin pipe becomes child.stdin, stdout/stderr
|
|
218
|
-
* pipes become child.stdout/child.stderr, and output slots may also be
|
|
219
|
-
* number fds. Omitting stdio uses Node's default: all three piped. The
|
|
220
|
-
* other lowered
|
|
221
|
-
* members: `detached` (a boolean literal, inline or carried by the
|
|
222
|
-
* conditional spread `...(c ? { detached: true } : {})` in either
|
|
223
|
-
* orientation — POSIX_SPAWN_SETSID, the child gets its own session and
|
|
224
|
-
* process group like Node's), `env` (a
|
|
225
|
-
* REPLACEMENT environment, the exec-core pairs machinery), `cwd`, and
|
|
226
|
-
* `windowsHide` (a POSIX no-op). The bare `{ stdio: "ignore" }` shape
|
|
227
|
-
* keeps its historical cp.spawn lowering. */
|
|
228
|
-
export declare function lowerSpawnCall(lowerer: Lowerer, expr: ts.CallExpression, loc: SrcLoc): IrExpr;
|
|
229
|
-
/** `fork(staticModulePath, args?, options?)` embeds the selected program
|
|
230
|
-
* module and re-executes the native artifact with one private target id.
|
|
231
|
-
* Node's default JSON IPC channel is always present. */
|
|
232
|
-
export declare function lowerForkCall(lowerer: Lowerer, expr: ts.CallExpression, loc: SrcLoc): IrExpr;
|
|
233
|
-
/** `execFile(file[, args][, options], callback)` — the asynchronous callback
|
|
234
|
-
* slice. The child starts immediately with stdin/stdout/stderr piped; the
|
|
235
|
-
* runtime captures both outputs and invokes the error-first callback after
|
|
236
|
-
* settlement. The callback may ignore a suffix of `(error, stdout,
|
|
237
|
-
* stderr)`, but every declared parameter must have the Node shape. Inline
|
|
238
|
-
* `encoding: "utf8"` and a pure numeric `maxBuffer` are accepted; the latter
|
|
239
|
-
* is not enforced by the growing native capture, as
|
|
240
|
-
* with the synchronous and promisified capture forms. Other options remain
|
|
241
|
-
* fenced until their lifecycle can share this asynchronous core. */
|
|
242
|
-
export declare function lowerExecFileCall(lowerer: Lowerer, expr: ts.CallExpression, loc: SrcLoc): IrExpr;
|
|
243
|
-
export declare function lowerExecSyncCall(lowerer: Lowerer, expr: ts.CallExpression, shell: boolean, loc: SrcLoc): IrExpr;
|
|
244
|
-
/** Compile-time util.promisify projections. The immutable result binding
|
|
245
|
-
* owns no runtime slot: calls rewrite to the target's promise lowering,
|
|
246
|
-
* while value uses remain explicit fences. Unsupported targets report at
|
|
247
|
-
* the declaration, where their identity is still visible. */
|
|
248
|
-
export declare function isPromisifyCall(lowerer: Lowerer, init: ts.Expression): ts.CallExpression | null;
|
|
249
|
-
/** Immutable aliases of table-backed builtin functions. The alias is a
|
|
250
|
-
* compile-time call target, so direct calls keep the builtin's validated
|
|
251
|
-
* lowering without materializing a JavaScript function object. Value
|
|
252
|
-
* uses remain fenced until an escaping closure adapter exists. */
|
|
253
|
-
export declare function registerBuiltinCallableAlias(lowerer: Lowerer, nameNode: ts.Node, init: ts.Expression | undefined): boolean;
|
|
254
|
-
export declare function registerPromisifiedBuiltinDecl(lowerer: Lowerer, nameNode: ts.Node, init: ts.Expression | undefined): boolean;
|
|
255
|
-
/** A call THROUGH a promisified-execFile binding:
|
|
256
|
-
* `execFileAsync(file, args?, options?)` → one call of the interned
|
|
257
|
-
* %execFileAsync helper — an ASYNC IR function (throw-becomes-rejection
|
|
258
|
-
* for free) that runs the exec core synchronously and returns
|
|
259
|
-
* `{ stdout, stderr }`, exactly Node's promisified execFile behind an
|
|
260
|
-
* already-settled promise (the fs/promises stance, divergence 23).
|
|
261
|
-
* Options are the exec-sync slice minus stdio (the async form always
|
|
262
|
-
* captures both streams, no echo): encoding must spell utf8, cwd/env/
|
|
263
|
-
* timeout lower, maxBuffer/windowsHide are accepted no-ops, killSignal
|
|
264
|
-
* only as its SIGTERM default. Rejections carry Node's async messages
|
|
265
|
-
* ("Command failed: <cmd>\n<stderr>" — the trailing newline is Node's —
|
|
266
|
-
* and "spawn <file> ENOENT" with .code); Node's numeric `.code` on a
|
|
267
|
-
* Command-failed rejection (the exit status) is NOT carried —
|
|
268
|
-
* SEMANTICS.md divergence 50's stance. */
|
|
269
|
-
export declare function lowerExecFileAsyncCall(lowerer: Lowerer, expr: ts.CallExpression, loc: SrcLoc): IrExpr;
|
|
270
|
-
/** The interned `%execFileAsync` helper behind promisified-execFile
|
|
271
|
-
* calls: an ASYNC IR function (params: cmd, argv, cwd, hasEnv, envPairs,
|
|
272
|
-
* timeoutMs) whose body runs the may-throw cp.execCapture libCall — the
|
|
273
|
-
* async machinery turns a throw into the rejection, Node's promisified
|
|
274
|
-
* behavior — and returns the `{ stdout, stderr }` record built from the
|
|
275
|
-
* capture. One helper per program (the shape is fixed). */
|
|
276
|
-
export declare function execFileAsyncHelper(lowerer: Lowerer, loc: SrcLoc): {
|
|
277
|
-
name: string;
|
|
278
|
-
shapeId: string;
|
|
279
|
-
envShapeId: string;
|
|
280
|
-
};
|
|
281
|
-
/** An `env` option object → the [k, v, ...] pairs array cp.execSync
|
|
282
|
-
* consumes. The value must be a record (an index-signature ProcessEnv
|
|
283
|
-
* snapshot — `{ ...process.env, X: y }` — or a plain string-map): its
|
|
284
|
-
* string-typed fields and, for index-signature shapes, overflow entries
|
|
285
|
-
* flatten in JS own-key order, undefined-armed values SKIPPED (Node
|
|
286
|
-
* drops undefined env entries). Reuses the interned overflow-keys/read
|
|
287
|
-
* machinery. */
|
|
288
|
-
export declare function recordToEnvPairs(lowerer: Lowerer, node: ts.Expression): IrExpr;
|
|
289
|
-
/** Method calls on diagnostics_channel Channel receivers:
|
|
290
|
-
* publish(message), subscribe(fn), unsubscribe(fn) — over the f64
|
|
291
|
-
* channel handle. The rest of the declared surface (bindStore,
|
|
292
|
-
* runStores) fences member-qualified. Null for non-Channel receivers. */
|
|
293
|
-
export declare function lowerDcChannelMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
294
|
-
/** Method calls on AsyncLocalStorage receivers: run(store, fn, ...args),
|
|
295
|
-
* exit(fn, ...args), getStore(), enterWith(store), disable() — over the
|
|
296
|
-
* f64 store handle (als.* libCalls; values cross as dyn values). Null
|
|
297
|
-
* for non-ALS receivers. */
|
|
298
|
-
export declare function lowerAlsMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
299
|
-
/** Property reads on Channel receivers: `.name` (the registration
|
|
300
|
-
* string) and `.hasSubscribers` (the publish guard). Null for
|
|
301
|
-
* non-Channel receivers and other members (the method fence owns them). */
|
|
302
|
-
export declare function lowerDcChannelProperty(lowerer: Lowerer, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
303
|
-
/** Method calls on TracingChannel receivers: subscribe/unsubscribe over
|
|
304
|
-
* a dyn handlers object, traceSync/traceCallback through the runtime's
|
|
305
|
-
* publish choreography (dc.tcTraceSync/dc.tcTraceCallback — fn, context,
|
|
306
|
-
* thisArg, and the argument vector all cross as dyn values; context
|
|
307
|
-
* defaults to a fresh `{}` and thisArg to undefined, Node's defaults),
|
|
308
|
-
* and tracePromise through the reaction-fiber choreography
|
|
309
|
-
* (dc.tcTracePromise — the result is the reaction promise, typed
|
|
310
|
-
* promise<dyn> so .then/.catch chains ride the promise lowerings).
|
|
311
|
-
* Null for non-TracingChannel receivers. */
|
|
312
|
-
export declare function lowerDcTracingChannelMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
313
|
-
/** Property reads on TracingChannel receivers: the five event channels
|
|
314
|
-
* (`.start` … `.error` — Channel-typed f64 handles the Channel lowerings
|
|
315
|
-
* take over) and `.hasSubscribers` (the five-channel disjunction). Null
|
|
316
|
-
* for other members and non-TracingChannel receivers. */
|
|
317
|
-
export declare function lowerDcTracingChannelProperty(lowerer: Lowerer, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
318
|
-
export declare function lowerReadlineMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
319
|
-
/** StringDecoder writes preserve pending bytes; end(input) performs the
|
|
320
|
-
* final write and flushes the state. String input passes through unchanged. */
|
|
321
|
-
export declare function lowerStringDecoderMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
322
|
-
/** The interned %strdec helpers: write(d, chunk) returns the decoded
|
|
323
|
-
* complete prefix and re-buffers the trailing partial into the pending
|
|
324
|
-
* field; end(d) flushes it. Both thread the packed-f64 state through
|
|
325
|
-
* the pure strdec.* libCalls. */
|
|
326
|
-
export declare function strdecHelper(lowerer: Lowerer, op: "write" | "end" | "endChunk" | "endString" | "writeString", shapeId: string, loc: SrcLoc): string;
|
|
327
|
-
/** JSON parse produces checked-dynamic data; a native reviver walks it
|
|
328
|
-
* bottom-up before any checked cast. Stringify without a callback keeps
|
|
329
|
-
* its type-directed fast path. A function replacer boxes the input and
|
|
330
|
-
* walks it before primitive normalization. Both paths share literal gap
|
|
331
|
-
* rules, and callback failures use ordinary native exception unwinding. */
|
|
332
|
-
export declare function lowerJsonMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
333
|
-
/** The module specifier when `ident` is an import binding (named,
|
|
334
|
-
* default, or namespace) from a node BUILTIN module with no scriptc
|
|
335
|
-
* support — "child_process", "net", ... — or null. The coverage story's
|
|
336
|
-
* use-site half: preflight fenced the import line; statements using the
|
|
337
|
-
* binding poison with the same module-naming diagnostic. */
|
|
338
|
-
export declare function fencedBuiltinImportOf(lowerer: Lowerer, ident: ts.Identifier): string | null;
|
|
339
|
-
/** The composed crypto pattern: `randomBytes(n).toString(enc)` lowers
|
|
340
|
-
* as ONE string-producing libCall — the Buffer between the two calls
|
|
341
|
-
* never exists at runtime. Only literal "hex"/"base64" encodings lower
|
|
342
|
-
* (the runtime implements exactly those); wider forms fall through to
|
|
343
|
-
* the ordinary Buffer lowering. Null when this is not a toString on a
|
|
344
|
-
* crypto.randomBytes call. */
|
|
345
|
-
export declare function lowerCryptoComposedCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
346
|
-
/** The node:crypto utility and introspection statics. Hash/Hmac are real
|
|
347
|
-
* native handles; one-shot hashing, constant-time equality, random-fill/
|
|
348
|
-
* integer, and PBKDF2 share the same runtime primitives as the island.
|
|
349
|
-
* The name lists remain build-time constants. */
|
|
350
|
-
export declare function lowerCryptoModuleCall(lowerer: Lowerer, expr: ts.CallExpression, bi: {
|
|
351
|
-
module: string;
|
|
352
|
-
member: string;
|
|
353
|
-
}, loc: SrcLoc): IrExpr | null;
|
|
354
|
-
/** Method calls on URL-typed receivers: `u.toString()` and `u.toJSON()` are Node's href
|
|
355
|
-
* serialization (the href getter's libCall). Everything else the lib
|
|
356
|
-
* declares fences member-qualified. Null for non-URL receivers. */
|
|
357
|
-
export declare function lowerUrlMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
358
|
-
/** `new URLSearchParams(init?)` — the WHATWG constructor's lowered init
|
|
359
|
-
* shapes: omitted / literal `undefined` (empty list), a string (parsed,
|
|
360
|
-
* one leading '?' strips), another URLSearchParams (snapshot copy — a
|
|
361
|
-
* `u.searchParams` argument included), a string[][] value (pairs;
|
|
362
|
-
* Node's ERR_INVALID_TUPLE TypeError on a non-pair row, thrown by the
|
|
363
|
-
* runtime), and an OBJECT LITERAL (each property appends in source
|
|
364
|
-
* order — folded to a sp.with chain at compile time; keys are the
|
|
365
|
-
* record-literal key forms, values coerce as strings). Tuple-typed pair
|
|
366
|
-
* arrays and unions keep named fences. */
|
|
367
|
-
export declare function lowerSearchParamsNew(lowerer: Lowerer, expr: ts.NewExpression, loc: SrcLoc): IrExpr;
|
|
368
|
-
/** Method calls on URLSearchParams-typed receivers — the WHATWG list
|
|
369
|
-
* surface over the runtime's decoded pairs. get answers `string | null`
|
|
370
|
-
* (the checker's own union; the runtime's +1-or-NULL builds the arms);
|
|
371
|
-
* has/delete take the value-aware second argument (an explicitly
|
|
372
|
-
* `undefined`-typed second argument means the name-only form, Node's
|
|
373
|
-
* treatment); forEach desugars to a synthesized index loop over the
|
|
374
|
-
* LIVE list (sp.size re-reads every pass — appends mid-walk are
|
|
375
|
-
* visited, deletes shift, the spec's index-based iteration).
|
|
376
|
-
* keys()/values()/entries() lower only in a for-of head (lower-stmts
|
|
377
|
-
* routes them before this table) — stored iterator objects keep the
|
|
378
|
-
* drain fence. Null for non-searchParams receivers. */
|
|
379
|
-
export declare function lowerSearchParamsMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
380
|
-
/** Calls on an fs/promises FileHandle. The promise-returning methods run
|
|
381
|
-
* through the same synchronous descriptor primitives as fs.readSync /
|
|
382
|
-
* writeSync, then settle so failures reject at await. read/write retain
|
|
383
|
-
* the caller's buffer in the Node-shaped result record. */
|
|
384
|
-
export declare function lowerFileHandleMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
385
|
-
/** Method calls on Stats-typed receivers: isFile()/isDirectory()/
|
|
386
|
-
* isSymbolicLink() are pure reads on the stat snapshot (a followed
|
|
387
|
-
* statSync snapshot never answers true to isSymbolicLink — take
|
|
388
|
-
* lstatSync's, Node's own split). Everything else @types/node declares
|
|
389
|
-
* (mtime, mode, ...) fences member-qualified. Null for non-Stats
|
|
390
|
-
* receivers. */
|
|
391
|
-
export declare function lowerStatsMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
392
|
-
/** Calls on native crypto.Hash/Hmac handles. The handle survives locals,
|
|
393
|
-
* aliases, loops, and returns; update() retains and returns the receiver,
|
|
394
|
-
* digest() finalizes it, and Hash.copy() snapshots the incremental state. */
|
|
395
|
-
export declare function lowerCryptoHashMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
396
|
-
/** `Atomics.wait(int32Array, idx, expected, timeoutMs)` — the
|
|
397
|
-
* synchronous-sleep idiom (RouteStore's
|
|
398
|
-
* `Atomics.wait(sleepBuffer, 0, 0, ms)`): scriptc has no threads, so
|
|
399
|
-
* nothing can ever notify a waiter and the spec's behavior for every
|
|
400
|
-
* compilable program is exactly "compare, then sleep out the timeout"
|
|
401
|
-
* — "not-equal" when the element differs, a real nanosleep and
|
|
402
|
-
* "timed-out" otherwise ("ok" is unreachable). The timeout argument is
|
|
403
|
-
* REQUIRED: without it Node blocks until a notify that cannot exist
|
|
404
|
-
* here — a certain deadlock, fenced with that explanation. Every other
|
|
405
|
-
* Atomics member (notify has no one to wake; add/load/... — nothing
|
|
406
|
-
* races) fences member-qualified. Null for non-Atomics receivers. */
|
|
407
|
-
export declare function lowerAtomicsCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
408
|
-
/** The property-read extensions this spoke owns, tried BEFORE the
|
|
409
|
-
* lower-exprs intrinsic-property fallback (the lowerer's wrapper chains
|
|
410
|
-
* them): the widened numeric Stats snapshot and SpawnSyncReturns.signal
|
|
411
|
-
* (the termination signal's name as the call site's `Signals | null` union
|
|
412
|
-
* — null for a normal exit or spawn failure; a timeout kill reports its
|
|
413
|
-
* killSignal, Node's shape). Null for everything else, so the ordinary
|
|
414
|
-
* chain (and its fences) keeps going. */
|
|
415
|
-
export declare function lowerBuiltinExtraProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
416
|
-
export declare function lowerChildMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
417
|
-
/** Method calls on piped child-output stream receivers (child.stdout /
|
|
418
|
-
* child.stderr — the childStream kind): on/once("data" | "end").
|
|
419
|
-
* 'data' listeners take zero parameters, `(chunk: Buffer)`, or a
|
|
420
|
-
* `Buffer | string`-union chunk (the ngrok appendOutput shape — the
|
|
421
|
-
* runtime only ever fires Buffers; the compiler-emitted adapter wraps
|
|
422
|
-
* the chunk at the union's Buffer arm); 'end' listeners take none.
|
|
423
|
-
* Statement position only (Node returns the stream for chaining; here
|
|
424
|
-
* the result is void). Chained receivers (`child.stdout?.on(...)`)
|
|
425
|
-
* ride the optional-chain re-dispatch (chainBlocked). Everything else
|
|
426
|
-
* @types/node declares on Readable fences member-qualified. Null for
|
|
427
|
-
* non-stream receivers. */
|
|
428
|
-
export declare function lowerChildStreamMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
429
|
-
/** Method calls on a piped child stdin writer. Writes copy one string or
|
|
430
|
-
* Uint8Array into the nonblocking runtime queue and return the backpressure
|
|
431
|
-
* signal. end()/destroy() are statement-only, as are drain/finish/error
|
|
432
|
-
* listener registrations; unsupported callbacks/encodings stay fenced. */
|
|
433
|
-
export declare function lowerChildWriterMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
434
|
-
/** Method calls on first-class process-stream receivers (procStream —
|
|
435
|
-
* a WritableStream-typed value like prefixStream's `output` param):
|
|
436
|
-
* write(data) with one string, dispatched at runtime onto the exact
|
|
437
|
-
* stdout/stderr write paths (the fd IS the value). Everything else
|
|
438
|
-
* @types/node declares on WritableStream fences member-qualified.
|
|
439
|
-
* Null for non-procStream receivers. */
|
|
440
|
-
export declare function lowerProcStreamMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
441
|
-
/** Method calls on FSWatcher receivers: close() — idempotent, statement
|
|
442
|
-
* position (Node returns void there too). Everything else @types/node
|
|
443
|
-
* declares (ref/unref, the EventEmitter surface) fences member-
|
|
444
|
-
* qualified. Null for non-watcher receivers. */
|
|
445
|
-
export declare function lowerWatcherMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
446
|
-
/** `.code` and `.cause` on an error-hierarchy receiver. The latter reads
|
|
447
|
-
* the hidden dyn slot installed by constructor options. The former is NodeJS.ErrnoException's
|
|
448
|
-
* member (the fallback declares the same shape): the runtime Error's
|
|
449
|
-
* code slot as `string | undefined` — the errno name where a throw site
|
|
450
|
-
* stamped one (fs, exec spawn/timeout, process.kill, the spawn 'error'
|
|
451
|
-
* event), undefined everywhere else. Stdlib provenance required (a user
|
|
452
|
-
* class's own `code` field takes the ordinary field paths — its
|
|
453
|
-
* declaration is not stdlib). Reads only: writes keep their fence (no
|
|
454
|
-
* compiled program constructs an errno error). Null for non-error
|
|
455
|
-
* receivers and non-stdlib members, so the chain keeps trying. */
|
|
456
|
-
export declare function lowerErrorCodeProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
457
|
-
/** Stored stringify uses the same native serializer and keeps omitted roots
|
|
458
|
-
* as undefined. Other JSON method values retain a named refusal. */
|
|
459
|
-
export declare function lowerJsonProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
460
|
-
/** `constants.X_OK` where `constants` is a named fs import: the access-
|
|
461
|
-
* mode bits bake as number literals (POSIX values — Node's own on the
|
|
462
|
-
* supported hosts). Other fs.constants members (COPYFILE_*, O_*) fence
|
|
463
|
-
* by name. Null for non-fs-constants receivers. */
|
|
464
|
-
export declare function lowerFsConstantsProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
465
|
-
/** `process.stdin/stdout/stderr.isTTY` → isatty(3) on the stream's fd
|
|
466
|
-
* (a REAL boolean: Node's non-TTY streams expose `undefined` here — the
|
|
467
|
-
* documented divergence; truthiness tests, the actual usage, agree), and
|
|
468
|
-
* `process.stdout/stderr.columns/rows` → ioctl(TIOCGWINSZ) on the fd, with
|
|
469
|
-
* Node's non-TTY answer intact: the read is `number | undefined` and a
|
|
470
|
-
* non-TTY (or ioctl-refusing) stream yields the undefined arm. The
|
|
471
|
-
* receiver match sees through parens and as-casts to the SYMBOL —
|
|
472
|
-
* `(process.stderr as typeof process.stderr & { columns?: number })
|
|
473
|
-
* .columns` is the wild widening pattern (@types/node declares a plain
|
|
474
|
-
* `number`, so honest code casts the undefined possibility back in), and
|
|
475
|
-
* the cast changes the expression's TYPE, never the value. columns sites
|
|
476
|
-
* whose checker type does NOT admit undefined are fenced with that exact
|
|
477
|
-
* fix instead of lowering to a lie. Null for anything else, so the
|
|
478
|
-
* property chain keeps trying. */
|
|
479
|
-
export declare function lowerProcessStreamProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
480
|
-
/** `process.argv` / `process.platform` / `process.pid` property READS
|
|
481
|
-
* lower to zero-arg libCalls (argv returns +1 on one interned array —
|
|
482
|
-
* identity and mutation semantics match Node's stable process.argv).
|
|
483
|
-
* `process.env` as a WHOLE value lowers to a fresh SNAPSHOT record —
|
|
484
|
-
* `{ [k: string]: string | undefined }` built over environ by the
|
|
485
|
-
* interned %env.snapshot helper: `{ ...process.env }`, Object.keys, and
|
|
486
|
-
* spawn-env flows all snapshot at the read, exactly what Node's own
|
|
487
|
-
* spread does (and nothing in a compiled program mutates environ between
|
|
488
|
-
* a snapshot and its use except process.env writes, which precede the
|
|
489
|
-
* read in source order). Method members referenced without a call are
|
|
490
|
-
* rejected specifically. Null for non-process receivers (the chain keeps
|
|
491
|
-
* trying other property lowerings). */
|
|
492
|
-
export declare function lowerProcessProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
493
|
-
/** True iff `node` is THE ambient `process.env` object itself (the
|
|
494
|
-
* receiver of an env read). */
|
|
495
|
-
export declare function isProcessEnv(lowerer: Lowerer, node: ts.Expression): boolean;
|
|
496
|
-
/** The interned `string | undefined` union — the type every env read
|
|
497
|
-
* produces (withUndefinedArm interns [string, undefined] in canonical
|
|
498
|
-
* order, so the string arm's tag is 0 and the undefined arm's is 1,
|
|
499
|
-
* program-wide). */
|
|
500
|
-
export declare function envValueType(lowerer: Lowerer): IrType;
|
|
501
|
-
/** `d.isFile()` / `d.isDirectory()` / `d.isSymbolicLink()` on a Dirent-
|
|
502
|
-
* typed receiver (the interned record — provenance via the checker's
|
|
503
|
-
* Dirent symbol, the StringDecoder pattern): a read of the hidden
|
|
504
|
-
* %dtype field compared against libuv's UV_DIRENT code. Node's other
|
|
505
|
-
* type probes (isBlockDevice, ...) fence with the supported list. */
|
|
506
|
-
export declare function lowerDirentMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
507
|
-
/** `process.env.NAME` → the process.envGet intrinsic with a literal key
|
|
508
|
-
* (the element form lands in lowerElementAccess). getenv(3) at runtime:
|
|
509
|
-
* present wraps the string arm, absent yields the interned
|
|
510
|
-
* undefined-arm instance. Null for non-env receivers. */
|
|
511
|
-
export declare function lowerProcessEnvGet(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
512
|
-
/** `process.exit(code)` / `process.cwd()` → libCall. The fallback
|
|
513
|
-
* declaration makes exit's code required; @types/node declares it
|
|
514
|
-
* optional. A bare `process.exit()` uses the current exitCode, or zero
|
|
515
|
-
* when unset. */
|
|
516
|
-
export declare function lowerProcessMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
517
|
-
/** Method calls on THE `Number` global: the predicate statics lower to
|
|
518
|
-
* plain C over f64 arguments; `Number.parseFloat`/`Number.parseInt` ARE
|
|
519
|
-
* the global parsers (the spec aliases them), so they get the same
|
|
520
|
-
* island lowering — engine execution under --dynamic, per-site SC2012
|
|
521
|
-
* without it (parseInt takes an explicit radix, like the global). Null
|
|
522
|
-
* for non-Number receivers. */
|
|
523
|
-
export declare function lowerNumberStaticCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
524
|
-
/** The Date slice: statics plus read-only Date values backed by one
|
|
525
|
-
* TimeClip'd millisecond scalar. Construction lives in lowerNew;
|
|
526
|
-
* identity and mutating methods remain fenced. */
|
|
527
|
-
export declare function lowerDateCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
528
|
-
type TextCodecCtor = {
|
|
529
|
-
cls: "TextDecoder" | "TextEncoder";
|
|
530
|
-
ctor: ts.NewExpression;
|
|
531
|
-
};
|
|
532
|
-
/** Box a codec's immutable encoding in an owned record. Unlike erased
|
|
533
|
-
* aliases, this value can live in fields, arguments, and closure captures. */
|
|
534
|
-
export declare function lowerTextCodecNew(lowerer: Lowerer, ctor: ts.NewExpression, cls: TextCodecCtor["cls"]): IrExpr;
|
|
535
|
-
/** Inline codec calls avoid allocating a receiver; stored receivers use
|
|
536
|
-
* the owned record path above. decode is the runtime's WHATWG
|
|
537
|
-
* decode for every recognized static label (with BOM handling for the
|
|
538
|
-
* Unicode encodings); a zero-argument decode() is "" like the spec's.
|
|
539
|
-
* encode IS Buffer.from(s, "utf8") — ScrStr
|
|
540
|
-
* storage is well-formed UTF-8, so the bytes are identical (lone
|
|
541
|
-
* surrogates became U+FFFD at string construction, exactly what the
|
|
542
|
-
* spec's encoder emits). Null when this is neither supported form. */
|
|
543
|
-
export declare function lowerTextCodecCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
544
|
-
/** `String.fromCharCode/fromCodePoint(...codes)` on THE String global: every argument
|
|
545
|
-
* lowers as a number and packs into ONE f64[] array-literal argument
|
|
546
|
-
* (the path.join convention) — or ONE whole-array spread forwards the
|
|
547
|
-
* array itself. String.raw has its own template path below.
|
|
548
|
-
* Null for non-String receivers. */
|
|
549
|
-
export declare function lowerStringStaticCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
550
|
-
/** `s.lastIndexOf(searchValue?, position?)` on string receivers, using UTF-16
|
|
551
|
-
* indices. An omitted search value searches for "undefined". Omitted or undefined positions clamp to the string's end;
|
|
552
|
-
* MAX_SAFE_INTEGER has the same effect for every representable string.
|
|
553
|
-
* Null for non-string receivers and other members. */
|
|
554
|
-
export declare function lowerStringLastIndexOfCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
555
|
-
/** `Promise.race([...])` on THE Promise global: the entries lower
|
|
556
|
-
* individually (the array never materializes — promise-element arrays
|
|
557
|
-
* have no representation) into a promise.race intrinsic; the result
|
|
558
|
-
* type is the checker's combined promise, and each entry's inner type
|
|
559
|
-
* must be that inner type, one of its union arms, or a sub-union of it
|
|
560
|
-
* (the backend's interned adapters wrap/re-tag fulfillments; a wider
|
|
561
|
-
* entry would need machinery that doesn't exist and fences).
|
|
562
|
-
* Promise.all/allSettled/any fence with the sequential-await hint;
|
|
563
|
-
* resolve/reject and the rest fall to the member fence. Null for
|
|
564
|
-
* non-Promise receivers. */
|
|
565
|
-
export declare function lowerPromiseStaticCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
566
|
-
/** Property READS on THE `Number` global: the finite constants bake as
|
|
567
|
-
* number literals. NaN/POSITIVE_INFINITY/NEGATIVE_INFINITY and method
|
|
568
|
-
* members as values fall through to the member fence. Null for
|
|
569
|
-
* non-Number receivers. */
|
|
570
|
-
export declare function lowerNumberStaticProperty(lowerer: Lowerer, expr: ts.PropertyAccessExpression): IrExpr | null;
|
|
571
|
-
/** `t.unref()` / `t.ref()` / `t.hasRef()` on a Timeout handle — loop-
|
|
572
|
-
* liveness bookkeeping over the numeric timer id (the handle is f64).
|
|
573
|
-
* unref/ref return the handle for chaining (Node); hasRef returns a
|
|
574
|
-
* bool. `refresh` and the rest of @types/node's Timeout surface fence.
|
|
575
|
-
* Null when the receiver isn't a Timeout handle. */
|
|
576
|
-
export declare function lowerTimeoutMethodCall(lowerer: Lowerer, call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
577
|
-
/** `process.getuid?.()` — the optional call of an optional process
|
|
578
|
-
* method. On a POSIX target the member always exists, so the `?.` IS the
|
|
579
|
-
* call (the checker's undefined arm covers Windows, which scriptc does
|
|
580
|
-
* not target) and the honest result is the plain number. Intercepted
|
|
581
|
-
* BEFORE the optional-chain machinery: `process.getuid` has no value
|
|
582
|
-
* lowering for the chain to guard. Null when this isn't that shape. */
|
|
583
|
-
export declare function lowerProcessOptionalMethodCall(lowerer: Lowerer, expr: ts.CallExpression): IrExpr | null;
|
|
584
|
-
/** The interned `%env.snapshot` helper behind `process.env` as a VALUE: a
|
|
585
|
-
* fresh `{ [k: string]: string | undefined }` record built over environ —
|
|
586
|
-
* envPairs hands the [k0, v0, k1, v1, ...] strings in environ order and
|
|
587
|
-
* the helper keyed-writes each pair into the record's overflow map (JS
|
|
588
|
-
* own-key order follows insertion, exactly Node's Object.keys order over
|
|
589
|
-
* process.env). The target shape must be a pure index-signature record
|
|
590
|
-
* whose value slot is the `string | undefined` union (what ProcessEnv
|
|
591
|
-
* maps to); anything else answers null and the caller keeps its fence. */
|
|
592
|
-
export declare function envSnapshotHelper(lowerer: Lowerer, shapeId: string, loc: SrcLoc): string | null;
|
|
593
|
-
export declare function isConsoleLog(lowerer: Lowerer, call: ts.CallExpression): boolean;
|
|
594
|
-
/** The console member of a `console.<member>(...)` call, for the lowered
|
|
595
|
-
* set: "log"/"info"/"debug" (stdout — Node's info and debug ARE log
|
|
596
|
-
* under other names), and "error"/"warn" (both stderr — Node's warn IS
|
|
597
|
-
* error under another name; the output is identical). Provenance-checked
|
|
598
|
-
* like every stdlib global. Null for anything else (console.table, a
|
|
599
|
-
* user's own console binding, ...). */
|
|
600
|
-
export declare function consoleCallMember(lowerer: Lowerer, call: ts.CallExpression): "log" | "info" | "debug" | "error" | "warn" | null;
|
|
601
|
-
export {};
|