@scriptc/compiler 0.4.4 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ambient/scriptc-node-fallback.d.ts +198 -44
- package/ambient/scriptc-overrides.d.ts +21 -0
- package/dist/backend/executable-features.js +3 -0
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/library-pack.js +2 -1
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/linker.js +11 -1
- package/dist/backend/linker.js.map +1 -1
- package/dist/backend/lld.d.ts +9 -0
- package/dist/backend/lld.js +48 -0
- package/dist/backend/lld.js.map +1 -0
- package/dist/backend/lld.test.d.ts +1 -0
- package/dist/backend/lld.test.js +53 -0
- package/dist/backend/lld.test.js.map +1 -0
- package/dist/backend/llvm/appended-array-literals.d.ts +11 -1
- package/dist/backend/llvm/appended-array-literals.js +29 -0
- package/dist/backend/llvm/appended-array-literals.js.map +1 -1
- package/dist/backend/llvm/blocks.js +10 -1
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/bytes-alias.d.ts +13 -4
- package/dist/backend/llvm/bytes-alias.js +16 -5
- package/dist/backend/llvm/bytes-alias.js.map +1 -1
- package/dist/backend/llvm/bytes-bounds.d.ts +5 -1
- package/dist/backend/llvm/bytes-bounds.js +199 -2
- package/dist/backend/llvm/bytes-bounds.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.d.ts +45 -3
- package/dist/backend/llvm/bytes-loop-versions.js +238 -20
- package/dist/backend/llvm/bytes-loop-versions.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.test.js +11 -4
- package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.d.ts +8 -2
- package/dist/backend/llvm/call-lifetimes.js +87 -18
- package/dist/backend/llvm/call-lifetimes.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.test.js +132 -0
- package/dist/backend/llvm/call-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/classes.d.ts +3 -2
- package/dist/backend/llvm/classes.js +4 -4
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/counted-loops.d.ts +14 -2
- package/dist/backend/llvm/counted-loops.js +54 -5
- package/dist/backend/llvm/counted-loops.js.map +1 -1
- package/dist/backend/llvm/debug-info.d.ts +42 -1
- package/dist/backend/llvm/debug-info.js +70 -1
- package/dist/backend/llvm/debug-info.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.js +2 -2
- package/dist/backend/llvm/dense-array-loops.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.test.js +1 -0
- package/dist/backend/llvm/dense-array-loops.test.js.map +1 -1
- package/dist/backend/llvm/dyn.d.ts +65 -8
- package/dist/backend/llvm/dyn.js +375 -40
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emit-function.js +28 -8
- package/dist/backend/llvm/emit-function.js.map +1 -1
- package/dist/backend/llvm/emit-journal.d.ts +8 -4
- package/dist/backend/llvm/emit-journal.js +75 -5
- package/dist/backend/llvm/emit-journal.js.map +1 -1
- package/dist/backend/llvm/emit-module.d.ts +4 -0
- package/dist/backend/llvm/emit-module.js +58 -23
- package/dist/backend/llvm/emit-module.js.map +1 -1
- package/dist/backend/llvm/emit-statements.js +297 -28
- package/dist/backend/llvm/emit-statements.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +134 -13
- package/dist/backend/llvm/emitter.js +514 -87
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.d.ts +6 -4
- package/dist/backend/llvm/expr-bytes.js +31 -8
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js +13 -11
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.d.ts +11 -0
- package/dist/backend/llvm/expr-containers.js +87 -9
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +3 -0
- package/dist/backend/llvm/expr-control.js +83 -0
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.d.ts +1 -1
- package/dist/backend/llvm/expr-dynamic.js +22 -4
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +107 -9
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +95 -22
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/forked-analysis.d.ts +8 -0
- package/dist/backend/llvm/forked-analysis.js +43 -0
- package/dist/backend/llvm/forked-analysis.js.map +1 -0
- package/dist/backend/llvm/integer-values.d.ts +7 -0
- package/dist/backend/llvm/integer-values.js +42 -2
- package/dist/backend/llvm/integer-values.js.map +1 -1
- package/dist/backend/llvm/integer-views.d.ts +2 -1
- package/dist/backend/llvm/integer-views.js +12 -1
- package/dist/backend/llvm/integer-views.js.map +1 -1
- package/dist/backend/llvm/js-ic.d.ts +4 -0
- package/dist/backend/llvm/js-ic.js +133 -15
- package/dist/backend/llvm/js-ic.js.map +1 -1
- package/dist/backend/llvm/layouts.d.ts +1 -0
- package/dist/backend/llvm/layouts.js.map +1 -1
- package/dist/backend/llvm/lazy-captures.d.ts +6 -1
- package/dist/backend/llvm/lazy-captures.js +10 -5
- package/dist/backend/llvm/lazy-captures.js.map +1 -1
- package/dist/backend/llvm/lib-abi.d.ts +5 -0
- package/dist/backend/llvm/lib-abi.js +19 -0
- package/dist/backend/llvm/lib-abi.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +128 -42
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-filesystem.d.ts +10 -0
- package/dist/backend/llvm/lib-filesystem.js +32 -0
- package/dist/backend/llvm/lib-filesystem.js.map +1 -1
- package/dist/backend/llvm/lib-http2.js +2 -2
- package/dist/backend/llvm/lib-http2.js.map +1 -1
- package/dist/backend/llvm/lib-network.js +2 -0
- package/dist/backend/llvm/lib-network.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +11 -0
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +43 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-tls.js +28 -3
- package/dist/backend/llvm/lib-tls.js.map +1 -1
- package/dist/backend/llvm/local-union-storage.test.js +2 -1
- package/dist/backend/llvm/local-union-storage.test.js.map +1 -1
- package/dist/backend/llvm/loop-array-borrows.d.ts +4 -1
- package/dist/backend/llvm/loop-array-borrows.js +11 -5
- package/dist/backend/llvm/loop-array-borrows.js.map +1 -1
- package/dist/backend/llvm/map-entry-fusion.d.ts +5 -3
- package/dist/backend/llvm/map-entry-fusion.js +20 -11
- package/dist/backend/llvm/map-entry-fusion.js.map +1 -1
- package/dist/backend/llvm/map-entry-fusion.test.js +14 -6
- package/dist/backend/llvm/map-entry-fusion.test.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.d.ts +16 -6
- package/dist/backend/llvm/map-number-lookup.js +41 -9
- package/dist/backend/llvm/map-number-lookup.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.test.js +70 -2
- package/dist/backend/llvm/map-number-lookup.test.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.d.ts +25 -2
- package/dist/backend/llvm/map-read-lifetimes.js +136 -6
- package/dist/backend/llvm/map-read-lifetimes.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.test.js +8 -3
- package/dist/backend/llvm/map-read-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.d.ts +5 -0
- package/dist/backend/llvm/nullable-unions.js +29 -2
- package/dist/backend/llvm/nullable-unions.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.test.js +25 -1
- package/dist/backend/llvm/nullable-unions.test.js.map +1 -1
- package/dist/backend/llvm/record-union-keys.test.d.ts +1 -0
- package/dist/backend/llvm/record-union-keys.test.js +161 -0
- package/dist/backend/llvm/record-union-keys.test.js.map +1 -0
- package/dist/backend/llvm/serialized-ir-emission.test.js +2 -0
- package/dist/backend/llvm/serialized-ir-emission.test.js.map +1 -1
- package/dist/backend/llvm/shapes.d.ts +4 -5
- package/dist/backend/llvm/shapes.js +104 -51
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +14 -2
- package/dist/backend/llvm/shapes.test.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.d.ts +50 -3
- package/dist/backend/llvm/speculative-integers.js +411 -24
- package/dist/backend/llvm/speculative-integers.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.test.js +103 -1
- package/dist/backend/llvm/speculative-integers.test.js.map +1 -1
- package/dist/backend/llvm/split.d.ts +10 -1
- package/dist/backend/llvm/split.js +243 -59
- package/dist/backend/llvm/split.js.map +1 -1
- package/dist/backend/llvm/split.test.js +92 -13
- package/dist/backend/llvm/split.test.js.map +1 -1
- package/dist/backend/llvm/stack-objects.test.js +3 -2
- package/dist/backend/llvm/stack-objects.test.js.map +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/string-reads.d.ts +13 -0
- package/dist/backend/llvm/string-reads.js +22 -0
- package/dist/backend/llvm/string-reads.js.map +1 -1
- package/dist/backend/llvm/string-slices.d.ts +36 -2
- package/dist/backend/llvm/string-slices.js +308 -12
- package/dist/backend/llvm/string-slices.js.map +1 -1
- package/dist/backend/llvm/string-slices.test.js +182 -3
- package/dist/backend/llvm/string-slices.test.js.map +1 -1
- package/dist/backend/llvm/string-unit-versions.d.ts +11 -0
- package/dist/backend/llvm/string-unit-versions.js +191 -0
- package/dist/backend/llvm/string-unit-versions.js.map +1 -0
- package/dist/backend/llvm/string-unit-versions.test.d.ts +1 -0
- package/dist/backend/llvm/string-unit-versions.test.js +117 -0
- package/dist/backend/llvm/string-unit-versions.test.js.map +1 -0
- package/dist/backend/llvm/test-boxed-unions.d.ts +5 -2
- package/dist/backend/llvm/test-boxed-unions.js +24 -8
- package/dist/backend/llvm/test-boxed-unions.js.map +1 -1
- package/dist/backend/llvm/unwind-abi.d.ts +52 -0
- package/dist/backend/llvm/unwind-abi.js +498 -0
- package/dist/backend/llvm/unwind-abi.js.map +1 -0
- package/dist/backend/llvm/unwind-abi.test.d.ts +1 -0
- package/dist/backend/llvm/unwind-abi.test.js +255 -0
- package/dist/backend/llvm/unwind-abi.test.js.map +1 -0
- package/dist/backend/llvm/wrapping-sums.d.ts +14 -10
- package/dist/backend/llvm/wrapping-sums.js +31 -14
- package/dist/backend/llvm/wrapping-sums.js.map +1 -1
- package/dist/backend/loop-polls.d.ts +6 -0
- package/dist/backend/loop-polls.js +24 -0
- package/dist/backend/loop-polls.js.map +1 -1
- package/dist/backend/may-throw.js +8 -8
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/native/contracts.d.ts +12 -2
- package/dist/backend/native/executable.js +48 -6
- package/dist/backend/native/executable.js.map +1 -1
- package/dist/backend/native/library.js +4 -3
- package/dist/backend/native/library.js.map +1 -1
- package/dist/backend/native/program-shards.d.ts +2 -2
- package/dist/backend/native/program-shards.js +2 -2
- package/dist/backend/native/program-shards.js.map +1 -1
- package/dist/backend/native/runtime-inputs.d.ts +1 -1
- package/dist/backend/native/runtime-inputs.js +4 -1
- package/dist/backend/native/runtime-inputs.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-codegen.d.ts +3 -1
- package/dist/backend/native-codegen.js +4 -3
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-link-info-core.d.ts +8 -0
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/native-profile.d.ts +14 -0
- package/dist/backend/native-profile.js +28 -0
- package/dist/backend/native-profile.js.map +1 -1
- package/dist/backend/native-profile.test.js +8 -1
- package/dist/backend/native-profile.test.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +11 -11
- package/dist/backend/native-toolchain.test.js.map +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 +3 -1
- package/dist/backend/runtime-pack-core.js +2 -0
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-native.d.ts +17 -5
- package/dist/backend/runtime-pack-native.js +186 -14
- package/dist/backend/runtime-pack-native.js.map +1 -1
- package/dist/backend/runtime-pack-native.test.js +160 -3
- package/dist/backend/runtime-pack-native.test.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/vendor-archives.d.ts +4 -1
- package/dist/backend/vendor-archives.js +78 -4
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/backend/vendor-inputs.d.ts +3 -1
- package/dist/backend/vendor-inputs.js +3 -1
- package/dist/backend/vendor-inputs.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 +78 -11
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/usage.d.ts +22 -1
- package/dist/cli/usage.js +33 -3
- package/dist/cli/usage.js.map +1 -1
- package/dist/compat/fetch-profile.d.ts +15 -6
- package/dist/compat/fetch-profile.js +519 -498
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/compile-types.d.ts +7 -0
- package/dist/contracts/int32-elements.js +2 -1
- package/dist/contracts/int32-elements.js.map +1 -1
- package/dist/coverage/report.d.ts +14 -3
- package/dist/coverage/report.js +216 -0
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +25 -25
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/coverage/verdict-cache.d.ts +2 -0
- package/dist/coverage/verdict-cache.js +10 -1
- package/dist/coverage/verdict-cache.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +19 -0
- package/dist/diagnostics/diagnostic.js +52 -1
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/envelope.d.ts +54 -0
- package/dist/diagnostics/envelope.js +7 -1
- package/dist/diagnostics/envelope.js.map +1 -1
- package/dist/diagnostics/render.d.ts +7 -0
- package/dist/diagnostics/render.js +15 -4
- package/dist/diagnostics/render.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +3 -0
- package/dist/executable/executable-cache.js +1 -0
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +1 -0
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/executable/prepare.js +5 -1
- package/dist/executable/prepare.js.map +1 -1
- package/dist/frontend/analysis.js +26 -2
- package/dist/frontend/analysis.js.map +1 -1
- package/dist/frontend/fork-target.js +67 -1
- package/dist/frontend/fork-target.js.map +1 -1
- package/dist/frontend/fork-target.test.js +43 -0
- package/dist/frontend/fork-target.test.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +4 -1
- package/dist/frontend/input-tracker.js +42 -4
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +45 -0
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lowering/abstract-equality.js +38 -1
- package/dist/frontend/lowering/abstract-equality.js.map +1 -1
- package/dist/frontend/lowering/argument-counts.d.ts +36 -0
- package/dist/frontend/lowering/argument-counts.js +201 -0
- package/dist/frontend/lowering/argument-counts.js.map +1 -0
- package/dist/frontend/lowering/array-values.d.ts +27 -0
- package/dist/frontend/lowering/array-values.js +112 -0
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/binding-analysis.d.ts +3 -0
- package/dist/frontend/lowering/binding-analysis.js +9 -3
- package/dist/frontend/lowering/binding-analysis.js.map +1 -1
- package/dist/frontend/lowering/builtin-namespaces.d.ts +13 -0
- package/dist/frontend/lowering/builtin-namespaces.js +238 -0
- package/dist/frontend/lowering/builtin-namespaces.js.map +1 -0
- package/dist/frontend/lowering/builtins/compression.d.ts +4 -3
- package/dist/frontend/lowering/builtins/compression.js +86 -5
- package/dist/frontend/lowering/builtins/compression.js.map +1 -1
- package/dist/frontend/lowering/builtins/date-classes.js +17 -1
- package/dist/frontend/lowering/builtins/date-classes.js.map +1 -1
- package/dist/frontend/lowering/builtins/dates.d.ts +19 -5
- package/dist/frontend/lowering/builtins/dates.js +159 -8
- package/dist/frontend/lowering/builtins/dates.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js +26 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-streams.d.ts +4 -0
- package/dist/frontend/lowering/builtins/fs-streams.js +24 -1
- package/dist/frontend/lowering/builtins/fs-streams.js.map +1 -1
- package/dist/frontend/lowering/builtins/json.d.ts +4 -1
- package/dist/frontend/lowering/builtins/json.js +9 -3
- package/dist/frontend/lowering/builtins/json.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-bindings.d.ts +6 -0
- package/dist/frontend/lowering/builtins/module-bindings.js +23 -1
- package/dist/frontend/lowering/builtins/module-bindings.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-resolution.d.ts +5 -0
- package/dist/frontend/lowering/builtins/module-resolution.js +95 -4
- package/dist/frontend/lowering/builtins/module-resolution.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.js +144 -1
- 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 +22 -11
- package/dist/frontend/lowering/builtins/readline.js.map +1 -1
- package/dist/frontend/lowering/builtins/reflection.d.ts +4 -1
- package/dist/frontend/lowering/builtins/reflection.js +41 -1
- package/dist/frontend/lowering/builtins/reflection.js.map +1 -1
- package/dist/frontend/lowering/builtins/text-codecs.js +31 -2
- package/dist/frontend/lowering/builtins/text-codecs.js.map +1 -1
- package/dist/frontend/lowering/builtins/webassembly.js +4 -1
- package/dist/frontend/lowering/builtins/webassembly.js.map +1 -1
- package/dist/frontend/lowering/builtins/x509.d.ts +33 -0
- package/dist/frontend/lowering/builtins/x509.js +431 -0
- package/dist/frontend/lowering/builtins/x509.js.map +1 -0
- package/dist/frontend/lowering/call-arguments.js +44 -0
- package/dist/frontend/lowering/call-arguments.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.js +1 -1
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/cjs-inline-require.js +1 -1
- package/dist/frontend/lowering/cjs-inline-require.js.map +1 -1
- package/dist/frontend/lowering/class-attributes.d.ts +7 -0
- package/dist/frontend/lowering/class-attributes.js +52 -10
- package/dist/frontend/lowering/class-attributes.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +13 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.js +174 -9
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-method-mutations.js +43 -8
- package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
- package/dist/frontend/lowering/class-method-values.js +71 -1
- package/dist/frontend/lowering/class-method-values.js.map +1 -1
- package/dist/frontend/lowering/class-prototypes.d.ts +8 -0
- package/dist/frontend/lowering/class-prototypes.js +83 -2
- package/dist/frontend/lowering/class-prototypes.js.map +1 -1
- package/dist/frontend/lowering/class-to-primitive.d.ts +5 -0
- package/dist/frontend/lowering/class-to-primitive.js +79 -7
- package/dist/frontend/lowering/class-to-primitive.js.map +1 -1
- package/dist/frontend/lowering/coercions/state.d.ts +1 -0
- package/dist/frontend/lowering/coercions/state.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural.js +89 -10
- package/dist/frontend/lowering/coercions/structural.js.map +1 -1
- package/dist/frontend/lowering/coercions/unions.d.ts +4 -2
- package/dist/frontend/lowering/coercions/unions.js +13 -6
- package/dist/frontend/lowering/coercions/unions.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.js +51 -15
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.d.ts +4 -1
- package/dist/frontend/lowering/containers/array-construction.js +102 -9
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +85 -5
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/array-pipelines.js +346 -77
- package/dist/frontend/lowering/containers/array-pipelines.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.js +11 -1
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-methods.js +12 -0
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/indexed-objects.js +73 -25
- package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -1
- package/dist/frontend/lowering/containers/iterator-helpers.d.ts +4 -4
- package/dist/frontend/lowering/containers/iterator-helpers.js +8 -2
- package/dist/frontend/lowering/containers/iterator-helpers.js.map +1 -1
- package/dist/frontend/lowering/containers/replacer-params.d.ts +37 -0
- package/dist/frontend/lowering/containers/replacer-params.js +294 -0
- package/dist/frontend/lowering/containers/replacer-params.js.map +1 -0
- package/dist/frontend/lowering/containers/replacer-params.test.d.ts +1 -0
- package/dist/frontend/lowering/containers/replacer-params.test.js +61 -0
- package/dist/frontend/lowering/containers/replacer-params.test.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +2 -1
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/containers/string-replacement.js +7 -3
- package/dist/frontend/lowering/containers/string-replacement.js.map +1 -1
- package/dist/frontend/lowering/cycle-initialization.d.ts +4 -2
- package/dist/frontend/lowering/cycle-initialization.js +4 -1
- package/dist/frontend/lowering/cycle-initialization.js.map +1 -1
- package/dist/frontend/lowering/date-values.d.ts +9 -6
- package/dist/frontend/lowering/date-values.js +63 -16
- package/dist/frontend/lowering/date-values.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.js +16 -8
- package/dist/frontend/lowering/deferred-module-initializers.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.test.js +22 -6
- package/dist/frontend/lowering/deferred-module-initializers.test.js.map +1 -1
- package/dist/frontend/lowering/dispatch-sites.js +1 -0
- package/dist/frontend/lowering/dispatch-sites.js.map +1 -1
- package/dist/frontend/lowering/expressions/array-literals.d.ts +0 -8
- package/dist/frontend/lowering/expressions/array-literals.js +119 -26
- package/dist/frontend/lowering/expressions/array-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/binary.js +38 -0
- package/dist/frontend/lowering/expressions/binary.js.map +1 -1
- package/dist/frontend/lowering/expressions/element-access.js +50 -6
- package/dist/frontend/lowering/expressions/element-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/identifiers.js +35 -3
- package/dist/frontend/lowering/expressions/identifiers.js.map +1 -1
- package/dist/frontend/lowering/expressions/narrowing.d.ts +2 -1
- package/dist/frontend/lowering/expressions/narrowing.js +8 -1
- package/dist/frontend/lowering/expressions/narrowing.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.js +8 -2
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/property-access.js +65 -34
- package/dist/frontend/lowering/expressions/property-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/relational.js +76 -11
- package/dist/frontend/lowering/expressions/relational.js.map +1 -1
- package/dist/frontend/lowering/expressions/typeof.js +6 -1
- package/dist/frontend/lowering/expressions/typeof.js.map +1 -1
- package/dist/frontend/lowering/expressions/updates.js +20 -11
- package/dist/frontend/lowering/expressions/updates.js.map +1 -1
- package/dist/frontend/lowering/f64-handles.d.ts +8 -0
- package/dist/frontend/lowering/f64-handles.js +16 -0
- package/dist/frontend/lowering/f64-handles.js.map +1 -0
- package/dist/frontend/lowering/frozen-records.d.ts +5 -0
- package/dist/frontend/lowering/frozen-records.js +12 -4
- package/dist/frontend/lowering/frozen-records.js.map +1 -1
- package/dist/frontend/lowering/function-context.d.ts +3 -0
- package/dist/frontend/lowering/function-context.js.map +1 -1
- package/dist/frontend/lowering/function-returns.js +15 -0
- package/dist/frontend/lowering/function-returns.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.js +17 -6
- package/dist/frontend/lowering/generic-functions.js.map +1 -1
- package/dist/frontend/lowering/instantiation-path.d.ts +3 -2
- package/dist/frontend/lowering/instantiation-path.js.map +1 -1
- package/dist/frontend/lowering/instantiation-path.test.js +6 -4
- package/dist/frontend/lowering/instantiation-path.test.js.map +1 -1
- package/dist/frontend/lowering/iterator-adapters.d.ts +4 -2
- package/dist/frontend/lowering/iterator-adapters.js +26 -33
- package/dist/frontend/lowering/iterator-adapters.js.map +1 -1
- package/dist/frontend/lowering/js-collection-types.d.ts +11 -0
- package/dist/frontend/lowering/js-collection-types.js +490 -0
- package/dist/frontend/lowering/js-collection-types.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.js +2 -2
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.d.ts +14 -0
- package/dist/frontend/lowering/lower-assert.js +283 -26
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-builtin-values.js +3 -3
- package/dist/frontend/lowering/lower-builtin-values.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.js +97 -7
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +59 -7
- package/dist/frontend/lowering/lower-classes.js +647 -176
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-console.js +2 -1
- package/dist/frontend/lowering/lower-console.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +5 -0
- package/dist/frontend/lowering/lower-exprs.js +52 -5
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.js +7 -0
- package/dist/frontend/lowering/lower-functions.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.js +4 -3
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +264 -46
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +28 -17
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.d.ts +3 -0
- package/dist/frontend/lowering/lower-namespaces.js +44 -1
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.js +1 -1
- package/dist/frontend/lowering/lower-node-module.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +126 -32
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stdlib.d.ts +4 -1
- package/dist/frontend/lowering/lower-stdlib.js +51 -37
- package/dist/frontend/lowering/lower-stdlib.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.js +294 -46
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +515 -121
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +52 -10
- package/dist/frontend/lowering/lowerer.js +249 -37
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/lowerer.test.js +1 -1
- package/dist/frontend/lowering/lowerer.test.js.map +1 -1
- package/dist/frontend/lowering/module-namespace-elements.d.ts +13 -0
- package/dist/frontend/lowering/module-namespace-elements.js +118 -1
- package/dist/frontend/lowering/module-namespace-elements.js.map +1 -1
- package/dist/frontend/lowering/private-brands.d.ts +5 -0
- package/dist/frontend/lowering/private-brands.js +39 -0
- package/dist/frontend/lowering/private-brands.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-elements.d.ts +6 -0
- package/dist/frontend/lowering/runtime-optional-elements.js +14 -3
- package/dist/frontend/lowering/runtime-optional-elements.js.map +1 -1
- package/dist/frontend/lowering/sanitize-class-types.js +2 -0
- package/dist/frontend/lowering/sanitize-class-types.js.map +1 -1
- package/dist/frontend/lowering/site-dependencies.d.ts +7 -2
- package/dist/frontend/lowering/site-dependencies.js +0 -15
- package/dist/frontend/lowering/site-dependencies.js.map +1 -1
- package/dist/frontend/lowering/site-dependencies.test.js +7 -5
- package/dist/frontend/lowering/site-dependencies.test.js.map +1 -1
- package/dist/frontend/lowering/string-index-bounds.d.ts +7 -4
- package/dist/frontend/lowering/string-index-bounds.js +21 -7
- package/dist/frontend/lowering/string-index-bounds.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +12 -3
- package/dist/frontend/lowering/surfaces.js +1576 -1539
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/lowering/symbol-fields.d.ts +7 -0
- package/dist/frontend/lowering/symbol-fields.js +45 -2
- package/dist/frontend/lowering/symbol-fields.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.d.ts +5 -2
- package/dist/frontend/lowering/union-narrow.js +6 -3
- package/dist/frontend/lowering/union-narrow.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.test.js +10 -0
- package/dist/frontend/lowering/union-narrow.test.js.map +1 -1
- package/dist/frontend/npm-static-namespace-defaults.d.ts +6 -0
- package/dist/frontend/npm-static-namespace-defaults.js +163 -0
- package/dist/frontend/npm-static-namespace-defaults.js.map +1 -0
- package/dist/frontend/npm-static-namespace-defaults.test.d.ts +1 -0
- package/dist/frontend/npm-static-namespace-defaults.test.js +72 -0
- package/dist/frontend/npm-static-namespace-defaults.test.js.map +1 -0
- package/dist/frontend/npm-static-prune.js +152 -111
- package/dist/frontend/npm-static-prune.js.map +1 -1
- package/dist/frontend/npm-static.js +35 -32
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/package-shims.d.ts +7 -4
- package/dist/frontend/package-shims.js +39 -40
- package/dist/frontend/package-shims.js.map +1 -1
- package/dist/frontend/pipeline-native.d.ts +2 -2
- package/dist/frontend/pipeline-native.js +2 -2
- package/dist/frontend/pipeline-native.js.map +1 -1
- package/dist/frontend/pipeline.d.ts +19 -2
- package/dist/frontend/pipeline.js +102 -11
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/program-analysis.d.ts +2 -0
- package/dist/frontend/program-analysis.js +3 -0
- package/dist/frontend/program-analysis.js.map +1 -1
- package/dist/frontend/program.d.ts +15 -0
- package/dist/frontend/program.js +227 -64
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.d.ts +2 -0
- package/dist/frontend/resolve.js +5 -0
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/services.d.ts +3 -0
- package/dist/frontend/services.js +31 -4
- package/dist/frontend/services.js.map +1 -1
- package/dist/frontend/shape-inference/analyze.d.ts +93 -0
- package/dist/frontend/shape-inference/analyze.js +3138 -0
- package/dist/frontend/shape-inference/analyze.js.map +1 -0
- package/dist/frontend/shape-inference/constant-graphs.d.ts +54 -0
- package/dist/frontend/shape-inference/constant-graphs.js +357 -0
- package/dist/frontend/shape-inference/constant-graphs.js.map +1 -0
- package/dist/frontend/shape-inference/domain.d.ts +32 -0
- package/dist/frontend/shape-inference/domain.js +104 -0
- package/dist/frontend/shape-inference/domain.js.map +1 -0
- package/dist/frontend/shape-inference/index.d.ts +7 -0
- package/dist/frontend/shape-inference/index.js +19 -0
- package/dist/frontend/shape-inference/index.js.map +1 -0
- package/dist/frontend/shape-inference/report.d.ts +21 -0
- package/dist/frontend/shape-inference/report.js +348 -0
- package/dist/frontend/shape-inference/report.js.map +1 -0
- package/dist/frontend/token-equivalence.d.ts +6 -0
- package/dist/frontend/token-equivalence.js +66 -9
- package/dist/frontend/token-equivalence.js.map +1 -1
- package/dist/frontend/token-equivalence.test.js +33 -1
- package/dist/frontend/token-equivalence.test.js.map +1 -1
- package/dist/frontend/ts7/checker-features.d.ts +15 -0
- package/dist/frontend/ts7/checker-features.js +45 -0
- package/dist/frontend/ts7/checker-features.js.map +1 -0
- package/dist/frontend/ts7/checker-features.test.d.ts +1 -0
- package/dist/frontend/ts7/checker-features.test.js +40 -0
- package/dist/frontend/ts7/checker-features.test.js.map +1 -0
- package/dist/frontend/ts7/checker-server.d.ts +19 -0
- package/dist/frontend/ts7/checker-server.js +46 -0
- package/dist/frontend/ts7/checker-server.js.map +1 -0
- package/dist/frontend/ts7/checker-server.test.d.ts +1 -0
- package/dist/frontend/ts7/checker-server.test.js +38 -0
- package/dist/frontend/ts7/checker-server.test.js.map +1 -0
- package/dist/frontend/ts7/lib-diagnostics.js +39 -13
- package/dist/frontend/ts7/lib-diagnostics.js.map +1 -1
- package/dist/frontend/ts7/lib-diagnostics.test.js +40 -0
- package/dist/frontend/ts7/lib-diagnostics.test.js.map +1 -1
- package/dist/frontend/ts7/native-api.d.ts +1 -0
- package/dist/frontend/ts7/native-api.js +25 -2
- package/dist/frontend/ts7/native-api.js.map +1 -1
- package/dist/frontend/ts7/native-process.d.ts +9 -2
- package/dist/frontend/ts7/native-process.js +22 -4
- package/dist/frontend/ts7/native-process.js.map +1 -1
- package/dist/frontend/ts7/program-host.d.ts +11 -0
- package/dist/frontend/ts7/program-host.js +36 -22
- package/dist/frontend/ts7/program-host.js.map +1 -1
- package/dist/frontend/ts7/semantic-json.d.ts +9 -0
- package/dist/frontend/ts7/semantic-json.js +25 -5
- package/dist/frontend/ts7/semantic-json.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.js +3 -1
- package/dist/frontend/ts7/semantic-model.js.map +1 -1
- package/dist/frontend/ts7/source-parser.js +3 -1
- package/dist/frontend/ts7/source-parser.js.map +1 -1
- package/dist/frontend/tsc-codes.js +10 -0
- package/dist/frontend/tsc-codes.js.map +1 -1
- package/dist/frontend/type-mapper.d.ts +18 -6
- package/dist/frontend/type-mapper.js +160 -28
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.d.ts +44 -3
- package/dist/index.js +27 -8
- package/dist/index.js.map +1 -1
- package/dist/ir/builtin-effects.js +29 -0
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +7 -2
- package/dist/ir/builtin-signatures.js +5104 -4950
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/callback-specialization.d.ts +4 -2
- package/dist/ir/callback-specialization.js +24 -9
- package/dist/ir/callback-specialization.js.map +1 -1
- package/dist/ir/capture-values.js +4 -2
- package/dist/ir/capture-values.js.map +1 -1
- package/dist/ir/char-unit-locals.d.ts +12 -2
- package/dist/ir/char-unit-locals.js +400 -58
- package/dist/ir/char-unit-locals.js.map +1 -1
- package/dist/ir/char-unit-locals.test.js +111 -0
- package/dist/ir/char-unit-locals.test.js.map +1 -1
- package/dist/ir/constant-globals.js +18 -4
- package/dist/ir/constant-globals.js.map +1 -1
- package/dist/ir/expression-inlining.d.ts +15 -0
- package/dist/ir/expression-inlining.js +166 -0
- package/dist/ir/expression-inlining.js.map +1 -0
- package/dist/ir/expression-inlining.test.d.ts +1 -0
- package/dist/ir/expression-inlining.test.js +123 -0
- package/dist/ir/expression-inlining.test.js.map +1 -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 +6 -0
- package/dist/ir/function-references.test.js.map +1 -1
- package/dist/ir/int32-arrays.d.ts +27 -6
- package/dist/ir/int32-arrays.js +106 -18
- package/dist/ir/int32-arrays.js.map +1 -1
- package/dist/ir/int32-slots.d.ts +26 -1
- package/dist/ir/int32-slots.js +284 -5
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/int32-slots.test.js +5 -0
- package/dist/ir/int32-slots.test.js.map +1 -1
- package/dist/ir/integer-loop-facts.d.ts +5 -0
- package/dist/ir/integer-loop-facts.js +90 -1
- package/dist/ir/integer-loop-facts.js.map +1 -1
- package/dist/ir/integer-loops.d.ts +14 -1
- package/dist/ir/integer-loops.js +93 -7
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/integer-loops.test.js +70 -0
- package/dist/ir/integer-loops.test.js.map +1 -1
- package/dist/ir/integer-ranges.js +18 -2
- package/dist/ir/integer-ranges.js.map +1 -1
- package/dist/ir/integer-ranges.test.js +64 -4
- package/dist/ir/integer-ranges.test.js.map +1 -1
- package/dist/ir/ir.d.ts +50 -8
- package/dist/ir/ir.js +38 -12
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/js-ic.d.ts +25 -5
- package/dist/ir/js-ic.js +93 -13
- package/dist/ir/js-ic.js.map +1 -1
- package/dist/ir/js-ic.test.js +153 -0
- package/dist/ir/js-ic.test.js.map +1 -1
- package/dist/ir/node-index.d.ts +7 -0
- package/dist/ir/node-index.js +32 -0
- package/dist/ir/node-index.js.map +1 -1
- package/dist/ir/receiver-readers.d.ts +6 -1
- package/dist/ir/receiver-readers.js +53 -28
- package/dist/ir/receiver-readers.js.map +1 -1
- package/dist/ir/row-pairs.d.ts +15 -0
- package/dist/ir/row-pairs.js +373 -0
- package/dist/ir/row-pairs.js.map +1 -0
- package/dist/ir/row-pairs.test.d.ts +1 -0
- package/dist/ir/row-pairs.test.js +129 -0
- package/dist/ir/row-pairs.test.js.map +1 -0
- package/dist/ir/runtime-features.d.ts +17 -4
- package/dist/ir/runtime-features.js +69 -12
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/scalar-records.d.ts +15 -0
- package/dist/ir/scalar-records.js +301 -1
- package/dist/ir/scalar-records.js.map +1 -1
- package/dist/ir/scalar-records.test.js +181 -1
- package/dist/ir/scalar-records.test.js.map +1 -1
- package/dist/ir/self-captures.js +8 -0
- package/dist/ir/self-captures.js.map +1 -1
- package/dist/ir/validate.js +37 -28
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/fence-eval.js +4 -4
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/ir-policy.js +4 -0
- package/dist/library/ir-policy.js.map +1 -1
- package/dist/library/library-cache.d.ts +1 -0
- package/dist/library/library-cache.js +1 -0
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +13 -0
- package/dist/library/library-cache.test.js.map +1 -1
- package/dist/native/cache.d.ts +5 -1
- package/dist/native/cache.js +15 -3
- package/dist/native/cache.js.map +1 -1
- package/dist/native/cli.js +6 -0
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.d.ts +3 -0
- package/dist/native/compiler.js +72 -26
- package/dist/native/compiler.js.map +1 -1
- package/dist/native/compiler.test.js +87 -2
- package/dist/native/compiler.test.js.map +1 -1
- package/dist/native/executable-cache-open.test.d.ts +1 -0
- package/dist/native/executable-cache-open.test.js +80 -0
- package/dist/native/executable-cache-open.test.js.map +1 -0
- package/dist/native/executable-cache.d.ts +43 -3
- package/dist/native/executable-cache.js +177 -36
- package/dist/native/executable-cache.js.map +1 -1
- package/dist/native/executable-cache.test.js +103 -0
- package/dist/native/executable-cache.test.js.map +1 -1
- package/dist/native/prepare.js +38 -16
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/prepare.test.js +51 -1
- package/dist/native/prepare.test.js.map +1 -1
- package/dist/native/sanitizer.d.ts +1 -1
- package/dist/native/sanitizer.js +17 -3
- package/dist/native/sanitizer.js.map +1 -1
- package/dist/native/sanitizer.test.js +4 -0
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/node-islands/classify.d.ts +14 -0
- package/dist/node-islands/classify.js +114 -0
- package/dist/node-islands/classify.js.map +1 -0
- package/dist/node-islands/detect.d.ts +13 -0
- package/dist/node-islands/detect.js +805 -0
- package/dist/node-islands/detect.js.map +1 -0
- package/dist/node-islands/detect.test.d.ts +1 -0
- package/dist/node-islands/detect.test.js +136 -0
- package/dist/node-islands/detect.test.js.map +1 -0
- package/dist/node-islands/origin.d.ts +21 -0
- package/dist/node-islands/origin.js +60 -0
- package/dist/node-islands/origin.js.map +1 -0
- package/dist/node-islands/policy.d.ts +49 -0
- package/dist/node-islands/policy.js +130 -0
- package/dist/node-islands/policy.js.map +1 -0
- package/dist/node-islands/report.d.ts +22 -0
- package/dist/node-islands/report.js +326 -0
- package/dist/node-islands/report.js.map +1 -0
- package/dist/node-islands/report.test.d.ts +1 -0
- package/dist/node-islands/report.test.js +228 -0
- package/dist/node-islands/report.test.js.map +1 -0
- package/dist/node-islands/rules.d.ts +20 -0
- package/dist/node-islands/rules.js +91 -0
- package/dist/node-islands/rules.js.map +1 -0
- package/dist/node-islands/scan.d.ts +53 -0
- package/dist/node-islands/scan.js +104 -0
- package/dist/node-islands/scan.js.map +1 -0
- package/dist/node-islands/summary.d.ts +78 -0
- package/dist/node-islands/summary.js +26 -0
- package/dist/node-islands/summary.js.map +1 -0
- package/dist/project-config.d.ts +50 -0
- package/dist/project-config.js +372 -0
- package/dist/project-config.js.map +1 -0
- package/dist/project-config.test.d.ts +1 -0
- package/dist/project-config.test.js +154 -0
- package/dist/project-config.test.js.map +1 -0
- package/dist/wasm/discover.js +6 -31
- package/dist/wasm/discover.js.map +1 -1
- package/package.json +20 -20
- package/surface-manifest.json +20 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-attributes.js","sourceRoot":"","sources":["../../../src/frontend/lowering/class-attributes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"class-attributes.js","sourceRoot":"","sources":["../../../src/frontend/lowering/class-attributes.ts"],"names":[],"mappings":"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"}
|
|
@@ -115,6 +115,19 @@ export declare class ClassDynamicDispatch {
|
|
|
115
115
|
* own dynamic properties. A shared helper evaluates the bag once and keeps
|
|
116
116
|
* each class branch as small as the storing form. */
|
|
117
117
|
private readBagHas;
|
|
118
|
+
/** `%dyn.class.bagHasOwn`: whether an instance's property bag holds `key`
|
|
119
|
+
* as its own property. False before the instance has a bag. */
|
|
120
|
+
private readBagHasOwn;
|
|
121
|
+
/** The `constructor` an instance of `info` inherits when it has no own
|
|
122
|
+
* one. The class's prototype view answers its own `constructor` (a
|
|
123
|
+
* replacement, or the class once reflection installed it). A view
|
|
124
|
+
* without one answers the class itself unless reflection had populated it
|
|
125
|
+
* (prototypeReflectedFlag, set when the view initializes): then the
|
|
126
|
+
* program deleted the property, and the read continues to the base
|
|
127
|
+
* class's prototype and past the last one to Object.prototype, as in
|
|
128
|
+
* Node. A prototype's own `constructor` is read with the instance
|
|
129
|
+
* `receiver` as `this`, so an accessor's getter runs on the instance. */
|
|
130
|
+
private inheritedConstructor;
|
|
118
131
|
/** The hints for which some boxed class declares a conversion method. A
|
|
119
132
|
* string conversion calls toString first, so without a declared toString
|
|
120
133
|
* or Symbol.toPrimitive it answers Object.prototype.toString's
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { primitiveConstructorOr } from "./lower-exprs.js";
|
|
2
|
+
import { TO_STRING_TAG_FIELD, wellKnownSymbolOfField } from "./symbol-fields.js";
|
|
2
3
|
import { InternalCompilerError } from "../../errors.js";
|
|
3
4
|
import { dynUndefinedExpr, helperLoc, nodeThrowExpr, varRef } from "../../ir/build.js";
|
|
4
5
|
import { constructedValue } from "./constructor-returns.js";
|
|
@@ -12,7 +13,7 @@ import { PoisonError } from "./lowerer.js";
|
|
|
12
13
|
import { erasedGenericInstance, implicitDefaultInstance } from "./generic-functions.js";
|
|
13
14
|
import {} from "./call-signatures.js";
|
|
14
15
|
import { accessorCall, classValueRef, findGenericMethodOn, findGenericStaticOn, findMethodOn, findStaticOn, genericOverrideBelow, upcastTo, } from "./lower-classes.js";
|
|
15
|
-
import { classPrototypeData, hasClassPrototypeData, observedPrototypeMethod, reflectClassPrototype, } from "./class-prototypes.js";
|
|
16
|
+
import { classPrototypeData, hasClassPrototypeData, prototypeReflectedFlag, observedPrototypeMethod, reflectClassPrototype, } from "./class-prototypes.js";
|
|
16
17
|
import { perEvaluationPrivateNames } from "./private-brands.js";
|
|
17
18
|
import { errorPropertyRead, errorPropertyWrite, errorToStringCall, errorToStringMethod, refreshErrorPropertyDispatch, refreshErrorMethodDispatch, } from "./error-methods.js";
|
|
18
19
|
import { GeneratorDynamicDispatch } from "./generator-dynamic-dispatch.js";
|
|
@@ -94,6 +95,34 @@ const STREAM_NUM_PROPERTIES = new Set([
|
|
|
94
95
|
"writableCorked",
|
|
95
96
|
]);
|
|
96
97
|
const streamProperty = (name) => STREAM_BOOL_PROPERTIES.has(name) || STREAM_NUM_PROPERTIES.has(name);
|
|
98
|
+
/** `(instance) => string`, the string a class's inherited
|
|
99
|
+
* Symbol.toStringTag getter answers, which the runtime reads for
|
|
100
|
+
* Object.prototype.toString and util.inspect of an instance seen as
|
|
101
|
+
* `unknown`. None for a class without a string getter, or whose own tag
|
|
102
|
+
* field shadows it. */
|
|
103
|
+
function stringTagHelper(lowerer, info, loc) {
|
|
104
|
+
if (info.fields.has(TO_STRING_TAG_FIELD))
|
|
105
|
+
return null;
|
|
106
|
+
const getter = findMethodOn(lowerer, info, "get:sym:toStringTag");
|
|
107
|
+
if (getter?.sig.ret.kind !== "string")
|
|
108
|
+
return null;
|
|
109
|
+
const type = { kind: "object", className: info.def.name };
|
|
110
|
+
const owner = getter.declarer.def.name;
|
|
111
|
+
return {
|
|
112
|
+
name: `%class.stringTag:${info.def.name}`,
|
|
113
|
+
params: [{ localId: "this", name: "this", type }],
|
|
114
|
+
locals: [{ id: "this", name: "this", type, mutable: false }],
|
|
115
|
+
returnType: STRING,
|
|
116
|
+
body: [
|
|
117
|
+
{
|
|
118
|
+
kind: "return",
|
|
119
|
+
value: accessorCall(lowerer, owner, "get:sym:toStringTag", lowerer.upcastTo(varRef("this", type, loc), owner), [], STRING, loc),
|
|
120
|
+
loc,
|
|
121
|
+
},
|
|
122
|
+
],
|
|
123
|
+
loc,
|
|
124
|
+
};
|
|
125
|
+
}
|
|
97
126
|
function symbolMemberKey(lowerer, info, name, loc) {
|
|
98
127
|
if (name.startsWith("sym:"))
|
|
99
128
|
return lowerer.coerceToExpected({
|
|
@@ -149,6 +178,7 @@ const KEY_CALLS = new Map([
|
|
|
149
178
|
["dyn.propertyIsEnumerableComputed", "any"],
|
|
150
179
|
["dyn.hasOwnComputed", "value"],
|
|
151
180
|
["dyn.keyDeleteComputed", "value"],
|
|
181
|
+
["dyn.reflectDeleteProperty", "object"],
|
|
152
182
|
["dyn.keySetComputed", "value"],
|
|
153
183
|
]);
|
|
154
184
|
export function toPrimitiveHint(expr) {
|
|
@@ -1226,9 +1256,27 @@ export class ClassDynamicDispatch {
|
|
|
1226
1256
|
if (info.symbolFields && info.def.symbolFields === undefined) {
|
|
1227
1257
|
info.def.symbolFields = [...info.symbolFields].flatMap(([symbol, field]) => {
|
|
1228
1258
|
const global = lowerer.globalsBySymbol.get(symbol);
|
|
1229
|
-
|
|
1259
|
+
if (global?.type.kind === "symbol")
|
|
1260
|
+
return [{ field, globalId: global.id }];
|
|
1261
|
+
const wellKnown = wellKnownSymbolOfField(field);
|
|
1262
|
+
return wellKnown === null ? [] : [{ field, wellKnown }];
|
|
1230
1263
|
});
|
|
1231
1264
|
}
|
|
1265
|
+
const tagged = (current) => [
|
|
1266
|
+
current,
|
|
1267
|
+
...current.subclasses.flatMap(tagged),
|
|
1268
|
+
];
|
|
1269
|
+
for (const current of tagged(info)) {
|
|
1270
|
+
if (current.def.stringTagHelper !== undefined)
|
|
1271
|
+
continue;
|
|
1272
|
+
const fn = stringTagHelper(lowerer, current, functions[0].loc);
|
|
1273
|
+
if (!fn)
|
|
1274
|
+
continue;
|
|
1275
|
+
current.def.stringTagHelper = fn.name;
|
|
1276
|
+
this.generated.add(fn);
|
|
1277
|
+
lowerer.liftedFns.push(fn);
|
|
1278
|
+
changed = true;
|
|
1279
|
+
}
|
|
1232
1280
|
if (this.prototypeHelper && !this.prototypeClasses.has(className)) {
|
|
1233
1281
|
this.prototypeClasses.add(className);
|
|
1234
1282
|
const loc = this.prototypeHelper.loc;
|
|
@@ -2663,15 +2711,19 @@ export class ClassDynamicDispatch {
|
|
|
2663
2711
|
};
|
|
2664
2712
|
}
|
|
2665
2713
|
const iterator = expr.kind === "libCall" &&
|
|
2666
|
-
(expr.fn === "dyn.iterator" ||
|
|
2714
|
+
(expr.fn === "dyn.iterator" ||
|
|
2715
|
+
expr.fn === "dyn.arrayFromIterator" ||
|
|
2716
|
+
expr.fn === "dyn.asyncIteratorOpen")
|
|
2667
2717
|
? expr
|
|
2668
2718
|
: null;
|
|
2719
|
+
// `for await` opens a class instance's [Symbol.asyncIterator]().
|
|
2720
|
+
const asyncOpen = iterator?.fn === "dyn.asyncIteratorOpen";
|
|
2669
2721
|
const invoke = iterator
|
|
2670
2722
|
? {
|
|
2671
2723
|
kind: "dynInvoke",
|
|
2672
2724
|
recv: iterator.args[0],
|
|
2673
|
-
method: "sym:iterator",
|
|
2674
|
-
calleeName: "value[Symbol.iterator]",
|
|
2725
|
+
method: asyncOpen ? "sym:asyncIterator" : "sym:iterator",
|
|
2726
|
+
calleeName: asyncOpen ? "value[Symbol.asyncIterator]" : "value[Symbol.iterator]",
|
|
2675
2727
|
args: [],
|
|
2676
2728
|
type: DYN,
|
|
2677
2729
|
loc: iterator.loc,
|
|
@@ -3424,9 +3476,28 @@ export class ClassDynamicDispatch {
|
|
|
3424
3476
|
if (global)
|
|
3425
3477
|
symbols.set(name, lowerer.coerceToExpected(varRef(global.id, global.type, loc), DYN));
|
|
3426
3478
|
}
|
|
3479
|
+
else if (wellKnownSymbolOfField(name) !== null) {
|
|
3480
|
+
// A field keyed by a well-known symbol (Symbol.toStringTag).
|
|
3481
|
+
symbols.set(name, {
|
|
3482
|
+
kind: "dynFrom",
|
|
3483
|
+
type: DYN,
|
|
3484
|
+
loc,
|
|
3485
|
+
value: {
|
|
3486
|
+
kind: "libCall",
|
|
3487
|
+
fn: "sym.wellKnown",
|
|
3488
|
+
args: [
|
|
3489
|
+
{ kind: "strLit", value: wellKnownSymbolOfField(name), type: STRING, loc },
|
|
3490
|
+
],
|
|
3491
|
+
type: SYMBOL_T,
|
|
3492
|
+
loc,
|
|
3493
|
+
},
|
|
3494
|
+
});
|
|
3495
|
+
}
|
|
3427
3496
|
}
|
|
3428
3497
|
for (let owner = info; owner; owner = owner.base) {
|
|
3429
|
-
for (const
|
|
3498
|
+
for (const method of [...owner.methods.keys()]) {
|
|
3499
|
+
// Accessors key by the property they define (`get [Symbol.toStringTag]`).
|
|
3500
|
+
const name = method.startsWith("get:") || method.startsWith("set:") ? method.slice(4) : method;
|
|
3430
3501
|
if (name.startsWith("sym:")) {
|
|
3431
3502
|
symbols.set(name, {
|
|
3432
3503
|
kind: "dynFrom",
|
|
@@ -3441,6 +3512,7 @@ export class ClassDynamicDispatch {
|
|
|
3441
3512
|
},
|
|
3442
3513
|
});
|
|
3443
3514
|
}
|
|
3515
|
+
}
|
|
3444
3516
|
}
|
|
3445
3517
|
const branches = [];
|
|
3446
3518
|
if (!dispatch.write && !dispatch.reflect && !info.def.tracksOwnFields) {
|
|
@@ -3867,6 +3939,95 @@ export class ClassDynamicDispatch {
|
|
|
3867
3939
|
this.generated.add(helper);
|
|
3868
3940
|
return { kind: "call", callee: name, args: [bag, key], type: BOOL, loc };
|
|
3869
3941
|
}
|
|
3942
|
+
/** `%dyn.class.bagHasOwn`: whether an instance's property bag holds `key`
|
|
3943
|
+
* as its own property. False before the instance has a bag. */
|
|
3944
|
+
readBagHasOwn(lowerer, bag, key, loc) {
|
|
3945
|
+
const name = "%dyn.class.bagHasOwn";
|
|
3946
|
+
let helper = lowerer.liftedFnNamed(name);
|
|
3947
|
+
if (!helper) {
|
|
3948
|
+
const value = varRef("p.0", DYN, loc);
|
|
3949
|
+
helper = {
|
|
3950
|
+
name,
|
|
3951
|
+
params: [
|
|
3952
|
+
{ localId: "p.0", name: "bag", type: DYN },
|
|
3953
|
+
{ localId: "p.1", name: "key", type: STRING },
|
|
3954
|
+
],
|
|
3955
|
+
returnType: BOOL,
|
|
3956
|
+
locals: [
|
|
3957
|
+
{ id: "p.0", name: "bag", type: DYN, mutable: false },
|
|
3958
|
+
{ id: "p.1", name: "key", type: STRING, mutable: false },
|
|
3959
|
+
],
|
|
3960
|
+
body: [
|
|
3961
|
+
{
|
|
3962
|
+
kind: "if",
|
|
3963
|
+
cond: { kind: "dynTest", test: "undefined", value, type: BOOL, loc },
|
|
3964
|
+
then: [
|
|
3965
|
+
{ kind: "return", value: { kind: "boolLit", value: false, type: BOOL, loc }, loc },
|
|
3966
|
+
],
|
|
3967
|
+
else_: null,
|
|
3968
|
+
loc,
|
|
3969
|
+
},
|
|
3970
|
+
{
|
|
3971
|
+
kind: "return",
|
|
3972
|
+
value: {
|
|
3973
|
+
kind: "libCall",
|
|
3974
|
+
fn: "dyn.hasOwn",
|
|
3975
|
+
args: [value, varRef("p.1", STRING, loc)],
|
|
3976
|
+
type: BOOL,
|
|
3977
|
+
loc,
|
|
3978
|
+
},
|
|
3979
|
+
loc,
|
|
3980
|
+
},
|
|
3981
|
+
],
|
|
3982
|
+
loc,
|
|
3983
|
+
};
|
|
3984
|
+
lowerer.liftedFns.push(helper);
|
|
3985
|
+
}
|
|
3986
|
+
this.generated.add(helper);
|
|
3987
|
+
return { kind: "call", callee: name, args: [bag, key], type: BOOL, loc };
|
|
3988
|
+
}
|
|
3989
|
+
/** The `constructor` an instance of `info` inherits when it has no own
|
|
3990
|
+
* one. The class's prototype view answers its own `constructor` (a
|
|
3991
|
+
* replacement, or the class once reflection installed it). A view
|
|
3992
|
+
* without one answers the class itself unless reflection had populated it
|
|
3993
|
+
* (prototypeReflectedFlag, set when the view initializes): then the
|
|
3994
|
+
* program deleted the property, and the read continues to the base
|
|
3995
|
+
* class's prototype and past the last one to Object.prototype, as in
|
|
3996
|
+
* Node. A prototype's own `constructor` is read with the instance
|
|
3997
|
+
* `receiver` as `this`, so an accessor's getter runs on the instance. */
|
|
3998
|
+
inheritedConstructor(lowerer, info, key, receiver, loc) {
|
|
3999
|
+
const cls = lowerer.coerceToExpected(classValueRef(lowerer, info, info.decl), DYN);
|
|
4000
|
+
const prototype = hasClassPrototypeData(info) ? classPrototypeData(lowerer, info, loc) : null;
|
|
4001
|
+
if (!prototype)
|
|
4002
|
+
return cls;
|
|
4003
|
+
const base = info.base;
|
|
4004
|
+
const read = () => ({
|
|
4005
|
+
kind: "libCall",
|
|
4006
|
+
fn: "dyn.reflectGet",
|
|
4007
|
+
args: [prototype, lowerer.coerceToExpected(key, DYN), receiver],
|
|
4008
|
+
type: DYN,
|
|
4009
|
+
loc,
|
|
4010
|
+
});
|
|
4011
|
+
// Past the last class prototype, the read continues to Object.prototype's data property.
|
|
4012
|
+
const next = base && !base.builtinError && base.decl && !base.generic && !base.localClass
|
|
4013
|
+
? this.inheritedConstructor(lowerer, base, key, receiver, loc)
|
|
4014
|
+
: { kind: "dynKeyGet", value: prototype, key, type: DYN, loc };
|
|
4015
|
+
return {
|
|
4016
|
+
kind: "ternary",
|
|
4017
|
+
cond: { kind: "libCall", fn: "dyn.hasOwn", args: [prototype, key], type: BOOL, loc },
|
|
4018
|
+
then: read(),
|
|
4019
|
+
else_: {
|
|
4020
|
+
kind: "ternary",
|
|
4021
|
+
cond: varRef(prototypeReflectedFlag(lowerer, info), BOOL, loc),
|
|
4022
|
+
then: next,
|
|
4023
|
+
else_: cls,
|
|
4024
|
+
type: DYN,
|
|
4025
|
+
loc,
|
|
4026
|
+
},
|
|
4027
|
+
type: DYN,
|
|
4028
|
+
loc,
|
|
4029
|
+
};
|
|
4030
|
+
}
|
|
3870
4031
|
/** The hints for which some boxed class declares a conversion method. A
|
|
3871
4032
|
* string conversion calls toString first, so without a declared toString
|
|
3872
4033
|
* or Symbol.toPrimitive it answers Object.prototype.toString's
|
|
@@ -5512,15 +5673,19 @@ export class ClassDynamicDispatch {
|
|
|
5512
5673
|
!info.localClass &&
|
|
5513
5674
|
!info.classDecorators) {
|
|
5514
5675
|
this.constructors.set(info.def.name, info);
|
|
5515
|
-
const cls = lowerer.coerceToExpected(classValueRef(lowerer, info, info.decl), DYN);
|
|
5516
5676
|
const bag = this.branchPropertyBag(lowerer, info, receiver, false, loc);
|
|
5517
5677
|
const key = { kind: "strLit", value: name, type: STRING, loc };
|
|
5678
|
+
// `constructor` is an own property of every class prototype, so an
|
|
5679
|
+
// ancestor's prototype answers for an instance of this class only
|
|
5680
|
+
// after the program deletes the class's own: the instance's own
|
|
5681
|
+
// property answers, then the class's prototype (inheritedConstructor).
|
|
5682
|
+
const answered = this.readBagHasOwn(lowerer, bag, key, loc);
|
|
5518
5683
|
return [
|
|
5519
5684
|
{
|
|
5520
5685
|
kind: "return",
|
|
5521
5686
|
value: {
|
|
5522
5687
|
kind: "ternary",
|
|
5523
|
-
cond:
|
|
5688
|
+
cond: answered,
|
|
5524
5689
|
then: {
|
|
5525
5690
|
kind: "libCall",
|
|
5526
5691
|
fn: "dyn.bagGet",
|
|
@@ -5528,7 +5693,7 @@ export class ClassDynamicDispatch {
|
|
|
5528
5693
|
type: DYN,
|
|
5529
5694
|
loc,
|
|
5530
5695
|
},
|
|
5531
|
-
else_:
|
|
5696
|
+
else_: this.inheritedConstructor(lowerer, info, key, lowerer.coerceToExpected(receiver, DYN), loc),
|
|
5532
5697
|
type: DYN,
|
|
5533
5698
|
loc,
|
|
5534
5699
|
},
|