@scriptc/compiler 0.2.9 → 0.3.0
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 +2 -36
- package/ambient/scriptc-overrides.d.ts +1 -25
- package/ambient/scriptc.d.ts +1 -9
- package/dist/backend/cycle-analysis.d.ts +56 -0
- package/dist/backend/cycle-analysis.js +175 -14
- package/dist/backend/cycle-analysis.js.map +1 -1
- package/dist/backend/cycle-analysis.test.js +95 -2
- package/dist/backend/cycle-analysis.test.js.map +1 -1
- package/dist/backend/cycle-mutability.d.ts +3 -7
- package/dist/backend/cycle-mutability.js +4 -30
- package/dist/backend/cycle-mutability.js.map +1 -1
- package/dist/backend/executable-features.d.ts +1 -1
- package/dist/backend/executable-features.js +3 -8
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/immutability.d.ts +57 -0
- package/dist/backend/immutability.js +178 -0
- package/dist/backend/immutability.js.map +1 -0
- package/dist/backend/immutability.test.js +131 -0
- package/dist/backend/immutability.test.js.map +1 -0
- package/dist/backend/library-pack.js +0 -2
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/linker.js +1 -1
- package/dist/backend/linker.js.map +1 -1
- package/dist/backend/llvm/borrowed-inputs.d.ts +9 -2
- package/dist/backend/llvm/borrowed-inputs.js +31 -3
- package/dist/backend/llvm/borrowed-inputs.js.map +1 -1
- package/dist/backend/llvm/checked-narrows.test.js +1 -1
- package/dist/backend/llvm/classes.d.ts +28 -0
- package/dist/backend/llvm/classes.js +48 -14
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/classes.test.js +134 -6
- package/dist/backend/llvm/classes.test.js.map +1 -1
- package/dist/backend/llvm/common.d.ts +13 -0
- package/dist/backend/llvm/common.js +13 -0
- package/dist/backend/llvm/common.js.map +1 -1
- package/dist/backend/llvm/constant-callbacks.d.ts +1 -1
- package/dist/backend/llvm/constant-callbacks.js +3 -3
- package/dist/backend/llvm/constant-callbacks.js.map +1 -1
- package/dist/backend/llvm/constant-callbacks.test.js +1 -1
- package/dist/backend/llvm/dense-array-access.js +5 -4
- package/dist/backend/llvm/dense-array-access.js.map +1 -1
- package/dist/backend/llvm/dense-array-access.test.js +10 -2
- package/dist/backend/llvm/dense-array-access.test.js.map +1 -1
- package/dist/backend/llvm/dyn.d.ts +2 -1
- package/dist/backend/llvm/dyn.js +3 -76
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +67 -19
- package/dist/backend/llvm/emitter.js +443 -226
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/emitter.test.js +21 -3
- package/dist/backend/llvm/emitter.test.js.map +1 -1
- package/dist/backend/llvm/expr-async.test.js +1 -1
- package/dist/backend/llvm/expr-calls.js +14 -6
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.js +41 -14
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-control.js +4 -107
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dispatch.d.ts +1 -2
- package/dist/backend/llvm/expr-dispatch.js +0 -41
- package/dist/backend/llvm/expr-dispatch.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.d.ts +1 -1
- package/dist/backend/llvm/expr-dynamic.js +13 -27
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +30 -3
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.test.js +55 -2
- package/dist/backend/llvm/expr-primitives.test.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +4 -4
- 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/lib-dispatch.js +0 -1
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-filesystem.js +0 -13
- package/dist/backend/llvm/lib-filesystem.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +0 -8
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.js +3 -3
- package/dist/backend/llvm/local-array-reads.js.map +1 -1
- package/dist/backend/llvm/local-array-reads.test.js +1 -1
- package/dist/backend/llvm/local-union-storage.test.js +1 -1
- package/dist/backend/llvm/loop-array-borrows.d.ts +5 -2
- package/dist/backend/llvm/loop-array-borrows.js +27 -8
- package/dist/backend/llvm/loop-array-borrows.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.d.ts +14 -0
- package/dist/backend/llvm/map-number-lookup.js +33 -2
- package/dist/backend/llvm/map-number-lookup.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.d.ts +5 -0
- package/dist/backend/llvm/map-read-lifetimes.js +20 -4
- package/dist/backend/llvm/map-read-lifetimes.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.test.js +25 -3
- package/dist/backend/llvm/map-read-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/reference-writes.d.ts +124 -0
- package/dist/backend/llvm/reference-writes.js +1090 -0
- package/dist/backend/llvm/reference-writes.js.map +1 -0
- package/dist/backend/llvm/shapes.d.ts +8 -5
- package/dist/backend/llvm/shapes.js +37 -13
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +3 -3
- package/dist/backend/llvm/stack-unions.test.js +1 -1
- package/dist/backend/llvm/string-construction.test.js +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js +40 -11
- package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/string-reads.d.ts +3 -0
- package/dist/backend/llvm/string-reads.js +31 -0
- package/dist/backend/llvm/string-reads.js.map +1 -1
- package/dist/backend/llvm/switch-dispatch.d.ts +2 -2
- package/dist/backend/llvm/switch-dispatch.js +35 -22
- package/dist/backend/llvm/switch-dispatch.js.map +1 -1
- package/dist/backend/llvm/switch-dispatch.test.js +29 -11
- package/dist/backend/llvm/switch-dispatch.test.js.map +1 -1
- package/dist/backend/llvm/walk-borrows.d.ts +8 -1
- package/dist/backend/llvm/walk-borrows.js +15 -4
- package/dist/backend/llvm/walk-borrows.js.map +1 -1
- package/dist/backend/may-throw.d.ts +36 -2
- package/dist/backend/may-throw.js +308 -21
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/may-throw.test.js +147 -2
- package/dist/backend/may-throw.test.js.map +1 -1
- package/dist/backend/native/artifact-stamps.js +0 -2
- package/dist/backend/native/artifact-stamps.js.map +1 -1
- package/dist/backend/native/cache-warm.d.ts +1 -1
- package/dist/backend/native/cache-warm.js +2 -3
- package/dist/backend/native/cache-warm.js.map +1 -1
- package/dist/backend/native/compiler-fingerprint.d.ts +1 -1
- package/dist/backend/native/compiler-fingerprint.js +4 -7
- package/dist/backend/native/compiler-fingerprint.js.map +1 -1
- package/dist/backend/native/contracts.d.ts +3 -28
- package/dist/backend/native/driver.js +1 -3
- package/dist/backend/native/driver.js.map +1 -1
- package/dist/backend/native/executable.d.ts +0 -15
- package/dist/backend/native/executable.js +17 -172
- package/dist/backend/native/executable.js.map +1 -1
- package/dist/backend/native/tool-identity.js +0 -1
- package/dist/backend/native/tool-identity.js.map +1 -1
- package/dist/backend/native/vendor.d.ts +1 -1
- package/dist/backend/native/vendor.js +1 -1
- package/dist/backend/native/vendor.js.map +1 -1
- package/dist/backend/native-link-info-core.d.ts +0 -2
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +23 -33
- package/dist/backend/native-toolchain.test.js.map +1 -1
- package/dist/backend/publication.d.ts +5 -0
- package/dist/backend/publication.js +10 -0
- package/dist/backend/publication.js.map +1 -1
- package/dist/backend/publication.test.js +1 -1
- package/dist/backend/runtime-abi.d.ts +2 -2
- package/dist/backend/runtime-abi.js +2 -2
- package/dist/backend/runtime-pack-core.d.ts +1 -2
- package/dist/backend/runtime-pack-core.js +5 -14
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +3 -8
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +22 -19
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/target-diagnostics.d.ts +0 -5
- package/dist/backend/target-diagnostics.js +1 -11
- package/dist/backend/target-diagnostics.js.map +1 -1
- package/dist/backend/target-diagnostics.test.js +1 -1
- package/dist/backend/vendor-archives.d.ts +1 -7
- package/dist/backend/vendor-archives.js +9 -189
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/backend/vendor-inputs.d.ts +0 -1
- package/dist/backend/vendor-inputs.js +0 -1
- package/dist/backend/vendor-inputs.js.map +1 -1
- package/dist/backend/warm-cache.js +3 -5
- package/dist/backend/warm-cache.js.map +1 -1
- package/dist/cli/command.js +4 -8
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/host.d.ts +1 -1
- package/dist/cli/usage.d.ts +1 -5
- package/dist/cli/usage.js +4 -9
- package/dist/cli/usage.js.map +1 -1
- package/dist/compat/fetch-profile.d.ts +2 -2
- package/dist/compat/fetch-profile.js +16 -25
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/compile-types.d.ts +2 -17
- package/dist/contracts/check.d.ts +8 -0
- package/dist/contracts/check.js +1573 -0
- package/dist/contracts/check.js.map +1 -0
- package/dist/coverage/report.d.ts +5 -22
- package/dist/coverage/report.js +12 -76
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.d.ts +3 -3
- package/dist/coverage/surface-manifest.js +22 -27
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/coverage/verdict-cache.d.ts +1 -3
- package/dist/coverage/verdict-cache.js +2 -7
- package/dist/coverage/verdict-cache.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +11 -60
- package/dist/diagnostics/diagnostic.js +39 -118
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/envelope.d.ts +3 -4
- package/dist/diagnostics/envelope.js +0 -9
- package/dist/diagnostics/envelope.js.map +1 -1
- package/dist/diagnostics/envelope.test.js +1 -1
- package/dist/diagnostics/envelope.test.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +0 -3
- package/dist/executable/executable-cache.js +2 -4
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +0 -4
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/executable/prepare.js +14 -2
- package/dist/executable/prepare.js.map +1 -1
- package/dist/frontend/analysis.js +10 -10
- package/dist/frontend/analysis.js.map +1 -1
- package/dist/frontend/cjs-syntax.js +0 -88
- package/dist/frontend/cjs-syntax.js.map +1 -1
- package/dist/frontend/contract-types.d.ts +50 -0
- package/dist/frontend/contract-types.js +232 -0
- package/dist/frontend/contract-types.js.map +1 -0
- package/dist/frontend/dts-paths.d.ts +1 -1
- package/dist/frontend/dts-paths.js +1 -1
- package/dist/frontend/lowering/abstract-equality.js +1 -4
- package/dist/frontend/lowering/abstract-equality.js.map +1 -1
- package/dist/frontend/lowering/array-values.js +4 -11
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/builtins/arguments.js +0 -13
- package/dist/frontend/lowering/builtins/arguments.js.map +1 -1
- package/dist/frontend/lowering/builtins/crypto.d.ts +0 -4
- package/dist/frontend/lowering/builtins/crypto.js +0 -4
- package/dist/frontend/lowering/builtins/crypto.js.map +1 -1
- package/dist/frontend/lowering/builtins/json.js +1 -39
- package/dist/frontend/lowering/builtins/json.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-resolution.d.ts +0 -15
- package/dist/frontend/lowering/builtins/module-resolution.js +5 -44
- package/dist/frontend/lowering/builtins/module-resolution.js.map +1 -1
- package/dist/frontend/lowering/builtins/numbers.d.ts +0 -6
- package/dist/frontend/lowering/builtins/numbers.js +6 -57
- package/dist/frontend/lowering/builtins/numbers.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.js +4 -67
- package/dist/frontend/lowering/builtins/promises.js.map +1 -1
- package/dist/frontend/lowering/builtins/workers.js +1 -1
- package/dist/frontend/lowering/builtins/workers.js.map +1 -1
- package/dist/frontend/lowering/call-arguments.d.ts +1 -37
- package/dist/frontend/lowering/call-arguments.js +11 -94
- package/dist/frontend/lowering/call-arguments.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.d.ts +1 -6
- package/dist/frontend/lowering/call-signatures.js +16 -68
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +19 -4
- package/dist/frontend/lowering/class-dynamic-dispatch.js +168 -98
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js +44 -4
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js.map +1 -1
- package/dist/frontend/lowering/class-method-mutations.js +0 -2
- package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
- package/dist/frontend/lowering/class-protocols.js +1 -1
- package/dist/frontend/lowering/class-protocols.js.map +1 -1
- package/dist/frontend/lowering/coercions/function-adapters.js +5 -35
- package/dist/frontend/lowering/coercions/function-adapters.js.map +1 -1
- package/dist/frontend/lowering/coercions/state.d.ts +0 -1
- package/dist/frontend/lowering/coercions/state.js +0 -1
- package/dist/frontend/lowering/coercions/state.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural-plans.js +2 -4
- package/dist/frontend/lowering/coercions/structural-plans.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural.js +2 -12
- package/dist/frontend/lowering/coercions/structural.js.map +1 -1
- package/dist/frontend/lowering/coercions/unions.d.ts +12 -0
- package/dist/frontend/lowering/coercions/unions.js +63 -1
- package/dist/frontend/lowering/coercions/unions.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.js +9 -28
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.js +2 -3
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +10 -54
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.js +0 -1
- package/dist/frontend/lowering/containers/bytes.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.js +2 -10
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-methods.js +1 -6
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/indexed-objects.js +0 -2
- package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -1
- package/dist/frontend/lowering/containers/string-and-regexp.d.ts +0 -6
- package/dist/frontend/lowering/containers/string-and-regexp.js +2 -10
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/expressions/evaluation-safety.js +0 -3
- package/dist/frontend/lowering/expressions/evaluation-safety.js.map +1 -1
- package/dist/frontend/lowering/expressions/native-proxy.js +1 -1
- package/dist/frontend/lowering/expressions/native-proxy.js.map +1 -1
- package/dist/frontend/lowering/expressions/nullish-assignment.js +0 -1
- package/dist/frontend/lowering/expressions/nullish-assignment.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.d.ts +0 -8
- package/dist/frontend/lowering/expressions/object-literals.js +8 -35
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/optional-chains.d.ts +0 -4
- package/dist/frontend/lowering/expressions/optional-chains.js +7 -67
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -1
- package/dist/frontend/lowering/function-context.js +0 -1
- package/dist/frontend/lowering/function-context.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.js +0 -1
- package/dist/frontend/lowering/generic-functions.js.map +1 -1
- package/dist/frontend/lowering/lib-boundary.js +10 -77
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-array-sort.js +1 -10
- package/dist/frontend/lowering/lower-array-sort.js.map +1 -1
- package/dist/frontend/lowering/lower-array-sort.test.js +2 -2
- package/dist/frontend/lowering/lower-array-sort.test.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +2 -3
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-async-iteration.js +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +2 -27
- package/dist/frontend/lowering/lower-calls.js +56 -465
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.js +11 -49
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-comptime.js +2 -3
- package/dist/frontend/lowering/lower-comptime.js.map +1 -1
- package/dist/frontend/lowering/lower-enums.js +5 -8
- package/dist/frontend/lowering/lower-enums.js.map +1 -1
- package/dist/frontend/lowering/lower-event-emitter.js +3 -4
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-expando.js +3 -5
- package/dist/frontend/lowering/lower-expando.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +0 -8
- package/dist/frontend/lowering/lower-exprs.js +133 -908
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.js +2 -5
- package/dist/frontend/lowering/lower-functions.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +1 -50
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.d.ts +0 -43
- package/dist/frontend/lowering/lower-modules.js +25 -329
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.test.js +5 -5
- package/dist/frontend/lowering/lower-modules.test.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +0 -30
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stdlib.d.ts +98 -0
- package/dist/frontend/lowering/{lower-island.js → lower-stdlib.js} +97 -1160
- package/dist/frontend/lowering/lower-stdlib.js.map +1 -0
- package/dist/frontend/lowering/lower-stmts.d.ts +0 -16
- package/dist/frontend/lowering/lower-stmts.js +58 -1016
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.test.js +1 -1
- package/dist/frontend/lowering/lower-stmts.test.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +1 -3
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +26 -151
- package/dist/frontend/lowering/lowerer.js +120 -770
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/lowerer.test.js +4 -51
- package/dist/frontend/lowering/lowerer.test.js.map +1 -1
- package/dist/frontend/lowering/narrowing-stability.d.ts +100 -0
- package/dist/frontend/lowering/narrowing-stability.js +1174 -0
- package/dist/frontend/lowering/narrowing-stability.js.map +1 -0
- package/dist/frontend/lowering/narrowing-stability.test.js +150 -0
- package/dist/frontend/lowering/narrowing-stability.test.js.map +1 -0
- package/dist/frontend/lowering/optional-arguments.js +0 -2
- package/dist/frontend/lowering/optional-arguments.js.map +1 -1
- package/dist/frontend/lowering/sanitize-class-types.test.js +2 -2
- package/dist/frontend/lowering/strict-equality.js +1 -1
- package/dist/frontend/lowering/strict-equality.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +6 -45
- package/dist/frontend/lowering/surfaces.js +5 -65
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/module-syntax.d.ts +0 -3
- package/dist/frontend/module-syntax.js.map +1 -1
- package/dist/frontend/npm-node.d.ts +0 -7
- package/dist/frontend/npm-node.js +0 -7
- package/dist/frontend/npm-node.js.map +1 -1
- package/dist/frontend/npm-static-rewrite-syntax.d.ts +1 -1
- package/dist/frontend/npm-static-rewrite-syntax.js +6 -82
- package/dist/frontend/npm-static-rewrite-syntax.js.map +1 -1
- package/dist/frontend/npm-static.d.ts +1 -1
- package/dist/frontend/npm-static.js +6 -71
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm.d.ts +3 -319
- package/dist/frontend/npm.js +6 -1007
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/npm.test.js +2 -197
- package/dist/frontend/npm.test.js.map +1 -1
- package/dist/frontend/pipeline-native.js +1 -2
- package/dist/frontend/pipeline-native.js.map +1 -1
- package/dist/frontend/pipeline.d.ts +3 -11
- package/dist/frontend/pipeline.js +37 -56
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/pipeline.test.js +12 -6
- package/dist/frontend/pipeline.test.js.map +1 -1
- package/dist/frontend/program.d.ts +0 -34
- package/dist/frontend/program.js +13 -98
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/provenance-core.d.ts +0 -4
- package/dist/frontend/provenance-core.js +4 -37
- package/dist/frontend/provenance-core.js.map +1 -1
- package/dist/frontend/provenance-registry.d.ts +0 -4
- package/dist/frontend/provenance-registry.js +0 -20
- package/dist/frontend/provenance-registry.js.map +1 -1
- package/dist/frontend/resolve.d.ts +0 -12
- package/dist/frontend/resolve.js +0 -34
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/runtime-resolve.js +2 -2
- package/dist/frontend/runtime-resolve.js.map +1 -1
- package/dist/frontend/services-node.js +2 -3
- package/dist/frontend/services-node.js.map +1 -1
- package/dist/frontend/services.d.ts +1 -8
- package/dist/frontend/services.js +2 -22
- package/dist/frontend/services.js.map +1 -1
- package/dist/frontend/services.test.js +0 -38
- package/dist/frontend/services.test.js.map +1 -1
- package/dist/frontend/tsc-codes.js +0 -11
- package/dist/frontend/tsc-codes.js.map +1 -1
- package/dist/frontend/type-mapper.d.ts +2 -27
- package/dist/frontend/type-mapper.js +85 -153
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +7 -10
- package/dist/index.js.map +1 -1
- package/dist/ir/api.d.ts +1 -1
- package/dist/ir/api.js +1 -1
- package/dist/ir/api.js.map +1 -1
- package/dist/ir/builtin-effects.js +0 -5
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +1 -1
- package/dist/ir/builtin-signatures.js +1 -55
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/constant-globals.test.js +1 -1
- package/dist/ir/constant-tables.test.js +1 -1
- package/dist/ir/final-fields.test.js +1 -1
- package/dist/ir/initializer-bindings.test.js +1 -1
- package/dist/ir/int32-slots.d.ts +29 -3
- package/dist/ir/int32-slots.js +152 -66
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/int32-slots.test.js +1 -1
- package/dist/ir/integer-loops.js +3 -0
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/integer-loops.test.js +26 -1
- package/dist/ir/integer-loops.test.js.map +1 -1
- package/dist/ir/integer-ranges.d.ts +20 -0
- package/dist/ir/integer-ranges.js +178 -21
- package/dist/ir/integer-ranges.js.map +1 -1
- package/dist/ir/integer-ranges.test.js +148 -3
- package/dist/ir/integer-ranges.test.js.map +1 -1
- package/dist/ir/ir.d.ts +44 -284
- package/dist/ir/ir.js +10 -259
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/ir.test.js +2 -7
- package/dist/ir/ir.test.js.map +1 -1
- package/dist/ir/runtime-features.d.ts +3 -30
- package/dist/ir/runtime-features.js +5 -41
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/scalar-records.test.js +1 -1
- package/dist/ir/serialize.d.ts +6 -2
- package/dist/ir/serialize.js +11 -3
- package/dist/ir/serialize.js.map +1 -1
- package/dist/ir/traverse.js +0 -21
- package/dist/ir/traverse.js.map +1 -1
- package/dist/ir/unshare.d.ts +14 -0
- package/dist/ir/unshare.js +60 -0
- package/dist/ir/unshare.js.map +1 -0
- package/dist/ir/unshare.test.js +115 -0
- package/dist/ir/unshare.test.js.map +1 -0
- package/dist/ir/validate.js +9 -207
- package/dist/ir/validate.js.map +1 -1
- package/dist/ir/validate.test.js +6 -6
- package/dist/library/fence-eval.test.js +1 -1
- package/dist/library/int-infer.test.js +4 -4
- package/dist/library/library-cache.test.js +5 -5
- package/dist/library/prepare.js +14 -20
- package/dist/library/prepare.js.map +1 -1
- package/dist/native/cli.js +0 -2
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.test.js +2 -4
- package/dist/native/compiler.test.js.map +1 -1
- package/dist/native/prepare.js +2 -4
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/sanitizer.js +2 -16
- package/dist/native/sanitizer.js.map +1 -1
- package/dist/native/sanitizer.test.js +0 -3
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/startup-cache.js +0 -2
- package/dist/startup-cache.js.map +1 -1
- package/package.json +20 -20
- package/surface-manifest.json +80 -88
- package/dist/backend/llvm/expr-island.d.ts +0 -15
- package/dist/backend/llvm/expr-island.js +0 -709
- package/dist/backend/llvm/expr-island.js.map +0 -1
- package/dist/frontend/lowering/coercions/island.d.ts +0 -37
- package/dist/frontend/lowering/coercions/island.js +0 -350
- package/dist/frontend/lowering/coercions/island.js.map +0 -1
- package/dist/frontend/lowering/lower-island.d.ts +0 -229
- package/dist/frontend/lowering/lower-island.js.map +0 -1
- package/dist/frontend/lowering/lower-island.test.js +0 -56
- package/dist/frontend/lowering/lower-island.test.js.map +0 -1
- package/dist/frontend/npm-fetch-analysis.d.ts +0 -17
- package/dist/frontend/npm-fetch-analysis.js +0 -109
- package/dist/frontend/npm-fetch-analysis.js.map +0 -1
- package/dist/frontend/npm-fetch-analysis.test.js +0 -130
- package/dist/frontend/npm-fetch-analysis.test.js.map +0 -1
- package/dist/frontend/npm-fetch-node.d.ts +0 -2
- package/dist/frontend/npm-fetch-node.js +0 -12
- package/dist/frontend/npm-fetch-node.js.map +0 -1
- package/dist/frontend/npm-fetch-syntax.d.ts +0 -6
- package/dist/frontend/npm-fetch-syntax.js +0 -202
- package/dist/frontend/npm-fetch-syntax.js.map +0 -1
- package/dist/native/runtime-typescript.d.ts +0 -4
- package/dist/native/runtime-typescript.js +0 -74
- package/dist/native/runtime-typescript.js.map +0 -1
- package/dist/native/runtime-typescript.test.js +0 -41
- package/dist/native/runtime-typescript.test.js.map +0 -1
- /package/dist/{frontend/lowering/lower-island.test.d.ts → backend/immutability.test.d.ts} +0 -0
- /package/dist/frontend/{npm-fetch-analysis.test.d.ts → lowering/narrowing-stability.test.d.ts} +0 -0
- /package/dist/{native/runtime-typescript.test.d.ts → ir/unshare.test.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-arguments.js","sourceRoot":"","sources":["../../../src/frontend/lowering/call-arguments.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"call-arguments.js","sourceRoot":"","sources":["../../../src/frontend/lowering/call-arguments.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { type IrExpr, type IrFunction, type IrType } from "../../ir/ir.js";
|
|
|
9
9
|
* `rest` (always last) receives the surplus arguments packed into one array
|
|
10
10
|
* literal at each call site. `arguments` is a hidden slot containing every
|
|
11
11
|
* actual argument, including those bound to named parameters. */
|
|
12
|
-
export type ParamMode = "required" | "omittable" | "rest" | "dynRest" | "
|
|
12
|
+
export type ParamMode = "required" | "omittable" | "rest" | "dynRest" | "arguments";
|
|
13
13
|
/** One parameter of a signature, as call sites and callee prologues see it.
|
|
14
14
|
* `type` is the ABI type — what the emitted LLVM parameter carries: the
|
|
15
15
|
* checker's `T | undefined` union for `x?: T`, a synthesized `T | undefined`
|
|
@@ -43,11 +43,6 @@ export interface FnSig {
|
|
|
43
43
|
};
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
|
-
/** The one func-type projection of completed parameter shapes. Typed rest
|
|
47
|
-
* parameters keep their packed array as the trailing native ABI slot and
|
|
48
|
-
* mark the value variadic so indirect call sites run completeArgs before
|
|
49
|
-
* callValue. Dynamic rest remains the historical hidden ScrDyn slot, while
|
|
50
|
-
* island rest spells its engine-array slot directly. */
|
|
51
46
|
export declare function funcTypeFromParamShapes(shapes: readonly ParamShape[], ret: IrType): IrType & {
|
|
52
47
|
kind: "func";
|
|
53
48
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InternalCompilerError } from "../../errors.js";
|
|
2
2
|
import * as ts from "../ts7/adapter.js";
|
|
3
3
|
import { bodyReadsArguments } from "../arguments-usage.js";
|
|
4
|
-
import { DYN,
|
|
4
|
+
import { DYN, UNDEFINED_T, VOID, isUnitType, typeEquals, } from "../../ir/ir.js";
|
|
5
5
|
import { isJsSourceFile, isNodeEsmFile } from "../program.js";
|
|
6
6
|
import { genResultRecord, jsOpenObjectType } from "../type-mapper.js";
|
|
7
7
|
import { dynFallbackType } from "./lowerer.js";
|
|
@@ -12,27 +12,19 @@ import { nsPathPrefix } from "./lower-namespaces.js";
|
|
|
12
12
|
import { declSymbolOf } from "./lower-modules.js";
|
|
13
13
|
import { npmStaticPackageOfPath } from "../npm-static.js";
|
|
14
14
|
import { implicitMonoFile, implicitAnyParamSymbolsOf } from "./generic-functions.js";
|
|
15
|
-
/** The one func-type projection of completed parameter shapes. Typed rest
|
|
16
|
-
* parameters keep their packed array as the trailing native ABI slot and
|
|
17
|
-
* mark the value variadic so indirect call sites run completeArgs before
|
|
18
|
-
* callValue. Dynamic rest remains the historical hidden ScrDyn slot, while
|
|
19
|
-
* island rest spells its engine-array slot directly. */
|
|
20
15
|
export function funcTypeFromParamShapes(shapes, ret) {
|
|
21
16
|
const typedRest = shapes.some((shape) => shape.mode === "rest");
|
|
22
17
|
const dynRest = shapes.some((shape) => shape.mode === "dynRest");
|
|
23
18
|
const argumentsAll = shapes.some((shape) => shape.mode === "arguments");
|
|
24
|
-
const islandRest = shapes.some((shape) => shape.mode === "islandRest");
|
|
25
19
|
return {
|
|
26
20
|
kind: "func",
|
|
27
21
|
params: shapes
|
|
28
22
|
.filter((shape) => shape.mode !== "dynRest" && shape.mode !== "arguments")
|
|
29
23
|
.map((shape) => shape.type),
|
|
30
24
|
ret,
|
|
31
|
-
...(typedRest || dynRest ||
|
|
25
|
+
...(typedRest || dynRest || argumentsAll ? { rest: true } : {}),
|
|
32
26
|
...(argumentsAll ? { argumentsAll: true } : {}),
|
|
33
|
-
...(typedRest
|
|
34
|
-
? { restAbi: typedRest ? "typed" : "jsval" }
|
|
35
|
-
: {}),
|
|
27
|
+
...(typedRest ? { restAbi: "typed" } : {}),
|
|
36
28
|
};
|
|
37
29
|
}
|
|
38
30
|
/** Registers `const alias = overloadedDeclaration` as a compile-time
|
|
@@ -148,12 +140,6 @@ export function paramShape(lowerer, param) {
|
|
|
148
140
|
if (moduleNs !== undefined) {
|
|
149
141
|
return { type: moduleNs, mode: param.questionToken ? "omittable" : "required" };
|
|
150
142
|
}
|
|
151
|
-
// Island-handle params (a then-handler receiving a dynamic import's
|
|
152
|
-
// namespace handle — markJsvalHandlerParams): jsval, whatever the
|
|
153
|
-
// contextual type spelled.
|
|
154
|
-
if (ts.isIdentifier(param.name) && lowerer.jsvalParamOverrides.has(param)) {
|
|
155
|
-
return { type: JSVAL, mode: param.questionToken ? "omittable" : "required" };
|
|
156
|
-
}
|
|
157
143
|
if (!ts.isIdentifier(param.name)) {
|
|
158
144
|
// A destructuring pattern parameter — `([label, value]) => ...`,
|
|
159
145
|
// `({ x }) => ...`. The ABI slot carries the SOURCE value (the
|
|
@@ -200,15 +186,7 @@ export function paramShape(lowerer, param) {
|
|
|
200
186
|
// `rest`, and the value only ever calls through the boxed thunk).
|
|
201
187
|
if (isJsSourceFile(param.getSourceFile())) {
|
|
202
188
|
const restMapped = lowerer.mapTypeOf(lowerer.typeOf(param.name));
|
|
203
|
-
//
|
|
204
|
-
// is inference residue, not element information; the binding is
|
|
205
|
-
// the ENGINE's own arguments array (an island handle) and the
|
|
206
|
-
// value crosses as a REST host function (the withPlugins
|
|
207
|
-
// `async (...args) =>` shape). Static builds keep the variadic
|
|
208
|
-
// dyn form for every unmappable JS rest.
|
|
209
|
-
if (restMapped?.kind === "array" && restMapped.elem.kind === "jsval" && lowerer.dynamic) {
|
|
210
|
-
return { type: JSVAL, mode: "islandRest" };
|
|
211
|
-
}
|
|
189
|
+
// Unmapped JS rest parameters use the native variadic checked-value ABI.
|
|
212
190
|
if (restMapped?.kind !== "array") {
|
|
213
191
|
return { type: DYN, mode: "dynRest" };
|
|
214
192
|
}
|
|
@@ -236,10 +214,7 @@ export function paramShape(lowerer, param) {
|
|
|
236
214
|
}
|
|
237
215
|
let type = lowerer.runtimeOptionalBindingType(param.name, lowerer.irTypeOf(param.name));
|
|
238
216
|
const body = param.parent?.body;
|
|
239
|
-
if (isJsSourceFile(param.getSourceFile()) &&
|
|
240
|
-
body &&
|
|
241
|
-
type.kind !== "dyn" &&
|
|
242
|
-
type.kind !== "jsval") {
|
|
217
|
+
if (isJsSourceFile(param.getSourceFile()) && body && type.kind !== "dyn") {
|
|
243
218
|
const symbol = lowerer.checker.getSymbolAtLocation(param.name);
|
|
244
219
|
let acceptsUndefined = false;
|
|
245
220
|
ts.walkPreorder(body, (node) => {
|
|
@@ -267,17 +242,9 @@ export function paramShape(lowerer, param) {
|
|
|
267
242
|
if (type.kind === "void") {
|
|
268
243
|
return { type: DYN, mode: param.questionToken ? "omittable" : "required" };
|
|
269
244
|
}
|
|
270
|
-
if (param.questionToken &&
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
type.kind !== "jsval") {
|
|
274
|
-
// `x?: unknown` where unknown came from an annotation: undefined is
|
|
275
|
-
// absorbed into the hole type, so no undefined ARM exists — but a
|
|
276
|
-
// checked-dynamic slot holds the dyn undefined directly (`bar?: any`
|
|
277
|
-
// — an omitted call passes it, undefinedArgFor), and an island slot
|
|
278
|
-
// the engine's own undefined likewise (`options?: [string?]` — an
|
|
279
|
-
// optional-tuple param, jsval-mapped), so dyn and jsval params stay
|
|
280
|
-
// omittable.
|
|
245
|
+
if (param.questionToken && !lowerer.bareUndefinedArmedUnion(type) && type.kind !== "dyn") {
|
|
246
|
+
// An omitted argument requires an undefined union arm or a native
|
|
247
|
+
// checked-value slot that can hold undefined directly.
|
|
281
248
|
lowerer.unsupported("SC1090", param, `optional parameters of type '${lowerer.fmt(type)}'`);
|
|
282
249
|
}
|
|
283
250
|
return { type, mode: param.questionToken ? "omittable" : "required" };
|
|
@@ -322,7 +289,7 @@ export function paramShapes(lowerer, params, signature, blameOf) {
|
|
|
322
289
|
* so checking only a mapped undefinedT silently erased a valid value.
|
|
323
290
|
* Shared by declared and instantiated signatures, including destructuring. */
|
|
324
291
|
function defaultParameterShape(lowerer, param, raw) {
|
|
325
|
-
if (raw.kind === "dyn"
|
|
292
|
+
if (raw.kind === "dyn") {
|
|
326
293
|
return { type: raw, mode: "omittable", bodyType: raw };
|
|
327
294
|
}
|
|
328
295
|
if (lowerer.bareUndefinedArmedUnion(raw) && param.initializer) {
|
|
@@ -353,7 +320,6 @@ export function checkDefaultParamBodyType(lowerer, param, bodyType) {
|
|
|
353
320
|
bodyType.kind === "regex" ||
|
|
354
321
|
bodyType.kind === "date" ||
|
|
355
322
|
bodyType.kind === "dyn" ||
|
|
356
|
-
bodyType.kind === "jsval" ||
|
|
357
323
|
isUnitType(bodyType)) {
|
|
358
324
|
lowerer.unsupported("SC1090", param, `parameter default values on '${lowerer.fmt(bodyType)}'-typed parameters`);
|
|
359
325
|
}
|
|
@@ -367,16 +333,14 @@ export function checkDefaultParamBodyType(lowerer, param, bodyType) {
|
|
|
367
333
|
export function requireExactArityValue(lowerer, blame, contextual, shapes, funcType) {
|
|
368
334
|
// dynRest params ride the boxed thunk (JS arity — no completed-ABI
|
|
369
335
|
// spelling exists or is needed); they don't gate the value form.
|
|
370
|
-
//
|
|
371
|
-
// slots) don't either: their ABI slot IS the declared param type (no
|
|
336
|
+
// Omittable checked-value slots also keep their declared param type (no
|
|
372
337
|
// synthesized union), so every func-type spelling of the signature
|
|
373
338
|
// already matches and short calls through the value complete with the
|
|
374
|
-
//
|
|
339
|
+
// native undefined value (omittedArgFor).
|
|
375
340
|
if (shapes.every((s) => s.mode === "required" ||
|
|
376
341
|
s.mode === "dynRest" ||
|
|
377
342
|
s.mode === "arguments" ||
|
|
378
|
-
s.mode === "
|
|
379
|
-
(s.mode === "omittable" && (s.type.kind === "dyn" || s.type.kind === "jsval")))) {
|
|
343
|
+
(s.mode === "omittable" && s.type.kind === "dyn"))) {
|
|
380
344
|
return;
|
|
381
345
|
}
|
|
382
346
|
// The type the value FLOWS under must spell the completed ABI: the
|
|
@@ -440,23 +404,11 @@ export function requireExactArityValue(lowerer, blame, contextual, shapes, funcT
|
|
|
440
404
|
npmStaticPackageOfPath(contextual.getSourceFile().fileName) !== null) {
|
|
441
405
|
return;
|
|
442
406
|
}
|
|
443
|
-
// An 'any'-typed slot is the ISLAND boundary: the host-function
|
|
444
|
-
// trampoline already implements JS call semantics over the completed
|
|
445
|
-
// signature — a missing engine argument arrives as undefined and takes
|
|
446
|
-
// the omittable param's undefined arm (which is what triggers the
|
|
447
|
-
// default), surplus arguments drop. So a function with optional/
|
|
448
|
-
// defaulted params may flow into a package API whenever the completed
|
|
449
|
-
// signature can cross at all (jsvalIn re-checks and speaks otherwise) —
|
|
450
|
-
// commander's `.option(flags, desc, collector, [])` pattern.
|
|
451
|
-
if (mapped?.kind === "jsval" &&
|
|
452
|
-
canMarshalTypedFuncIntoIsland(funcType, (id) => lowerer.shapes.get(id), (id) => lowerer.unions.get(id))) {
|
|
453
|
-
return;
|
|
454
|
-
}
|
|
455
407
|
lowerer.unsupported("SC1090", blame, "functions with optional or defaulted parameters as values, except where the " +
|
|
456
408
|
"target type spells the completed signature with required parameters " +
|
|
457
409
|
"(a '(x?: T) => R' function flows into a '(x: T | undefined) => R' slot, " +
|
|
458
|
-
"and a package/'any' slot takes any
|
|
459
|
-
"
|
|
410
|
+
"and a package/'any' slot takes any natively representable signature; " +
|
|
411
|
+
"otherwise call the function directly)");
|
|
460
412
|
}
|
|
461
413
|
export function collectSignature(lowerer, decl) {
|
|
462
414
|
lowerer.collectDeferring(() => declSymbolOf(lowerer, decl), () => lowerer.collectSignatureInner(decl));
|
|
@@ -557,7 +509,7 @@ export function collectSignatureInner(lowerer, decl) {
|
|
|
557
509
|
* Class methods are strict; other parameterized forms require ES modules
|
|
558
510
|
* because sloppy-mode arguments alias named parameters. */
|
|
559
511
|
function appendArgumentsParameter(lowerer, node, shapes, mode) {
|
|
560
|
-
if (shapes.some((s) => s.mode === "rest" || s.mode === "dynRest"
|
|
512
|
+
if (shapes.some((s) => s.mode === "rest" || s.mode === "dynRest") ||
|
|
561
513
|
!(ts.isFunctionExpression(node) ||
|
|
562
514
|
ts.isFunctionDeclaration(node) ||
|
|
563
515
|
ts.isMethodDeclaration(node)) ||
|
|
@@ -660,8 +612,6 @@ export function lambdaSignature(lowerer, node) {
|
|
|
660
612
|
// ASYNC lambdas adopt through the promise: an inferred Promise<record>
|
|
661
613
|
// against a Promise<union> slot returns the union promise (the fiber's
|
|
662
614
|
// returns coerce; the spawn-wrapper ABI still returns a promise).
|
|
663
|
-
// jsval-returning bodies stay out (adoption would force validated
|
|
664
|
-
// exits the writer never asked for).
|
|
665
615
|
// Array and record returns also need the destination during literal
|
|
666
616
|
// construction: a callback building IrStmt[] must wrap each element at
|
|
667
617
|
// that recursive layout instead of first inferring narrower arrays.
|
|
@@ -670,10 +620,8 @@ export function lambdaSignature(lowerer, node) {
|
|
|
670
620
|
const innerRet = isAsyncLike && ret.kind === "promise" ? ret.inner : ret;
|
|
671
621
|
// Union-inferred returns adopt too (a mixed-return body inferring a
|
|
672
622
|
// SUB-union of the slot's union — adopting is a no-op when the two
|
|
673
|
-
// already agree); only jsval stays out.
|
|
674
623
|
if ((ts.isArrowFunction(node) || ts.isFunctionExpression(node)) &&
|
|
675
|
-
(!isAsyncLike || ret.kind === "promise")
|
|
676
|
-
innerRet.kind !== "jsval") {
|
|
624
|
+
(!isAsyncLike || ret.kind === "promise")) {
|
|
677
625
|
// The slot's signature: the contextual type stripped of its nullish
|
|
678
626
|
// parts (an OPTIONAL callback field's context is the whole
|
|
679
627
|
// `(...) | undefined` union) with exactly one call signature — and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-signatures.js","sourceRoot":"","sources":["../../../src/frontend/lowering/call-signatures.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"call-signatures.js","sourceRoot":"","sources":["../../../src/frontend/lowering/call-signatures.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,14 +53,29 @@ export declare class ClassDynamicDispatch {
|
|
|
53
53
|
private enumeration;
|
|
54
54
|
private readonly enumerationClasses;
|
|
55
55
|
process(lowerer: Lowerer, functions: readonly IrFunction[]): boolean;
|
|
56
|
+
/** The receiver's own dynamic properties for a read: undefined while it has
|
|
57
|
+
* none, and never stored, so reads stay valid on published objects. */
|
|
58
|
+
private readPropertyBag;
|
|
59
|
+
/** The bag a read looks a key up in (`%dyn.class.readPropertiesOrEmpty`):
|
|
60
|
+
* the receiver's own properties, or a fresh empty object (not stored) while
|
|
61
|
+
* an instance has none, so inherited Object.prototype members still resolve
|
|
62
|
+
* as on an empty bag. A non-instance is its own bag; an undefined receiver
|
|
63
|
+
* stays undefined so the read throws Node's TypeError. */
|
|
64
|
+
/** A key test on a read-only bag, which is undefined while the object has no
|
|
65
|
+
* own dynamic properties. A shared helper evaluates the bag once and keeps
|
|
66
|
+
* each class branch as small as the storing form. */
|
|
67
|
+
private readBagHas;
|
|
68
|
+
private readPropertyBagOrEmpty;
|
|
56
69
|
/** A known native class can access its shared bag directly. Keep the
|
|
57
70
|
* receiver as an owned parameter so calls and temporary instances retain
|
|
58
71
|
* their ordinary evaluation and lifetime rules without a boxed capsule. */
|
|
59
72
|
private typedPropertyBag;
|
|
60
|
-
/** Prototype state may appear in a later reachable body
|
|
61
|
-
* dispatch worklist closes
|
|
62
|
-
*
|
|
63
|
-
|
|
73
|
+
/** Prototype state may appear in a later reachable body, so read-only bags
|
|
74
|
+
* settle only after the dispatch worklist closes. A read never stores: an
|
|
75
|
+
* absent empty bag stays undefined (callers test it), and an absent
|
|
76
|
+
* prototype-backed bag is produced for this read only. A published object
|
|
77
|
+
* cannot take the store, and Node's reads never write. */
|
|
78
|
+
finalize(lowerer?: Lowerer): void;
|
|
64
79
|
private normalizedDispatches;
|
|
65
80
|
private constructorPropertyBag;
|
|
66
81
|
/** A base capsule and a derived capsule refer to the same native object.
|