@scriptc/compiler 0.4.2 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ambient/scriptc-node-fallback.d.ts +470 -66
- package/dist/backend/cycle-analysis.d.ts +4 -1
- package/dist/backend/cycle-analysis.js +6 -4
- package/dist/backend/cycle-analysis.js.map +1 -1
- package/dist/backend/cycle-analysis.test.js +55 -0
- package/dist/backend/cycle-analysis.test.js.map +1 -1
- package/dist/backend/cycle-mutability.d.ts +7 -0
- package/dist/backend/cycle-mutability.js +19 -1
- package/dist/backend/cycle-mutability.js.map +1 -1
- package/dist/backend/executable-features.js +2 -0
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/immutability.d.ts +6 -3
- package/dist/backend/immutability.js +33 -29
- package/dist/backend/immutability.js.map +1 -1
- package/dist/backend/library-pack.js +1 -0
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/llvm/alloc.d.ts +16 -1
- package/dist/backend/llvm/alloc.js +54 -4
- package/dist/backend/llvm/alloc.js.map +1 -1
- package/dist/backend/llvm/appended-array-literals.d.ts +2 -1
- package/dist/backend/llvm/appended-array-literals.js +44 -36
- package/dist/backend/llvm/appended-array-literals.js.map +1 -1
- package/dist/backend/llvm/appended-array-literals.test.js +4 -3
- package/dist/backend/llvm/appended-array-literals.test.js.map +1 -1
- package/dist/backend/llvm/array-search.d.ts +4 -3
- package/dist/backend/llvm/array-search.js +21 -9
- package/dist/backend/llvm/array-search.js.map +1 -1
- package/dist/backend/llvm/blocks.d.ts +1 -1
- package/dist/backend/llvm/blocks.js +2 -2
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/byte-windows.js +2 -0
- package/dist/backend/llvm/byte-windows.js.map +1 -1
- package/dist/backend/llvm/bytes-alias.d.ts +6 -1
- package/dist/backend/llvm/bytes-alias.js +8 -2
- package/dist/backend/llvm/bytes-alias.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.d.ts +47 -5
- package/dist/backend/llvm/bytes-loop-versions.js +479 -32
- package/dist/backend/llvm/bytes-loop-versions.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.test.js +263 -2
- package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -1
- package/dist/backend/llvm/checked-value-lifetimes.js +2 -0
- package/dist/backend/llvm/checked-value-lifetimes.js.map +1 -1
- package/dist/backend/llvm/classes.d.ts +7 -5
- package/dist/backend/llvm/classes.js +44 -20
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/classes.test.js +167 -7
- package/dist/backend/llvm/classes.test.js.map +1 -1
- package/dist/backend/llvm/common.d.ts +9 -3
- package/dist/backend/llvm/common.js +9 -3
- package/dist/backend/llvm/common.js.map +1 -1
- package/dist/backend/llvm/constant-callbacks.d.ts +2 -1
- package/dist/backend/llvm/constant-callbacks.js +83 -52
- package/dist/backend/llvm/constant-callbacks.js.map +1 -1
- package/dist/backend/llvm/counted-loops.d.ts +7 -0
- package/dist/backend/llvm/counted-loops.js +18 -0
- package/dist/backend/llvm/counted-loops.js.map +1 -1
- package/dist/backend/llvm/debug-info.js +2 -5
- package/dist/backend/llvm/debug-info.js.map +1 -1
- package/dist/backend/llvm/dense-array-access.d.ts +39 -8
- package/dist/backend/llvm/dense-array-access.js +222 -52
- package/dist/backend/llvm/dense-array-access.js.map +1 -1
- package/dist/backend/llvm/dense-array-access.test.js +36 -0
- package/dist/backend/llvm/dense-array-access.test.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.d.ts +17 -1
- package/dist/backend/llvm/dense-array-loops.js +194 -5
- package/dist/backend/llvm/dense-array-loops.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.test.js +90 -1
- package/dist/backend/llvm/dense-array-loops.test.js.map +1 -1
- package/dist/backend/llvm/dyn-handle-tags.test.js +6 -1
- package/dist/backend/llvm/dyn-handle-tags.test.js.map +1 -1
- package/dist/backend/llvm/dyn.d.ts +30 -0
- package/dist/backend/llvm/dyn.js +373 -70
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emit-function.js +13 -28
- package/dist/backend/llvm/emit-function.js.map +1 -1
- package/dist/backend/llvm/emit-journal.d.ts +93 -0
- package/dist/backend/llvm/emit-journal.js +170 -0
- package/dist/backend/llvm/emit-journal.js.map +1 -0
- package/dist/backend/llvm/emit-module.js +211 -33
- package/dist/backend/llvm/emit-module.js.map +1 -1
- package/dist/backend/llvm/emit-statements.d.ts +0 -4
- package/dist/backend/llvm/emit-statements.js +268 -84
- package/dist/backend/llvm/emit-statements.js.map +1 -1
- package/dist/backend/llvm/emitter-state.d.ts +7 -0
- package/dist/backend/llvm/emitter-state.js +14 -0
- package/dist/backend/llvm/emitter-state.js.map +1 -0
- package/dist/backend/llvm/emitter.d.ts +186 -37
- package/dist/backend/llvm/emitter.js +733 -90
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/emitter.test.js +65 -7
- package/dist/backend/llvm/emitter.test.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +11 -13
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.js +48 -20
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-callbacks.js +47 -0
- package/dist/backend/llvm/expr-callbacks.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js +28 -14
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.d.ts +14 -2
- package/dist/backend/llvm/expr-containers.js +143 -37
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +14 -0
- package/dist/backend/llvm/expr-dynamic.js +18 -11
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +119 -38
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.test.js +11 -6
- package/dist/backend/llvm/expr-primitives.test.js.map +1 -1
- package/dist/backend/llvm/expr-records.d.ts +12 -0
- package/dist/backend/llvm/expr-records.js +106 -0
- package/dist/backend/llvm/expr-records.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.d.ts +2 -2
- package/dist/backend/llvm/expr-stream-bridges.js +210 -69
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.test.js +1 -1
- package/dist/backend/llvm/expr-stream-bridges.test.js.map +1 -1
- package/dist/backend/llvm/expr-stream-callbacks.d.ts +2 -2
- package/dist/backend/llvm/expr-stream-callbacks.js +74 -20
- package/dist/backend/llvm/expr-stream-callbacks.js.map +1 -1
- package/dist/backend/llvm/int32-kind-loops.d.ts +39 -0
- package/dist/backend/llvm/int32-kind-loops.js +106 -0
- package/dist/backend/llvm/int32-kind-loops.js.map +1 -0
- package/dist/backend/llvm/integer-or-nan-indexes.test.d.ts +1 -0
- package/dist/backend/llvm/integer-or-nan-indexes.test.js +118 -0
- package/dist/backend/llvm/integer-or-nan-indexes.test.js.map +1 -0
- package/dist/backend/llvm/integer-values.d.ts +25 -1
- package/dist/backend/llvm/integer-values.js +95 -0
- package/dist/backend/llvm/integer-values.js.map +1 -1
- package/dist/backend/llvm/js-ic.d.ts +1 -1
- package/dist/backend/llvm/js-ic.js +1 -1
- package/dist/backend/llvm/js-ic.js.map +1 -1
- package/dist/backend/llvm/key-orders.d.ts +7 -0
- package/dist/backend/llvm/key-orders.js +33 -0
- package/dist/backend/llvm/key-orders.js.map +1 -0
- package/dist/backend/llvm/lib-connect.js +4 -0
- package/dist/backend/llvm/lib-connect.js.map +1 -1
- package/dist/backend/llvm/lib-datagram.js +11 -0
- package/dist/backend/llvm/lib-datagram.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +213 -5
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-filesystem.js +4 -4
- package/dist/backend/llvm/lib-filesystem.js.map +1 -1
- package/dist/backend/llvm/lib-http2.js +4 -0
- package/dist/backend/llvm/lib-http2.js.map +1 -1
- package/dist/backend/llvm/lib-lookup.js +16 -6
- package/dist/backend/llvm/lib-lookup.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +37 -1
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +94 -2
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-stream.js +35 -5
- package/dist/backend/llvm/lib-stream.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.js +115 -19
- package/dist/backend/llvm/local-array-reads.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.test.js +14 -0
- package/dist/backend/llvm/local-array-reads.test.js.map +1 -1
- package/dist/backend/llvm/loop-state.d.ts +33 -0
- package/dist/backend/llvm/loop-state.js +42 -0
- package/dist/backend/llvm/loop-state.js.map +1 -0
- package/dist/backend/llvm/map-number-lookup.d.ts +26 -8
- package/dist/backend/llvm/map-number-lookup.js +91 -31
- package/dist/backend/llvm/map-number-lookup.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.test.js +55 -0
- package/dist/backend/llvm/map-number-lookup.test.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.js +4 -2
- package/dist/backend/llvm/map-read-lifetimes.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.d.ts +2 -1
- package/dist/backend/llvm/nullable-unions.js +15 -3
- package/dist/backend/llvm/nullable-unions.js.map +1 -1
- package/dist/backend/llvm/publish.d.ts +10 -0
- package/dist/backend/llvm/publish.js +15 -3
- package/dist/backend/llvm/publish.js.map +1 -1
- package/dist/backend/llvm/receivers.js +6 -1
- package/dist/backend/llvm/receivers.js.map +1 -1
- package/dist/backend/llvm/record-results.d.ts +1 -9
- package/dist/backend/llvm/record-results.js +2 -11
- package/dist/backend/llvm/record-results.js.map +1 -1
- package/dist/backend/llvm/reference-effects.js +3 -0
- package/dist/backend/llvm/reference-effects.js.map +1 -1
- package/dist/backend/llvm/reference-writes.d.ts +7 -2
- package/dist/backend/llvm/reference-writes.js +89 -72
- package/dist/backend/llvm/reference-writes.js.map +1 -1
- package/dist/backend/llvm/running-extrema.d.ts +11 -0
- package/dist/backend/llvm/running-extrema.js +115 -0
- package/dist/backend/llvm/running-extrema.js.map +1 -0
- package/dist/backend/llvm/running-extrema.test.d.ts +1 -0
- package/dist/backend/llvm/running-extrema.test.js +89 -0
- package/dist/backend/llvm/running-extrema.test.js.map +1 -0
- package/dist/backend/llvm/shapes.d.ts +71 -15
- package/dist/backend/llvm/shapes.js +224 -40
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +53 -7
- package/dist/backend/llvm/shapes.test.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.d.ts +6 -0
- package/dist/backend/llvm/speculative-integers.js +2 -2
- package/dist/backend/llvm/speculative-integers.js.map +1 -1
- package/dist/backend/llvm/stack-captures.js +1 -5
- package/dist/backend/llvm/stack-captures.js.map +1 -1
- package/dist/backend/llvm/stack-objects.d.ts +3 -2
- package/dist/backend/llvm/stack-objects.js +5 -2
- package/dist/backend/llvm/stack-objects.js.map +1 -1
- package/dist/backend/llvm/string-reads.d.ts +12 -0
- package/dist/backend/llvm/string-reads.js +44 -0
- package/dist/backend/llvm/string-reads.js.map +1 -1
- package/dist/backend/llvm/union-repr.d.ts +4 -3
- package/dist/backend/llvm/union-repr.js +6 -5
- package/dist/backend/llvm/union-repr.js.map +1 -1
- package/dist/backend/llvm/walk-borrows.d.ts +3 -0
- package/dist/backend/llvm/walk-borrows.js +46 -41
- package/dist/backend/llvm/walk-borrows.js.map +1 -1
- package/dist/backend/llvm/walkers.d.ts +3 -0
- package/dist/backend/llvm/walkers.js +101 -65
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/llvm/wrapping-sums.d.ts +16 -1
- package/dist/backend/llvm/wrapping-sums.js +126 -0
- package/dist/backend/llvm/wrapping-sums.js.map +1 -1
- package/dist/backend/may-throw.d.ts +8 -10
- package/dist/backend/may-throw.js +14 -10
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/native/contracts.d.ts +5 -0
- package/dist/backend/native/executable.js +7 -0
- package/dist/backend/native/executable.js.map +1 -1
- package/dist/backend/native/runtime-inputs.d.ts +1 -1
- package/dist/backend/native/runtime-inputs.js +1 -0
- package/dist/backend/native/runtime-inputs.js.map +1 -1
- package/dist/backend/native-codegen-core.d.ts +5 -3
- package/dist/backend/native-codegen-core.js +13 -6
- package/dist/backend/native-codegen-core.js.map +1 -1
- package/dist/backend/native-codegen.test.js +6 -4
- package/dist/backend/native-codegen.test.js.map +1 -1
- package/dist/backend/native-link-info-core.d.ts +4 -0
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/publication.d.ts +12 -1
- package/dist/backend/publication.js +37 -14
- package/dist/backend/publication.js.map +1 -1
- package/dist/backend/publication.test.js +30 -0
- package/dist/backend/publication.test.js.map +1 -1
- package/dist/backend/result-slots.d.ts +16 -0
- package/dist/backend/result-slots.js +23 -0
- package/dist/backend/result-slots.js.map +1 -0
- package/dist/backend/runtime-abi.d.ts +2 -2
- package/dist/backend/runtime-abi.js +2 -2
- package/dist/backend/runtime-pack-core.d.ts +1 -0
- package/dist/backend/runtime-pack-core.js +1 -0
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +2 -1
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +2 -1
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/stack-observations.d.ts +2 -1
- package/dist/backend/stack-observations.js +67 -42
- package/dist/backend/stack-observations.js.map +1 -1
- package/dist/backend/target-cpu.d.ts +26 -0
- package/dist/backend/target-cpu.js +98 -0
- package/dist/backend/target-cpu.js.map +1 -0
- package/dist/backend/target-cpu.test.d.ts +1 -0
- package/dist/backend/target-cpu.test.js +38 -0
- package/dist/backend/target-cpu.test.js.map +1 -0
- package/dist/backend/target-diagnostics.js +5 -3
- package/dist/backend/target-diagnostics.js.map +1 -1
- package/dist/backend/warm-cache.js +1 -0
- package/dist/backend/warm-cache.js.map +1 -1
- package/dist/cli/command.js +20 -1
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/usage.d.ts +4 -1
- package/dist/cli/usage.js +10 -3
- package/dist/cli/usage.js.map +1 -1
- package/dist/compat/fetch-profile.js +1 -1
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/compile-types.d.ts +7 -0
- package/dist/contracts/check.js +4 -3
- package/dist/contracts/check.js.map +1 -1
- package/dist/contracts/int32-elements.js +10 -2
- package/dist/contracts/int32-elements.js.map +1 -1
- package/dist/coverage/report.js +12 -3
- package/dist/coverage/report.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +4 -0
- package/dist/diagnostics/diagnostic.js +1 -1
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/envelope.d.ts +3 -0
- package/dist/diagnostics/envelope.js +1 -0
- package/dist/diagnostics/envelope.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +5 -0
- package/dist/executable/executable-cache.js +5 -0
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +3 -0
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/frontend/decl-projection.d.ts +41 -0
- package/dist/frontend/decl-projection.js +949 -0
- package/dist/frontend/decl-projection.js.map +1 -0
- package/dist/frontend/decl-projection.test.d.ts +1 -0
- package/dist/frontend/decl-projection.test.js +30 -0
- package/dist/frontend/decl-projection.test.js.map +1 -0
- package/dist/frontend/dts-paths.d.ts +15 -0
- package/dist/frontend/dts-paths.js +25 -0
- package/dist/frontend/dts-paths.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +6 -0
- package/dist/frontend/input-tracker.js +51 -28
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +19 -0
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lowering/array-values.js +100 -2
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/builtins/async-context.d.ts +8 -2
- package/dist/frontend/lowering/builtins/async-context.js +62 -3
- package/dist/frontend/lowering/builtins/async-context.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process-methods.js +46 -15
- package/dist/frontend/lowering/builtins/child-process-methods.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process.js +13 -2
- package/dist/frontend/lowering/builtins/child-process.js.map +1 -1
- package/dist/frontend/lowering/builtins/crypto.js +87 -10
- package/dist/frontend/lowering/builtins/crypto.js.map +1 -1
- package/dist/frontend/lowering/builtins/dates.js +4 -1
- package/dist/frontend/lowering/builtins/dates.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js +3 -3
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-glob.js +6 -3
- package/dist/frontend/lowering/builtins/fs-glob.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-paths.d.ts +43 -5
- package/dist/frontend/lowering/builtins/fs-paths.js +245 -93
- package/dist/frontend/lowering/builtins/fs-paths.js.map +1 -1
- package/dist/frontend/lowering/builtins/global-namespace-keys.d.ts +3 -0
- package/dist/frontend/lowering/builtins/global-namespace-keys.js +122 -0
- package/dist/frontend/lowering/builtins/global-namespace-keys.js.map +1 -0
- package/dist/frontend/lowering/builtins/module-calls.js +6 -3
- package/dist/frontend/lowering/builtins/module-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/numbers.js +9 -1
- package/dist/frontend/lowering/builtins/numbers.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.d.ts +7 -1
- package/dist/frontend/lowering/builtins/promises.js +236 -139
- package/dist/frontend/lowering/builtins/promises.js.map +1 -1
- package/dist/frontend/lowering/builtins/readline.d.ts +5 -1
- package/dist/frontend/lowering/builtins/readline.js +35 -3
- package/dist/frontend/lowering/builtins/readline.js.map +1 -1
- package/dist/frontend/lowering/builtins/url.js +24 -1
- package/dist/frontend/lowering/builtins/url.js.map +1 -1
- package/dist/frontend/lowering/builtins/webassembly.js +6 -3
- package/dist/frontend/lowering/builtins/webassembly.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.js +0 -1
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/cjs-exports-object.js +1 -1
- package/dist/frontend/lowering/cjs-exports-object.js.map +1 -1
- package/dist/frontend/lowering/cjs-inline-require.d.ts +32 -0
- package/dist/frontend/lowering/cjs-inline-require.js +307 -4
- package/dist/frontend/lowering/cjs-inline-require.js.map +1 -1
- package/dist/frontend/lowering/class-callbacks.d.ts +5 -2
- package/dist/frontend/lowering/class-callbacks.js +82 -12
- package/dist/frontend/lowering/class-callbacks.js.map +1 -1
- package/dist/frontend/lowering/class-construction.d.ts +4 -1
- package/dist/frontend/lowering/class-construction.js +17 -3
- package/dist/frontend/lowering/class-construction.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +49 -2
- package/dist/frontend/lowering/class-dynamic-dispatch.js +880 -108
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js +47 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js.map +1 -1
- package/dist/frontend/lowering/class-iterables.d.ts +2 -1
- package/dist/frontend/lowering/class-iterables.js +9 -1
- package/dist/frontend/lowering/class-iterables.js.map +1 -1
- package/dist/frontend/lowering/class-method-mutations.js +83 -24
- package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
- package/dist/frontend/lowering/class-protocols.d.ts +25 -0
- package/dist/frontend/lowering/class-protocols.js +183 -1
- package/dist/frontend/lowering/class-protocols.js.map +1 -1
- package/dist/frontend/lowering/class-prototypes.js +31 -2
- package/dist/frontend/lowering/class-prototypes.js.map +1 -1
- package/dist/frontend/lowering/class-runtime-statics.d.ts +9 -3
- package/dist/frontend/lowering/class-runtime-statics.js +29 -4
- package/dist/frontend/lowering/class-runtime-statics.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural-plans.js +48 -1
- package/dist/frontend/lowering/coercions/structural-plans.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural.js +91 -1
- package/dist/frontend/lowering/coercions/structural.js.map +1 -1
- package/dist/frontend/lowering/completion-callbacks.d.ts +4 -0
- package/dist/frontend/lowering/completion-callbacks.js +146 -0
- package/dist/frontend/lowering/completion-callbacks.js.map +1 -0
- package/dist/frontend/lowering/containers/array-callback-call.js +2 -2
- package/dist/frontend/lowering/containers/array-callback-call.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.d.ts +5 -4
- package/dist/frontend/lowering/containers/array-callbacks.js +345 -24
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-concat.js +10 -0
- package/dist/frontend/lowering/containers/array-concat.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.js +5 -0
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +26 -3
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/array-pipelines.js +19 -8
- package/dist/frontend/lowering/containers/array-pipelines.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +25 -17
- package/dist/frontend/lowering/containers/bytes.js +455 -46
- package/dist/frontend/lowering/containers/bytes.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.js +3 -0
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-methods.js +7 -2
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/filter-predicates.d.ts +6 -0
- package/dist/frontend/lowering/containers/filter-predicates.js +205 -0
- package/dist/frontend/lowering/containers/filter-predicates.js.map +1 -0
- package/dist/frontend/lowering/containers/indexed-objects.d.ts +0 -12
- package/dist/frontend/lowering/containers/indexed-objects.js +46 -7
- package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -1
- package/dist/frontend/lowering/containers/string-and-regexp.js +55 -9
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/containers/string-replacement.js +43 -19
- package/dist/frontend/lowering/containers/string-replacement.js.map +1 -1
- package/dist/frontend/lowering/date-values.d.ts +11 -0
- package/dist/frontend/lowering/date-values.js +207 -0
- package/dist/frontend/lowering/date-values.js.map +1 -0
- package/dist/frontend/lowering/dispatch-sites.js +15 -1
- package/dist/frontend/lowering/dispatch-sites.js.map +1 -1
- package/dist/frontend/lowering/divergences.js +9 -1
- package/dist/frontend/lowering/divergences.js.map +1 -1
- package/dist/frontend/lowering/error-methods.js +47 -2
- package/dist/frontend/lowering/error-methods.js.map +1 -1
- package/dist/frontend/lowering/expressions/array-literals.js +53 -0
- package/dist/frontend/lowering/expressions/array-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/binary.js +100 -28
- package/dist/frontend/lowering/expressions/binary.js.map +1 -1
- package/dist/frontend/lowering/expressions/element-access.js +169 -13
- package/dist/frontend/lowering/expressions/element-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/identifiers.js +64 -5
- package/dist/frontend/lowering/expressions/identifiers.js.map +1 -1
- package/dist/frontend/lowering/expressions/narrowing.js +95 -1
- package/dist/frontend/lowering/expressions/narrowing.js.map +1 -1
- package/dist/frontend/lowering/expressions/nullish-assignment.js +3 -1
- package/dist/frontend/lowering/expressions/nullish-assignment.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.d.ts +10 -0
- package/dist/frontend/lowering/expressions/object-literals.js +138 -51
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/optional-chains.js +12 -0
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -1
- package/dist/frontend/lowering/expressions/property-access.js +168 -10
- package/dist/frontend/lowering/expressions/property-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/relational.js +212 -33
- package/dist/frontend/lowering/expressions/relational.js.map +1 -1
- package/dist/frontend/lowering/expressions/typeof.js +6 -0
- package/dist/frontend/lowering/expressions/typeof.js.map +1 -1
- package/dist/frontend/lowering/expressions/union-fields.js +4 -0
- package/dist/frontend/lowering/expressions/union-fields.js.map +1 -1
- package/dist/frontend/lowering/expressions/updates.js +39 -3
- package/dist/frontend/lowering/expressions/updates.js.map +1 -1
- package/dist/frontend/lowering/frozen-records.d.ts +28 -0
- package/dist/frontend/lowering/frozen-records.js +322 -0
- package/dist/frontend/lowering/frozen-records.js.map +1 -0
- package/dist/frontend/lowering/function-returns.js +64 -0
- package/dist/frontend/lowering/function-returns.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.js +7 -2
- package/dist/frontend/lowering/generic-functions.js.map +1 -1
- package/dist/frontend/lowering/indexed-unions.d.ts +54 -0
- package/dist/frontend/lowering/indexed-unions.js +401 -0
- package/dist/frontend/lowering/indexed-unions.js.map +1 -0
- package/dist/frontend/lowering/iterable-values.d.ts +49 -0
- package/dist/frontend/lowering/iterable-values.js +297 -0
- package/dist/frontend/lowering/iterable-values.js.map +1 -0
- package/dist/frontend/lowering/iterator-adapters.js +186 -1
- package/dist/frontend/lowering/iterator-adapters.js.map +1 -1
- package/dist/frontend/lowering/js-class-fields.d.ts +8 -0
- package/dist/frontend/lowering/js-class-fields.js +45 -10
- package/dist/frontend/lowering/js-class-fields.js.map +1 -1
- package/dist/frontend/lowering/key-order-witness.d.ts +18 -3
- package/dist/frontend/lowering/key-order-witness.js +974 -48
- package/dist/frontend/lowering/key-order-witness.js.map +1 -1
- package/dist/frontend/lowering/key-order-witness.test.js +530 -10
- package/dist/frontend/lowering/key-order-witness.test.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +15 -3
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-async-iteration.js +4 -1
- package/dist/frontend/lowering/lower-async-iteration.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +7 -0
- package/dist/frontend/lowering/lower-calls.js +462 -44
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +11 -2
- package/dist/frontend/lowering/lower-classes.js +324 -69
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-dgram.js +3 -1
- package/dist/frontend/lowering/lower-dgram.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.js +215 -3
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.d.ts +11 -0
- package/dist/frontend/lowering/lower-functions.js +83 -0
- package/dist/frontend/lowering/lower-functions.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.js +42 -32
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-global-value.js +6 -3
- package/dist/frontend/lowering/lower-global-value.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.d.ts +1 -1
- package/dist/frontend/lowering/lower-inspect.js +53 -17
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +53 -5
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.js +5 -1
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +2 -2
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stdlib.d.ts +5 -0
- package/dist/frontend/lowering/lower-stdlib.js +30 -0
- package/dist/frontend/lowering/lower-stdlib.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +23 -0
- package/dist/frontend/lowering/lower-stmts.js +553 -81
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.d.ts +20 -2
- package/dist/frontend/lowering/lower-stream.js +1483 -156
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +107 -8
- package/dist/frontend/lowering/lowerer.js +381 -36
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/module-namespace-elements.d.ts +11 -1
- package/dist/frontend/lowering/module-namespace-elements.js +82 -5
- package/dist/frontend/lowering/module-namespace-elements.js.map +1 -1
- package/dist/frontend/lowering/new-target.d.ts +12 -0
- package/dist/frontend/lowering/new-target.js +280 -0
- package/dist/frontend/lowering/new-target.js.map +1 -0
- package/dist/frontend/lowering/object-factory-new.d.ts +5 -0
- package/dist/frontend/lowering/object-factory-new.js +20 -6
- package/dist/frontend/lowering/object-factory-new.js.map +1 -1
- package/dist/frontend/lowering/overload-choice.d.ts +33 -0
- package/dist/frontend/lowering/overload-choice.js +190 -0
- package/dist/frontend/lowering/overload-choice.js.map +1 -0
- package/dist/frontend/lowering/surfaces.d.ts +3 -0
- package/dist/frontend/lowering/surfaces.js +73 -8
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/lowering/undefined-index.d.ts +27 -0
- package/dist/frontend/lowering/undefined-index.js +82 -0
- package/dist/frontend/lowering/undefined-index.js.map +1 -0
- package/dist/frontend/lowering/var-hoisting.js +29 -13
- package/dist/frontend/lowering/var-hoisting.js.map +1 -1
- package/dist/frontend/lowering/width-lift.d.ts +18 -0
- package/dist/frontend/npm-static-bundled-chunks.js +9 -11
- package/dist/frontend/npm-static-bundled-chunks.js.map +1 -1
- package/dist/frontend/npm-static-bundled-chunks.test.js +6 -5
- package/dist/frontend/npm-static-bundled-chunks.test.js.map +1 -1
- package/dist/frontend/npm-static-rewrite-syntax.js +9 -1
- package/dist/frontend/npm-static-rewrite-syntax.js.map +1 -1
- package/dist/frontend/npm-static.js +4 -20
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/package-shims.d.ts +3 -0
- package/dist/frontend/package-shims.js +71 -8
- package/dist/frontend/package-shims.js.map +1 -1
- package/dist/frontend/pipeline.js +19 -11
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/process-fork.d.ts +25 -0
- package/dist/frontend/process-fork.js +2 -0
- package/dist/frontend/process-fork.js.map +1 -0
- package/dist/frontend/program-analysis.d.ts +5 -1
- package/dist/frontend/program-analysis.js +5 -0
- package/dist/frontend/program-analysis.js.map +1 -1
- package/dist/frontend/program.d.ts +21 -6
- package/dist/frontend/program.js +681 -83
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/program.test.js +43 -3
- package/dist/frontend/program.test.js.map +1 -1
- package/dist/frontend/token-equivalence.d.ts +3 -0
- package/dist/frontend/token-equivalence.js +409 -0
- package/dist/frontend/token-equivalence.js.map +1 -0
- package/dist/frontend/token-equivalence.test.d.ts +1 -0
- package/dist/frontend/token-equivalence.test.js +67 -0
- package/dist/frontend/token-equivalence.test.js.map +1 -0
- package/dist/frontend/ts7/ast-node.d.ts +22 -0
- package/dist/frontend/ts7/ast-node.js +1048 -103
- package/dist/frontend/ts7/ast-node.js.map +1 -1
- package/dist/frontend/ts7/ast-node.test.js +24 -0
- package/dist/frontend/ts7/ast-node.test.js.map +1 -1
- package/dist/frontend/ts7/ast-wire.d.ts +4 -3
- package/dist/frontend/ts7/ast-wire.js +34 -24
- package/dist/frontend/ts7/ast-wire.js.map +1 -1
- package/dist/frontend/ts7/ast-wire.test.js +23 -0
- package/dist/frontend/ts7/ast-wire.test.js.map +1 -1
- package/dist/frontend/ts7/checker-backend.d.ts +3 -4
- package/dist/frontend/ts7/checker-backend.js +2 -2
- package/dist/frontend/ts7/checker-backend.js.map +1 -1
- package/dist/frontend/ts7/checker-backend.test.js +5 -9
- package/dist/frontend/ts7/checker-backend.test.js.map +1 -1
- package/dist/frontend/ts7/checker.d.ts +4 -0
- package/dist/frontend/ts7/checker.js +7 -0
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/ts7/lib-diagnostics.d.ts +24 -0
- package/dist/frontend/ts7/lib-diagnostics.js +307 -0
- package/dist/frontend/ts7/lib-diagnostics.js.map +1 -0
- package/dist/frontend/ts7/lib-diagnostics.test.d.ts +1 -0
- package/dist/frontend/ts7/lib-diagnostics.test.js +199 -0
- package/dist/frontend/ts7/lib-diagnostics.test.js.map +1 -0
- package/dist/frontend/ts7/program-host.d.ts +7 -0
- package/dist/frontend/ts7/program-host.js +25 -2
- package/dist/frontend/ts7/program-host.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.d.ts +3 -0
- package/dist/frontend/ts7/semantic-model.js +5 -0
- package/dist/frontend/ts7/semantic-model.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.test.js +6 -1
- package/dist/frontend/ts7/semantic-model.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-types.d.ts +1 -1
- package/dist/frontend/ts7/semantic-types.js +1 -1
- package/dist/frontend/ts7/semantic-types.js.map +1 -1
- package/dist/frontend/ts7/session.d.ts +14 -1
- package/dist/frontend/ts7/session.js +22 -0
- package/dist/frontend/ts7/session.js.map +1 -1
- package/dist/frontend/type-mapper.d.ts +13 -1
- package/dist/frontend/type-mapper.js +229 -20
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.js +46 -4
- package/dist/index.js.map +1 -1
- package/dist/ir/analysis.js +5 -3
- package/dist/ir/analysis.js.map +1 -1
- package/dist/ir/array-length-stability.d.ts +4 -0
- package/dist/ir/array-length-stability.js +19 -6
- package/dist/ir/array-length-stability.js.map +1 -1
- package/dist/ir/array-length-stability.test.js +24 -0
- package/dist/ir/array-length-stability.test.js.map +1 -1
- package/dist/ir/builtin-effects.d.ts +7 -0
- package/dist/ir/builtin-effects.js +60 -0
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +6 -4
- package/dist/ir/builtin-signatures.js +222 -13
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/callback-specialization.d.ts +2 -1
- package/dist/ir/callback-specialization.js +23 -18
- package/dist/ir/callback-specialization.js.map +1 -1
- package/dist/ir/char-unit-locals.d.ts +19 -0
- package/dist/ir/char-unit-locals.js +185 -0
- package/dist/ir/char-unit-locals.js.map +1 -0
- package/dist/ir/char-unit-locals.test.d.ts +1 -0
- package/dist/ir/char-unit-locals.test.js +94 -0
- package/dist/ir/char-unit-locals.test.js.map +1 -0
- package/dist/ir/final-fields.d.ts +2 -1
- package/dist/ir/final-fields.js +14 -16
- package/dist/ir/final-fields.js.map +1 -1
- package/dist/ir/function-references.d.ts +2 -0
- package/dist/ir/function-references.js +2 -0
- package/dist/ir/function-references.js.map +1 -1
- package/dist/ir/function-references.test.js +3 -0
- package/dist/ir/function-references.test.js.map +1 -1
- package/dist/ir/initializer-bindings.d.ts +2 -1
- package/dist/ir/initializer-bindings.js +27 -20
- package/dist/ir/initializer-bindings.js.map +1 -1
- package/dist/ir/int32-arrays.d.ts +108 -0
- package/dist/ir/int32-arrays.js +831 -0
- package/dist/ir/int32-arrays.js.map +1 -0
- package/dist/ir/int32-slots.d.ts +24 -2
- package/dist/ir/int32-slots.js +266 -57
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/int32-slots.test.js +33 -0
- package/dist/ir/int32-slots.test.js.map +1 -1
- package/dist/ir/integer-loops.d.ts +3 -3
- package/dist/ir/integer-loops.js +28 -10
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/integer-loops.test.js +10 -0
- package/dist/ir/integer-loops.test.js.map +1 -1
- package/dist/ir/integer-ranges.d.ts +5 -0
- package/dist/ir/integer-ranges.js +125 -12
- package/dist/ir/integer-ranges.js.map +1 -1
- package/dist/ir/integer-ranges.test.js +30 -0
- package/dist/ir/integer-ranges.test.js.map +1 -1
- package/dist/ir/ir.d.ts +83 -10
- package/dist/ir/ir.js +77 -6
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/ir.test.js +23 -2
- package/dist/ir/ir.test.js.map +1 -1
- package/dist/ir/js-ic.d.ts +4 -0
- package/dist/ir/js-ic.js +17 -1
- package/dist/ir/js-ic.js.map +1 -1
- package/dist/ir/js-ic.test.js +46 -0
- package/dist/ir/js-ic.test.js.map +1 -1
- package/dist/ir/node-index.d.ts +57 -0
- package/dist/ir/node-index.js +215 -0
- package/dist/ir/node-index.js.map +1 -0
- package/dist/ir/paired-while-loops.d.ts +25 -0
- package/dist/ir/paired-while-loops.js +335 -0
- package/dist/ir/paired-while-loops.js.map +1 -0
- package/dist/ir/paired-while-loops.test.d.ts +1 -0
- package/dist/ir/paired-while-loops.test.js +163 -0
- package/dist/ir/paired-while-loops.test.js.map +1 -0
- package/dist/ir/parameter-versions.d.ts +25 -0
- package/dist/ir/parameter-versions.js +300 -0
- package/dist/ir/parameter-versions.js.map +1 -0
- package/dist/ir/runtime-features.d.ts +34 -13
- package/dist/ir/runtime-features.js +177 -39
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/serialize.d.ts +12 -2
- package/dist/ir/serialize.js +16 -3
- package/dist/ir/serialize.js.map +1 -1
- package/dist/ir/serialize.test.js +17 -0
- package/dist/ir/serialize.test.js.map +1 -1
- package/dist/ir/traverse.js +18 -6
- package/dist/ir/traverse.js.map +1 -1
- package/dist/ir/validate.js +167 -40
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/ir-policy.js +3 -0
- package/dist/library/ir-policy.js.map +1 -1
- package/dist/native/cache.d.ts +6 -1
- package/dist/native/cache.js +28 -5
- package/dist/native/cache.js.map +1 -1
- package/dist/native/cache.test.js +16 -2
- package/dist/native/cache.test.js.map +1 -1
- package/dist/native/cli.js +21 -1
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.js +8 -6
- package/dist/native/compiler.js.map +1 -1
- package/dist/native/executable-cache.d.ts +1 -1
- package/dist/native/executable-cache.js +2 -2
- package/dist/native/executable-cache.js.map +1 -1
- package/dist/native/prepare.d.ts +4 -2
- package/dist/native/prepare.js +130 -32
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/prepare.test.js +96 -20
- package/dist/native/prepare.test.js.map +1 -1
- package/dist/native/sanitizer.test.js +2 -0
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/native/text-file.d.ts +13 -3
- package/dist/native/text-file.js +63 -9
- package/dist/native/text-file.js.map +1 -1
- package/dist/native/text-file.test.d.ts +1 -0
- package/dist/native/text-file.test.js +49 -0
- package/dist/native/text-file.test.js.map +1 -0
- package/dist/native/toolchain.js +4 -4
- package/dist/native/toolchain.js.map +1 -1
- package/dist/native/toolchain.test.js +3 -3
- package/dist/native/toolchain.test.js.map +1 -1
- package/package.json +21 -21
- package/shims/chalk/v5.ts +688 -0
- package/shims/hono-node-server/v2.ts +645 -0
- package/shims/hot-shots/client.ts +1126 -0
- package/shims/hot-shots/v8-unix-dgram.ts +8 -0
- package/shims/hot-shots/v8.ts +8 -0
- package/surface-manifest.json +27 -7
|
@@ -15,6 +15,7 @@ import { type ContractAnnotations } from "../contract-types.js";
|
|
|
15
15
|
import type { WidthLift } from "./width-lift.js";
|
|
16
16
|
import { type FnCtx } from "./function-context.js";
|
|
17
17
|
import type { FrontendServices } from "../services.js";
|
|
18
|
+
import type { FsPathPlan } from "./builtins/fs-paths.js";
|
|
18
19
|
import { type ProtocolDispatch } from "./class-protocol-dispatch.js";
|
|
19
20
|
import { type DynamicFunction } from "../../ir/tiers.js";
|
|
20
21
|
import { type TierMode, type TierReport } from "../tier-analysis.js";
|
|
@@ -33,6 +34,7 @@ import { ShapeRegistry, type TypeMapperCtx, UnionRegistry } from "../type-mapper
|
|
|
33
34
|
import { type CompoundOp, type StdlibFnEntry, type BuiltinModuleFn } from "./surfaces.js";
|
|
34
35
|
import { type BuiltinClassRef } from "./builtins/class-values.js";
|
|
35
36
|
import { type FileParts } from "./lower-modules.js";
|
|
37
|
+
import { type SplitRequireBinding } from "./cjs-inline-require.js";
|
|
36
38
|
import { type ClassInfo, type ClassIteratorInfo, type GenericClassInfo, findStaticOn } from "./lower-classes.js";
|
|
37
39
|
import { type MixinFnShape } from "./lower-mixins.js";
|
|
38
40
|
import { type ParamShape, type FnSig } from "./call-signatures.js";
|
|
@@ -364,6 +366,9 @@ export declare class Lowerer {
|
|
|
364
366
|
/** Identifiers by spelling, per file, for the generic bindings' use
|
|
365
367
|
* ordering (runsAfterDeclaration). */
|
|
366
368
|
readonly bindingIdentifiers: Map<ts.SourceFile, Map<string, ts.Identifier[]>>;
|
|
369
|
+
/** Per JavaScript file, the declarations of the bindings it assigns an
|
|
370
|
+
* own `toString` (jsAssignsOwnToString in lower-calls.ts). */
|
|
371
|
+
readonly ownToStringTargets: Map<ts.SourceFile, Set<import("../ts7/ast-node.js").AstNode>>;
|
|
367
372
|
/** Per-symbol result of the never-reassigned file scan
|
|
368
373
|
* (bindingNeverReassigned — object-literal generic-method receivers). */
|
|
369
374
|
readonly neverReassignedCache: Map<ts.Symbol, boolean>;
|
|
@@ -473,6 +478,9 @@ export declare class Lowerer {
|
|
|
473
478
|
owner: ts.FunctionLikeDeclaration;
|
|
474
479
|
name: string;
|
|
475
480
|
}[];
|
|
481
|
+
/** The function-local classes of the program with an `extends` clause, whether lowering collected
|
|
482
|
+
* them yet or not (new-target.ts); found on first use. */
|
|
483
|
+
functionLocalSubclasses: ts.ClassLikeDeclaration[] | undefined;
|
|
476
484
|
/** Instance types (by checker type id) of the local classes generic
|
|
477
485
|
* factory calls return, and the per-instance class each names. */
|
|
478
486
|
readonly localClassInstanceTypes: Map<number, string>;
|
|
@@ -570,6 +578,14 @@ export declare class Lowerer {
|
|
|
570
578
|
/** Per CommonJS file using top-level `this`: the global holding the
|
|
571
579
|
* object that stands for its original exports (lowerCjsTopLevelThis). */
|
|
572
580
|
readonly cjsExportsThis: Map<ts.SourceFile, IrGlobal>;
|
|
581
|
+
/** `var m; m = require("./x")` alias bindings (cjs-inline-require.ts).
|
|
582
|
+
* Null entries cache declarations that keep ordinary storage. */
|
|
583
|
+
readonly cjsSplitRequireBindings: Map<ts.VariableDeclaration, SplitRequireBinding | null>;
|
|
584
|
+
/** Per-module whole-export symbol (cjs-inline-require.ts). Null means the
|
|
585
|
+
* module's exports are a table. */
|
|
586
|
+
readonly cjsWholeExportSymbols: Map<ts.SourceFile, ts.Symbol | null>;
|
|
587
|
+
/** Per-module live member-export classification (cjs-inline-require.ts). */
|
|
588
|
+
readonly cjsLiveMemberExports: Map<ts.SourceFile, boolean>;
|
|
573
589
|
/** Inline program-module require calls whose %init the enclosing member
|
|
574
590
|
* read or member call is already sequencing (cjs-inline-require.ts). */
|
|
575
591
|
readonly inlineRequireInitDone: Set<ts.CallExpression>;
|
|
@@ -624,6 +640,10 @@ export declare class Lowerer {
|
|
|
624
640
|
readonly runtimeOptionalFields: Set<string>;
|
|
625
641
|
/** Bindings initialized by a Date's `toJSON()` (analyzeDateJsonResults). */
|
|
626
642
|
readonly dateJsonBindings: Set<ts.Symbol>;
|
|
643
|
+
/** isTimeValueDateDeclaration's answers, and the locals that hold a
|
|
644
|
+
* Date's time value instead of a Date object (date-values.ts). */
|
|
645
|
+
readonly timeValueDateDecisions: Map<import("../ts7/ast-node.js").AstNode, boolean>;
|
|
646
|
+
readonly timeValueDateLocals: Set<IrLocal>;
|
|
627
647
|
/** Record bindings whose flow class reaches storage outside the class:
|
|
628
648
|
* they keep the declared layout, so an initializer from unchecked reads
|
|
629
649
|
* converts once instead of the binding adopting the widened variant. */
|
|
@@ -652,6 +672,17 @@ export declare class Lowerer {
|
|
|
652
672
|
runtimeOptionalRootOf(local: IrLocal): IrLocal;
|
|
653
673
|
runtimeOptionalBindingType(node: ts.Node): IrType | null;
|
|
654
674
|
runtimeOptionalBindingType(node: ts.Node, fallback: IrType): IrType;
|
|
675
|
+
/** A fresh TypeScript data literal (`{ message: "m" }`) passed to a
|
|
676
|
+
* checked-dynamic parameter of a callee implemented in JavaScript, whose
|
|
677
|
+
* contract lets it reshape the object: a call through an untyped value, an
|
|
678
|
+
* untyped parameter of a JavaScript function, or a package-declared
|
|
679
|
+
* parameter type (a non-library `.d.ts`) that makes one of the literal's
|
|
680
|
+
* properties optional (zod's `normalizeParams` deletes `params.message`).
|
|
681
|
+
* No typed alias of a fresh literal exists, so it is built as the plain
|
|
682
|
+
* object the callee receives instead of a view whose record layout refuses
|
|
683
|
+
* that delete. Standard-library and TypeScript callees, and literals with
|
|
684
|
+
* methods or accessors, keep their native storage. */
|
|
685
|
+
private reshapeableContextualLiteral;
|
|
655
686
|
/** A TypeScript object literal handed to a JavaScript checked-value
|
|
656
687
|
* parameter whose inferred type is open (`constructor({ factory, ...options
|
|
657
688
|
* } = {})` — the rest element admits any property): the literal names a
|
|
@@ -726,6 +757,8 @@ export declare class Lowerer {
|
|
|
726
757
|
/** Parameters read as `any` in the error-path copy of an error-first
|
|
727
758
|
* callback. */
|
|
728
759
|
readonly anySymbols: Set<ts.Symbol>;
|
|
760
|
+
/** overload-choice's answers per call, binding and function. */
|
|
761
|
+
readonly dynamicOverloadAnswers: Map<import("../ts7/ast-node.js").AstNode, boolean>;
|
|
729
762
|
/** Error parameters of an error-first callback with a known value in
|
|
730
763
|
* the copy being lowered: true while it holds an Error, false while it
|
|
731
764
|
* holds null (staticCondition folds conditions on them). */
|
|
@@ -800,6 +833,9 @@ export declare class Lowerer {
|
|
|
800
833
|
/** util.inspect's per-type traversal helpers (%util.insp.N), interned
|
|
801
834
|
* by typeKey — the assertHelpers pattern with its own namespace. */
|
|
802
835
|
readonly inspectHelpers: Map<string, string>;
|
|
836
|
+
/** Indexed-union safe-read helpers mapped to their numeric twins, for the
|
|
837
|
+
* fusion of an immediate ToNumber (tryLowerNumericIndexRead). */
|
|
838
|
+
readonly indexedUnionNumericTwins: Map<string, string>;
|
|
803
839
|
private readonly unionLiteralOwners;
|
|
804
840
|
private readonly strippedUndefinedArms;
|
|
805
841
|
private readonly addedUndefinedArms;
|
|
@@ -834,6 +870,10 @@ export declare class Lowerer {
|
|
|
834
870
|
* checks resolve through this map (stdlibGlobalNameOf), declarations
|
|
835
871
|
* emit nothing. */
|
|
836
872
|
readonly stdlibGlobalAliases: Map<ts.Symbol, string>;
|
|
873
|
+
/** The stdlibGlobalAliases bound through a cast of the global object
|
|
874
|
+
* (`(globalThis as { Buffer?: B }).Buffer`). Their static type is the
|
|
875
|
+
* cast's, so their value reads are refused (identifiers.ts). */
|
|
876
|
+
readonly castGlobalAliases: Set<ts.Symbol>;
|
|
837
877
|
/** CJS export-table ACCESSORS (`module.exports = { get path() {...} }`),
|
|
838
878
|
* lifted lazily as module-level functions and interned per accessor
|
|
839
879
|
* declaration: member reads call the getter (lower-exprs). */
|
|
@@ -928,10 +968,23 @@ export declare class Lowerer {
|
|
|
928
968
|
/** Named method slots observed before class collection need a callable
|
|
929
969
|
* ABI and shared prototype descriptors instead of call-site specialization. */
|
|
930
970
|
readonly prototypeMethodAccesses: Map<string, import("../ts7/ast-node.js").AstNode>;
|
|
971
|
+
/** Every site the census found for a name in prototypeMethodAccesses (which
|
|
972
|
+
* keeps one): reads of the method and writes that may replace it. The
|
|
973
|
+
* key-order witness asks which replacements can return records. */
|
|
974
|
+
readonly methodAccessSites: Map<string, import("../ts7/ast-node.js").AstNode[]>;
|
|
975
|
+
/** Marks `name` as a method the program may read or replace at `site`. */
|
|
976
|
+
noteMethodAccess(name: string, site: ts.Node): void;
|
|
977
|
+
/** Records a site for `name` without changing its prototypeMethodAccesses entry. */
|
|
978
|
+
noteMethodSite(name: string, site: ts.Node): void;
|
|
931
979
|
/** Whether the program reads `Error.prototype`, the checked-dynamic
|
|
932
|
-
* object an ES5 constructor function can inherit from
|
|
933
|
-
*
|
|
980
|
+
* object an ES5 constructor function can inherit from, or has a class
|
|
981
|
+
* whose heritage is evaluated at run time (`extends (Base ?? Error)`):
|
|
982
|
+
* only then can a value that is not an Error instance be
|
|
983
|
+
* `instanceof Error`. */
|
|
934
984
|
errorPrototypeValues: boolean;
|
|
985
|
+
/** The property names the program assigns on the global object
|
|
986
|
+
* (property-access.ts), collected on first use. */
|
|
987
|
+
globalThisWrittenNames: Set<string> | null;
|
|
935
988
|
/** Well-known symbol methods (`sym:iterator`) the program may replace
|
|
936
989
|
* through a symbol-keyed write: an instance or prototype property, or a
|
|
937
990
|
* reflection call. */
|
|
@@ -1018,8 +1071,13 @@ export declare class Lowerer {
|
|
|
1018
1071
|
localId: string;
|
|
1019
1072
|
type: IrType;
|
|
1020
1073
|
} | null>;
|
|
1021
|
-
/**
|
|
1022
|
-
|
|
1074
|
+
/** What each fs path argument of a URL-path call lowers to (the plans
|
|
1075
|
+
* of builtins/fs-paths.ts). */
|
|
1076
|
+
readonly fsPathPlans: Map<ts.ExpressionBase, FsPathPlan>;
|
|
1077
|
+
/** The existsSync/fs.promises calls whose converted URL paths are being
|
|
1078
|
+
* lowered into the call itself (lowerFallibleFsUrlCall). A call may be
|
|
1079
|
+
* lowered more than once, and each lowering converts again. */
|
|
1080
|
+
readonly fallibleFsCalls: Set<ts.CallExpression>;
|
|
1023
1081
|
readonly moduleNsParamOverrides: Map<ts.ParameterDeclaration, {
|
|
1024
1082
|
kind: "moduleNs";
|
|
1025
1083
|
moduleId: string;
|
|
@@ -1139,6 +1197,12 @@ export declare class Lowerer {
|
|
|
1139
1197
|
onEdge: ((name: string) => void) | null;
|
|
1140
1198
|
deferredModuleInitializers: DeferredModuleInitializers | null;
|
|
1141
1199
|
fnStack: FnCtx[];
|
|
1200
|
+
/** Source ranges of record writes in sloppy-mode code, and of the
|
|
1201
|
+
* absent-state writes of `delete r.f` (markSloppyRecordWrites). */
|
|
1202
|
+
readonly sloppyRecordWrites: Set<string>;
|
|
1203
|
+
readonly recordFieldDeletes: Set<string>;
|
|
1204
|
+
/** typeKeys of the array types the program may freeze (IrModule.freezableArrays). */
|
|
1205
|
+
readonly freezableArrays: Set<string>;
|
|
1142
1206
|
readonly liftedFns: IrFunction[];
|
|
1143
1207
|
/** The first lifted function of each name (liftedFnNamed), for the
|
|
1144
1208
|
* liftedFns indexed so far. liftedFns only grows. */
|
|
@@ -1151,12 +1215,18 @@ export declare class Lowerer {
|
|
|
1151
1215
|
* dispatch revision needs no weak-key identity or process-global state. */
|
|
1152
1216
|
errorMethodDispatchRevision: string | null;
|
|
1153
1217
|
errorPropertyDispatchRevision: string | null;
|
|
1218
|
+
/** The program defines properties by reflection on an untyped or
|
|
1219
|
+
* Error-shaped target, so an own accessor may replace an error's `name`
|
|
1220
|
+
* or `message`: typed reads and writes of those slots check for one.
|
|
1221
|
+
* Holds the first such call's location. */
|
|
1222
|
+
errorAccessorReflection: SrcLoc | null;
|
|
1154
1223
|
/** Structural source positions (structural-positions.ts) for names that
|
|
1155
1224
|
* stay the same when unrelated code moves. */
|
|
1156
1225
|
/** Files are named by their path relative to the entry's directory, so
|
|
1157
|
-
* names do not depend on where the program sits,
|
|
1158
|
-
*
|
|
1159
|
-
* directories
|
|
1226
|
+
* names do not depend on where the program sits, default library files
|
|
1227
|
+
* by their base name (two checkers install them in different
|
|
1228
|
+
* directories), and the files scriptc ships by their name inside scriptc,
|
|
1229
|
+
* so names do not depend on where scriptc is installed either. */
|
|
1160
1230
|
readonly positions: StructuralPositions;
|
|
1161
1231
|
/** The outermost node whose token span is exactly `loc`, or null. */
|
|
1162
1232
|
nodeAtLoc(loc: SrcLoc): ts.Node | null;
|
|
@@ -1230,6 +1300,9 @@ export declare class Lowerer {
|
|
|
1230
1300
|
* the class and constructed-class counts, it tells caches over the class
|
|
1231
1301
|
* graph when the graph changed. */
|
|
1232
1302
|
subclassLinks: number;
|
|
1303
|
+
/** Function-local classes by the class node they extend, built on first
|
|
1304
|
+
* use (localSubclassesOf in lower-classes.ts). */
|
|
1305
|
+
localSubclassIndex: Map<ts.Node, ts.ClassLikeDeclaration[]> | null;
|
|
1233
1306
|
/** Set while a subclass constructor's super() call notes its base
|
|
1234
1307
|
* constructor edge: that edge does not instantiate the base exactly. */
|
|
1235
1308
|
private superConstructorEdge;
|
|
@@ -1360,6 +1433,15 @@ export declare class Lowerer {
|
|
|
1360
1433
|
* active and this is the emit/discovery lane — mirror the CALLER's
|
|
1361
1434
|
* suppressStats guard, this method only gates remainder). */
|
|
1362
1435
|
bumpFileStat(file: string, kind: "total" | "failed"): void;
|
|
1436
|
+
/** The program holds the declaration-typed boundary's projection
|
|
1437
|
+
* (decl-projection.ts): user-file record and array values crossing into
|
|
1438
|
+
* dynamic slots (package parameters) box as live capsules, so a value
|
|
1439
|
+
* that comes back through a boundary cast keeps its identity. */
|
|
1440
|
+
private declBoundaryMemo;
|
|
1441
|
+
get declBoundary(): boolean;
|
|
1442
|
+
/** Tracked classes' bag initializers over a typed `this`
|
|
1443
|
+
* (class-dynamic-dispatch.ts recordBagInitializers). */
|
|
1444
|
+
readonly classBagInitializers: Map<string, IrExpr>;
|
|
1363
1445
|
constructor(program: ts.Program, entry: ts.SourceFile, moduleOrder: ts.SourceFile[], mode?: LowererMode);
|
|
1364
1446
|
/** A JavaScript file TypeScript type-checks (`// @ts-check`, or the
|
|
1365
1447
|
* project's `checkJs`). Its JSDoc types are enforced like TypeScript
|
|
@@ -1576,6 +1658,12 @@ export declare class Lowerer {
|
|
|
1576
1658
|
* every statement the body holds as attempted and failed, in addition to
|
|
1577
1659
|
* the skipped-function tally. */
|
|
1578
1660
|
private countSkippedBody;
|
|
1661
|
+
/** Coverage remainder: the body diagnostics of a function whose
|
|
1662
|
+
* signature blocked (blockedBodyDiagnostics). A function reachable emit
|
|
1663
|
+
* reached (its signature's diagnostics flushed there) reports them with
|
|
1664
|
+
* the reached diagnostics; any other reports them as unreached. */
|
|
1665
|
+
readonly reachedBlockedBodyDiagnostics: ScrDiagnostic[];
|
|
1666
|
+
private reportBlockedBody;
|
|
1579
1667
|
/** Whether run() counts a signature-blocked declaration in
|
|
1580
1668
|
* stats.functionsSkipped: whole-program passes and the coverage
|
|
1581
1669
|
* remainder do; an externally-gated emit pass leaves the counting to the
|
|
@@ -1889,6 +1977,11 @@ export declare class Lowerer {
|
|
|
1889
1977
|
* its referent. Apply the ordinary checked narrowing to absent arms from
|
|
1890
1978
|
* runtime-optional reads; only present reference arms participate here. */
|
|
1891
1979
|
lowerCollectionKey(node: ts.Expression, expected: IrType): IrExpr;
|
|
1980
|
+
/** The right side of a write to a member of a typed view of the global
|
|
1981
|
+
* object (`(globalThis as typeof globalThis & { k?: T }).k = value`, also
|
|
1982
|
+
* through `??=` and `||=`) that is `value` itself or wraps only it in
|
|
1983
|
+
* parentheses or `satisfies`; null when `value` is not in such a write. */
|
|
1984
|
+
private globalViewSlot;
|
|
1892
1985
|
/** Lower for a known destination, then apply ordinary value coercion.
|
|
1893
1986
|
* Fresh arrays and records use the destination layout directly. */
|
|
1894
1987
|
lowerExprExpecting(node: ts.Expression, expected: IrType | undefined): IrExpr;
|
|
@@ -1940,6 +2033,12 @@ export declare class Lowerer {
|
|
|
1940
2033
|
* undefined, which the void slot drops. Units are pure literals, so
|
|
1941
2034
|
* nothing evaluates; unit-typed non-literals keep the fences. */
|
|
1942
2035
|
lowerReturnValue(node: ts.Expression): IrExpr | null;
|
|
2036
|
+
/** An array literal or a `new Map(...)`, `new Set(...)` or `new
|
|
2037
|
+
* Array(...)` of the builtins: a fresh collection, never a thenable, so
|
|
2038
|
+
* an async return takes the declared result type as its construction
|
|
2039
|
+
* layout the way a synchronous return does (`return []` in a function
|
|
2040
|
+
* whose inferred result is `Promise<string[]>`). */
|
|
2041
|
+
private returnsFreshCollection;
|
|
1943
2042
|
/** A fresh JS object literal returned into a checked-native (dyn) result,
|
|
1944
2043
|
* which lowers straight into that storage. */
|
|
1945
2044
|
private returnsLiteralIntoDyn;
|
|
@@ -2084,7 +2183,7 @@ export declare class Lowerer {
|
|
|
2084
2183
|
* an analysis already caught the poison) and the class is unmappable for
|
|
2085
2184
|
* the query instead of the poison escaping the compiler. */
|
|
2086
2185
|
collectLocalClassForType(decl: ts.ClassLikeDeclaration): boolean;
|
|
2087
|
-
lowerClassExpression(expr: ts.ClassLikeDeclaration): IrExpr;
|
|
2186
|
+
lowerClassExpression(expr: ts.ClassLikeDeclaration, binding?: IrLocal): IrExpr;
|
|
2088
2187
|
findMethodOn(info: ClassInfo | null, name: string): {
|
|
2089
2188
|
declarer: ClassInfo;
|
|
2090
2189
|
sig: {
|