@scriptc/compiler 0.4.7 → 0.4.8
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/node-fallback/child_process.d.ts +71 -22
- package/ambient/node-fallback/crypto.d.ts +15 -7
- package/ambient/node-fallback/events.d.ts +23 -5
- package/ambient/node-fallback/fs.d.ts +3 -2
- package/ambient/node-fallback/http.d.ts +23 -17
- package/ambient/node-fallback/https.d.ts +5 -2
- package/ambient/node-fallback/net.d.ts +6 -0
- package/ambient/node-fallback/os.d.ts +11 -1
- package/ambient/node-fallback/path-posix.d.ts +6 -0
- package/ambient/node-fallback/path-win32.d.ts +5 -0
- package/ambient/node-fallback/path.d.ts +2 -0
- package/ambient/node-fallback/zlib.d.ts +31 -2
- package/ambient/scriptc-node-fallback.d.ts +37 -7
- package/ambient/scriptc.d.ts +7 -2
- package/dist/backend/executable-features.js +11 -3
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/library-pack.d.ts +6 -0
- package/dist/backend/library-pack.js +17 -6
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/library-pack.test.d.ts +1 -0
- package/dist/backend/library-pack.test.js +28 -0
- package/dist/backend/library-pack.test.js.map +1 -0
- package/dist/backend/linker.d.ts +9 -2
- package/dist/backend/linker.js +190 -32
- package/dist/backend/linker.js.map +1 -1
- package/dist/backend/lld.d.ts +8 -4
- package/dist/backend/lld.js +19 -13
- package/dist/backend/lld.js.map +1 -1
- package/dist/backend/lld.test.js +3 -1
- package/dist/backend/lld.test.js.map +1 -1
- package/dist/backend/llvm/alloc.d.ts +15 -2
- package/dist/backend/llvm/alloc.js +172 -36
- package/dist/backend/llvm/alloc.js.map +1 -1
- package/dist/backend/llvm/alloc.test.js +69 -1
- package/dist/backend/llvm/alloc.test.js.map +1 -1
- package/dist/backend/llvm/arenas.d.ts +17 -4
- package/dist/backend/llvm/arenas.js +105 -10
- package/dist/backend/llvm/arenas.js.map +1 -1
- package/dist/backend/llvm/arenas.test.js +229 -0
- package/dist/backend/llvm/arenas.test.js.map +1 -1
- package/dist/backend/llvm/bytes-alias.js +10 -1
- package/dist/backend/llvm/bytes-alias.js.map +1 -1
- package/dist/backend/llvm/bytes-headers.js +6 -0
- package/dist/backend/llvm/bytes-headers.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.test.js +25 -0
- package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.js +10 -0
- package/dist/backend/llvm/call-lifetimes.js.map +1 -1
- package/dist/backend/llvm/classes.d.ts +16 -9
- package/dist/backend/llvm/classes.js +142 -37
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/classes.test.js +42 -0
- package/dist/backend/llvm/classes.test.js.map +1 -1
- package/dist/backend/llvm/cpu-dispatch.d.ts +15 -5
- package/dist/backend/llvm/cpu-dispatch.js +31 -7
- package/dist/backend/llvm/cpu-dispatch.js.map +1 -1
- package/dist/backend/llvm/dyn.d.ts +12 -3
- package/dist/backend/llvm/dyn.js +31 -7
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emit-function.js +67 -4
- package/dist/backend/llvm/emit-function.js.map +1 -1
- package/dist/backend/llvm/emit-module.js +90 -39
- package/dist/backend/llvm/emit-module.js.map +1 -1
- package/dist/backend/llvm/emit-module.test.d.ts +1 -0
- package/dist/backend/llvm/emit-module.test.js +52 -0
- package/dist/backend/llvm/emit-module.test.js.map +1 -0
- package/dist/backend/llvm/emit-statements.js +99 -15
- package/dist/backend/llvm/emit-statements.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +113 -8
- package/dist/backend/llvm/emitter.js +438 -67
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/emitter.test.js +31 -3
- package/dist/backend/llvm/emitter.test.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +19 -1
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.js +16 -1
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js +18 -2
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.js +31 -10
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +31 -3
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-records.d.ts +1 -1
- package/dist/backend/llvm/expr-records.js +124 -56
- package/dist/backend/llvm/expr-records.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +17 -0
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/js-groups.d.ts +21 -0
- package/dist/backend/llvm/js-groups.js +277 -0
- package/dist/backend/llvm/js-groups.js.map +1 -0
- package/dist/backend/llvm/js-ic.d.ts +19 -1
- package/dist/backend/llvm/js-ic.js +96 -23
- package/dist/backend/llvm/js-ic.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +132 -1
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-network.js +33 -6
- package/dist/backend/llvm/lib-network.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +44 -3
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +69 -2
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/local-union-storage.test.js +32 -0
- package/dist/backend/llvm/local-union-storage.test.js.map +1 -1
- package/dist/backend/llvm/loop-state.js +7 -2
- package/dist/backend/llvm/loop-state.js.map +1 -1
- package/dist/backend/llvm/map-entry-fusion.d.ts +8 -0
- package/dist/backend/llvm/map-entry-fusion.js +3 -3
- package/dist/backend/llvm/map-entry-fusion.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.test.js +6 -6
- package/dist/backend/llvm/map-number-lookup.test.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.js +7 -6
- package/dist/backend/llvm/nullable-unions.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.test.js +4 -1
- package/dist/backend/llvm/nullable-unions.test.js.map +1 -1
- package/dist/backend/llvm/receivers.js +3 -0
- package/dist/backend/llvm/receivers.js.map +1 -1
- package/dist/backend/llvm/record-entry-fusion.d.ts +32 -0
- package/dist/backend/llvm/record-entry-fusion.js +217 -0
- package/dist/backend/llvm/record-entry-fusion.js.map +1 -0
- package/dist/backend/llvm/record-results.d.ts +5 -2
- package/dist/backend/llvm/record-results.js +13 -12
- package/dist/backend/llvm/record-results.js.map +1 -1
- package/dist/backend/llvm/record-views.js +12 -6
- package/dist/backend/llvm/record-views.js.map +1 -1
- package/dist/backend/llvm/reference-effects.js +1 -0
- package/dist/backend/llvm/reference-effects.js.map +1 -1
- package/dist/backend/llvm/reference-writes.js +3 -0
- package/dist/backend/llvm/reference-writes.js.map +1 -1
- package/dist/backend/llvm/region-ir.js +1 -0
- package/dist/backend/llvm/region-ir.js.map +1 -1
- package/dist/backend/llvm/region-sites.d.ts +18 -0
- package/dist/backend/llvm/region-sites.js +79 -1
- package/dist/backend/llvm/region-sites.js.map +1 -1
- package/dist/backend/llvm/runtime-registries.test.js +53 -6
- package/dist/backend/llvm/runtime-registries.test.js.map +1 -1
- package/dist/backend/llvm/serialized-ir-emission.test.js +3 -1
- package/dist/backend/llvm/serialized-ir-emission.test.js.map +1 -1
- package/dist/backend/llvm/shapes.d.ts +33 -3
- package/dist/backend/llvm/shapes.js +183 -13
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/stack-objects.d.ts +1 -2
- package/dist/backend/llvm/stack-objects.js +8 -5
- package/dist/backend/llvm/stack-objects.js.map +1 -1
- package/dist/backend/llvm/walkers.d.ts +12 -0
- package/dist/backend/llvm/walkers.js +46 -2
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/may-throw.js +12 -2
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/may-throw.test.js +13 -0
- package/dist/backend/may-throw.test.js.map +1 -1
- package/dist/backend/native/contracts.d.ts +48 -8
- package/dist/backend/native/executable.js +55 -13
- package/dist/backend/native/executable.js.map +1 -1
- package/dist/backend/native/helper-identity-record.d.ts +11 -0
- package/dist/backend/native/helper-identity-record.js +76 -0
- package/dist/backend/native/helper-identity-record.js.map +1 -0
- package/dist/backend/native/helper-identity-record.test.d.ts +1 -0
- package/dist/backend/native/helper-identity-record.test.js +101 -0
- package/dist/backend/native/helper-identity-record.test.js.map +1 -0
- package/dist/backend/native/library.js +9 -1
- package/dist/backend/native/library.js.map +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-core.d.ts +13 -10
- package/dist/backend/native-codegen-core.js +26 -13
- package/dist/backend/native-codegen-core.js.map +1 -1
- package/dist/backend/native-codegen.js +27 -8
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-codegen.test.js +110 -14
- package/dist/backend/native-codegen.test.js.map +1 -1
- package/dist/backend/native-link-info-core.d.ts +37 -8
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/runtime-pack-core.d.ts +17 -2
- package/dist/backend/runtime-pack-core.js +18 -3
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +1 -1
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +211 -2
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/tree-classes.d.ts +42 -0
- package/dist/backend/tree-classes.js +723 -0
- package/dist/backend/tree-classes.js.map +1 -0
- package/dist/backend/tree-classes.test.d.ts +1 -0
- package/dist/backend/tree-classes.test.js +338 -0
- package/dist/backend/tree-classes.test.js.map +1 -0
- package/dist/backend/vendor-archives.d.ts +5 -1
- package/dist/backend/vendor-archives.js +51 -7
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/backend/vendor-inputs.d.ts +25 -4
- package/dist/backend/vendor-inputs.js +68 -4
- package/dist/backend/vendor-inputs.js.map +1 -1
- package/dist/backend/vendor-inputs.test.js +35 -1
- package/dist/backend/vendor-inputs.test.js.map +1 -1
- package/dist/backend/warm-cache.js +1 -1
- package/dist/backend/warm-cache.js.map +1 -1
- package/dist/compat/fetch-profile.js +2 -2
- package/dist/coverage/report.js +47 -0
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +1 -1
- package/dist/diagnostics/codes.d.ts +8 -0
- package/dist/diagnostics/codes.js +8 -0
- package/dist/diagnostics/codes.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +27 -9
- package/dist/diagnostics/diagnostic.js +60 -19
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/envelope.d.ts +18 -0
- package/dist/diagnostics/envelope.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +21 -2
- package/dist/executable/executable-cache.js +21 -1
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +123 -1
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/executable/prepare.js +199 -248
- package/dist/executable/prepare.js.map +1 -1
- package/dist/frontend/analysis.js +200 -18
- package/dist/frontend/analysis.js.map +1 -1
- package/dist/frontend/builtin-modules.d.ts +4 -0
- package/dist/frontend/builtin-modules.js +10 -0
- package/dist/frontend/builtin-modules.js.map +1 -1
- package/dist/frontend/early-errors.d.ts +12 -2
- package/dist/frontend/early-errors.js +535 -4
- package/dist/frontend/early-errors.js.map +1 -1
- package/dist/frontend/early-errors.test.js +165 -0
- package/dist/frontend/early-errors.test.js.map +1 -1
- package/dist/frontend/inferred-js-diagnostics.test.js +65 -0
- package/dist/frontend/inferred-js-diagnostics.test.js.map +1 -1
- package/dist/frontend/jsx-opinion-sites.test.d.ts +1 -0
- package/dist/frontend/jsx-opinion-sites.test.js +86 -0
- package/dist/frontend/jsx-opinion-sites.test.js.map +1 -0
- package/dist/frontend/lib-exports.d.ts +23 -4
- package/dist/frontend/lib-exports.js +98 -26
- package/dist/frontend/lib-exports.js.map +1 -1
- package/dist/frontend/lowering/binding-analysis.js +21 -3
- package/dist/frontend/lowering/binding-analysis.js.map +1 -1
- package/dist/frontend/lowering/buffers.d.ts +8 -0
- package/dist/frontend/lowering/buffers.js +43 -0
- package/dist/frontend/lowering/buffers.js.map +1 -0
- package/dist/frontend/lowering/builtin-calls.js +4 -0
- package/dist/frontend/lowering/builtin-calls.js.map +1 -1
- package/dist/frontend/lowering/builtin-namespaces.d.ts +3 -2
- package/dist/frontend/lowering/builtin-namespaces.js +24 -3
- package/dist/frontend/lowering/builtin-namespaces.js.map +1 -1
- package/dist/frontend/lowering/builtin-statics.d.ts +24 -0
- package/dist/frontend/lowering/builtin-statics.js +407 -0
- package/dist/frontend/lowering/builtin-statics.js.map +1 -0
- package/dist/frontend/lowering/builtins/arguments.d.ts +4 -0
- package/dist/frontend/lowering/builtins/arguments.js +12 -0
- package/dist/frontend/lowering/builtins/arguments.js.map +1 -1
- package/dist/frontend/lowering/builtins/atomics.d.ts +6 -1
- package/dist/frontend/lowering/builtins/atomics.js +87 -1
- package/dist/frontend/lowering/builtins/atomics.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process-methods.js +2 -2
- package/dist/frontend/lowering/builtins/child-process-methods.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process-sync.d.ts +13 -0
- package/dist/frontend/lowering/builtins/child-process-sync.js +1 -13
- package/dist/frontend/lowering/builtins/child-process-sync.js.map +1 -1
- package/dist/frontend/lowering/builtins/child-process.d.ts +10 -4
- package/dist/frontend/lowering/builtins/child-process.js +560 -27
- package/dist/frontend/lowering/builtins/child-process.js.map +1 -1
- package/dist/frontend/lowering/builtins/compression.d.ts +2 -2
- package/dist/frontend/lowering/builtins/compression.js +41 -21
- package/dist/frontend/lowering/builtins/compression.js.map +1 -1
- package/dist/frontend/lowering/builtins/constants.js +7 -2
- package/dist/frontend/lowering/builtins/constants.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.d.ts +1 -0
- package/dist/frontend/lowering/builtins/filesystem-calls.js +28 -2
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/json.js +4 -0
- package/dist/frontend/lowering/builtins/json.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-calls.js +3 -1
- package/dist/frontend/lowering/builtins/module-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/numbers.d.ts +4 -1
- package/dist/frontend/lowering/builtins/numbers.js +10 -2
- package/dist/frontend/lowering/builtins/numbers.js.map +1 -1
- package/dist/frontend/lowering/builtins/operating-system.d.ts +6 -3
- package/dist/frontend/lowering/builtins/operating-system.js +96 -16
- package/dist/frontend/lowering/builtins/operating-system.js.map +1 -1
- package/dist/frontend/lowering/builtins/process.d.ts +2 -2
- package/dist/frontend/lowering/builtins/process.js +103 -8
- package/dist/frontend/lowering/builtins/process.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.js +169 -8
- package/dist/frontend/lowering/builtins/promises.js.map +1 -1
- package/dist/frontend/lowering/builtins/properties.js +6 -2
- package/dist/frontend/lowering/builtins/properties.js.map +1 -1
- package/dist/frontend/lowering/builtins/readline.d.ts +6 -4
- package/dist/frontend/lowering/builtins/readline.js +180 -36
- package/dist/frontend/lowering/builtins/readline.js.map +1 -1
- package/dist/frontend/lowering/builtins/url.js +35 -12
- package/dist/frontend/lowering/builtins/url.js.map +1 -1
- package/dist/frontend/lowering/builtins/webassembly.js +2 -0
- package/dist/frontend/lowering/builtins/webassembly.js.map +1 -1
- package/dist/frontend/lowering/call-arguments.d.ts +10 -0
- package/dist/frontend/lowering/call-arguments.js +37 -2
- package/dist/frontend/lowering/call-arguments.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.d.ts +10 -0
- package/dist/frontend/lowering/call-signatures.js +103 -0
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/class-construction.d.ts +14 -2
- package/dist/frontend/lowering/class-construction.js +99 -5
- package/dist/frontend/lowering/class-construction.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +9 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.js +1283 -1030
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js +158 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.test.js.map +1 -1
- package/dist/frontend/lowering/class-prototypes.js +20 -15
- package/dist/frontend/lowering/class-prototypes.js.map +1 -1
- package/dist/frontend/lowering/class-runtime-statics.d.ts +8 -0
- package/dist/frontend/lowering/class-runtime-statics.js +20 -1
- package/dist/frontend/lowering/class-runtime-statics.js.map +1 -1
- package/dist/frontend/lowering/class-unions.js +21 -4
- package/dist/frontend/lowering/class-unions.js.map +1 -1
- package/dist/frontend/lowering/coercions/function-adapters.js +9 -0
- package/dist/frontend/lowering/coercions/function-adapters.js.map +1 -1
- package/dist/frontend/lowering/coercions/state.d.ts +8 -0
- package/dist/frontend/lowering/coercions/state.js +17 -0
- package/dist/frontend/lowering/coercions/state.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural-plans.js +20 -5
- package/dist/frontend/lowering/coercions/structural-plans.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural.js +10 -1
- package/dist/frontend/lowering/coercions/structural.js.map +1 -1
- package/dist/frontend/lowering/coercions/unions.d.ts +2 -1
- package/dist/frontend/lowering/coercions/unions.js +54 -10
- package/dist/frontend/lowering/coercions/unions.js.map +1 -1
- package/dist/frontend/lowering/constructor-returns.d.ts +23 -2
- package/dist/frontend/lowering/constructor-returns.js +284 -58
- package/dist/frontend/lowering/constructor-returns.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.js +156 -62
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.js +21 -3
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-from-async.js +139 -3
- package/dist/frontend/lowering/containers/array-from-async.js.map +1 -1
- package/dist/frontend/lowering/containers/array-iteration.d.ts +14 -4
- package/dist/frontend/lowering/containers/array-iteration.js +24 -7
- package/dist/frontend/lowering/containers/array-iteration.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +14 -11
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +6 -0
- package/dist/frontend/lowering/containers/bytes.js +446 -86
- package/dist/frontend/lowering/containers/bytes.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.d.ts +5 -0
- package/dist/frontend/lowering/containers/callback-arguments.js +21 -12
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-grouping.js +421 -2
- package/dist/frontend/lowering/containers/collection-grouping.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-methods.js +52 -17
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/iterator-helpers.d.ts +23 -0
- package/dist/frontend/lowering/containers/iterator-helpers.js +176 -10
- package/dist/frontend/lowering/containers/iterator-helpers.js.map +1 -1
- package/dist/frontend/lowering/containers/string-and-regexp.d.ts +5 -2
- package/dist/frontend/lowering/containers/string-and-regexp.js +45 -11
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/crypto-tables.d.ts +3 -3
- package/dist/frontend/lowering/crypto-tables.js +5 -5
- package/dist/frontend/lowering/dispatch-sites.js +3 -0
- package/dist/frontend/lowering/dispatch-sites.js.map +1 -1
- package/dist/frontend/lowering/divergences.d.ts +40 -0
- package/dist/frontend/lowering/divergences.js +239 -20
- package/dist/frontend/lowering/divergences.js.map +1 -1
- package/dist/frontend/lowering/effect-free.d.ts +12 -0
- package/dist/frontend/lowering/effect-free.js +44 -0
- package/dist/frontend/lowering/effect-free.js.map +1 -0
- package/dist/frontend/lowering/expressions/array-literals.d.ts +10 -0
- package/dist/frontend/lowering/expressions/array-literals.js +62 -0
- package/dist/frontend/lowering/expressions/array-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/binary.js +115 -5
- package/dist/frontend/lowering/expressions/binary.js.map +1 -1
- package/dist/frontend/lowering/expressions/element-access.js +151 -7
- package/dist/frontend/lowering/expressions/element-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/hosted-narrowing.d.ts +15 -0
- package/dist/frontend/lowering/expressions/hosted-narrowing.js +54 -1
- package/dist/frontend/lowering/expressions/hosted-narrowing.js.map +1 -1
- package/dist/frontend/lowering/expressions/identifiers.js +31 -2
- package/dist/frontend/lowering/expressions/identifiers.js.map +1 -1
- package/dist/frontend/lowering/expressions/narrowing.d.ts +3 -0
- package/dist/frontend/lowering/expressions/narrowing.js +175 -22
- package/dist/frontend/lowering/expressions/narrowing.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.js +173 -11
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/optional-chains.js +5 -1
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -1
- package/dist/frontend/lowering/expressions/property-access.d.ts +8 -0
- package/dist/frontend/lowering/expressions/property-access.js +379 -109
- package/dist/frontend/lowering/expressions/property-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/relational.js +237 -7
- package/dist/frontend/lowering/expressions/relational.js.map +1 -1
- package/dist/frontend/lowering/expressions/typeof.js +8 -0
- package/dist/frontend/lowering/expressions/typeof.js.map +1 -1
- package/dist/frontend/lowering/expressions/union-fields.d.ts +20 -1
- package/dist/frontend/lowering/expressions/union-fields.js +103 -13
- package/dist/frontend/lowering/expressions/union-fields.js.map +1 -1
- package/dist/frontend/lowering/expressions/updates.js +74 -55
- package/dist/frontend/lowering/expressions/updates.js.map +1 -1
- package/dist/frontend/lowering/function-returns.js +37 -10
- package/dist/frontend/lowering/function-returns.js.map +1 -1
- package/dist/frontend/lowering/general-streams.js +5 -0
- package/dist/frontend/lowering/general-streams.js.map +1 -1
- package/dist/frontend/lowering/generator-delegation.d.ts +15 -7
- package/dist/frontend/lowering/generator-delegation.js +301 -118
- package/dist/frontend/lowering/generator-delegation.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.d.ts +27 -1
- package/dist/frontend/lowering/generic-functions.js +432 -18
- package/dist/frontend/lowering/generic-functions.js.map +1 -1
- package/dist/frontend/lowering/global-function-values.d.ts +25 -0
- package/dist/frontend/lowering/global-function-values.js +193 -0
- package/dist/frontend/lowering/global-function-values.js.map +1 -0
- package/dist/frontend/lowering/global-values.d.ts +6 -4
- package/dist/frontend/lowering/global-values.js +24 -10
- package/dist/frontend/lowering/global-values.js.map +1 -1
- package/dist/frontend/lowering/host-global-values.d.ts +31 -0
- package/dist/frontend/lowering/host-global-values.js +121 -0
- package/dist/frontend/lowering/host-global-values.js.map +1 -0
- package/dist/frontend/lowering/host-globals.d.ts +74 -0
- package/dist/frontend/lowering/host-globals.js +344 -0
- package/dist/frontend/lowering/host-globals.js.map +1 -0
- package/dist/frontend/lowering/http2-constants.js +1 -1
- package/dist/frontend/lowering/iterator-adapters.js +46 -17
- package/dist/frontend/lowering/iterator-adapters.js.map +1 -1
- package/dist/frontend/lowering/iterator-prototype.d.ts +30 -0
- package/dist/frontend/lowering/iterator-prototype.js +160 -0
- package/dist/frontend/lowering/iterator-prototype.js.map +1 -0
- package/dist/frontend/lowering/key-order-witness.js +43 -22
- package/dist/frontend/lowering/key-order-witness.js.map +1 -1
- package/dist/frontend/lowering/key-order-witness.test.js +1 -0
- package/dist/frontend/lowering/key-order-witness.test.js.map +1 -1
- package/dist/frontend/lowering/lib-boundary.js +11 -3
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +30 -15
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-async-iteration.d.ts +11 -0
- package/dist/frontend/lowering/lower-async-iteration.js +15 -0
- package/dist/frontend/lowering/lower-async-iteration.js.map +1 -1
- package/dist/frontend/lowering/lower-builtin-values.js +11 -1
- package/dist/frontend/lowering/lower-builtin-values.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +25 -0
- package/dist/frontend/lowering/lower-calls.js +929 -227
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.test.js +59 -16
- package/dist/frontend/lowering/lower-calls.test.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +20 -0
- package/dist/frontend/lowering/lower-classes.js +468 -44
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-event-emitter.d.ts +6 -2
- package/dist/frontend/lowering/lower-event-emitter.js +253 -83
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +1 -1
- package/dist/frontend/lowering/lower-exprs.js +71 -20
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.js +25 -6
- package/dist/frontend/lowering/lower-functions.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.js +57 -10
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-global-value.d.ts +6 -0
- package/dist/frontend/lowering/lower-global-value.js +14 -5
- package/dist/frontend/lowering/lower-global-value.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.d.ts +4 -0
- package/dist/frontend/lowering/lower-inspect.js +638 -64
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +48 -2
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.js +18 -0
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-node-island.js +16 -6
- package/dist/frontend/lowering/lower-node-island.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +303 -87
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stdlib.js +45 -0
- package/dist/frontend/lowering/lower-stdlib.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +14 -11
- package/dist/frontend/lowering/lower-stmts.js +270 -52
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-timers.js +110 -27
- package/dist/frontend/lowering/lower-timers.js.map +1 -1
- package/dist/frontend/lowering/lower-url.js +6 -3
- package/dist/frontend/lowering/lower-url.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +227 -21
- package/dist/frontend/lowering/lowerer.js +651 -92
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/lowerer.test.js +18 -0
- package/dist/frontend/lowering/lowerer.test.js.map +1 -1
- package/dist/frontend/lowering/lowering-facts.d.ts +110 -0
- package/dist/frontend/lowering/lowering-facts.js +323 -0
- package/dist/frontend/lowering/lowering-facts.js.map +1 -0
- package/dist/frontend/lowering/lowering-facts.test.d.ts +1 -0
- package/dist/frontend/lowering/lowering-facts.test.js +100 -0
- package/dist/frontend/lowering/lowering-facts.test.js.map +1 -0
- package/dist/frontend/lowering/nan-coded-reads.d.ts +27 -4
- package/dist/frontend/lowering/nan-coded-reads.js +112 -9
- package/dist/frontend/lowering/nan-coded-reads.js.map +1 -1
- package/dist/frontend/lowering/optional-arguments.d.ts +4 -0
- package/dist/frontend/lowering/optional-arguments.js +26 -2
- package/dist/frontend/lowering/optional-arguments.js.map +1 -1
- package/dist/frontend/lowering/partial-assertions.d.ts +0 -3
- package/dist/frontend/lowering/partial-assertions.js +9 -15
- package/dist/frontend/lowering/partial-assertions.js.map +1 -1
- package/dist/frontend/lowering/primitive-throws.d.ts +100 -0
- package/dist/frontend/lowering/primitive-throws.js +241 -0
- package/dist/frontend/lowering/primitive-throws.js.map +1 -0
- package/dist/frontend/lowering/primitive-wrappers.js +1 -0
- package/dist/frontend/lowering/primitive-wrappers.js.map +1 -1
- package/dist/frontend/lowering/record-inherited.d.ts +17 -1
- package/dist/frontend/lowering/record-inherited.js +16 -2
- package/dist/frontend/lowering/record-inherited.js.map +1 -1
- package/dist/frontend/lowering/record-links.d.ts +73 -0
- package/dist/frontend/lowering/record-links.js +797 -0
- package/dist/frontend/lowering/record-links.js.map +1 -0
- package/dist/frontend/lowering/runtime-optional-provenance.d.ts +27 -7
- package/dist/frontend/lowering/runtime-optional-provenance.js +25 -11
- package/dist/frontend/lowering/runtime-optional-provenance.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-report.d.ts +40 -0
- package/dist/frontend/lowering/runtime-optional-report.js +300 -0
- package/dist/frontend/lowering/runtime-optional-report.js.map +1 -0
- package/dist/frontend/lowering/scoped-type-memo.test.d.ts +1 -0
- package/dist/frontend/lowering/scoped-type-memo.test.js +86 -0
- package/dist/frontend/lowering/scoped-type-memo.test.js.map +1 -0
- package/dist/frontend/lowering/static-typeof.d.ts +3 -1
- package/dist/frontend/lowering/static-typeof.js +6 -1
- package/dist/frontend/lowering/static-typeof.js.map +1 -1
- package/dist/frontend/lowering/strict-mode.d.ts +1 -5
- package/dist/frontend/lowering/strict-mode.js +4 -30
- package/dist/frontend/lowering/strict-mode.js.map +1 -1
- package/dist/frontend/lowering/structural-instances.d.ts +7 -0
- package/dist/frontend/lowering/structural-instances.js +23 -0
- package/dist/frontend/lowering/structural-instances.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +15 -1
- package/dist/frontend/lowering/surfaces.js +78 -10
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/lowering/union-retag.d.ts +13 -1
- package/dist/frontend/lowering/union-retag.js +55 -1
- package/dist/frontend/lowering/union-retag.js.map +1 -1
- package/dist/frontend/lowering/union-retag.test.js +51 -0
- package/dist/frontend/lowering/union-retag.test.js.map +1 -1
- package/dist/frontend/lowering/unit-journal.d.ts +8 -0
- package/dist/frontend/lowering/unit-journal.js +14 -0
- package/dist/frontend/lowering/unit-journal.js.map +1 -1
- package/dist/frontend/lowering/unit-journal.test.js +36 -1
- package/dist/frontend/lowering/unit-journal.test.js.map +1 -1
- package/dist/frontend/lowering/zlib-constants.js +3 -2
- package/dist/frontend/lowering/zlib-constants.js.map +1 -1
- package/dist/frontend/npm-static.js +78 -9
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm-static.test.js +95 -2
- package/dist/frontend/npm-static.test.js.map +1 -1
- package/dist/frontend/pipeline.d.ts +5 -4
- package/dist/frontend/pipeline.js +94 -31
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/pipeline.test.js +68 -11
- package/dist/frontend/pipeline.test.js.map +1 -1
- package/dist/frontend/program.d.ts +62 -2
- package/dist/frontend/program.js +695 -422
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/program.test.js +37 -1
- package/dist/frontend/program.test.js.map +1 -1
- package/dist/frontend/services-node.d.ts +7 -0
- package/dist/frontend/services-node.js +32 -1
- package/dist/frontend/services-node.js.map +1 -1
- package/dist/frontend/services-node.test.js +51 -0
- package/dist/frontend/services-node.test.js.map +1 -1
- package/dist/frontend/shape-inference/overlay.js +68 -2
- package/dist/frontend/shape-inference/overlay.js.map +1 -1
- package/dist/frontend/tier-analysis.d.ts +9 -0
- package/dist/frontend/tier-analysis.js +1 -0
- package/dist/frontend/tier-analysis.js.map +1 -1
- package/dist/frontend/tsc-codes.d.ts +57 -3
- package/dist/frontend/tsc-codes.js +935 -150
- package/dist/frontend/tsc-codes.js.map +1 -1
- package/dist/frontend/tsc-codes.test.js +221 -12
- package/dist/frontend/tsc-codes.test.js.map +1 -1
- package/dist/frontend/type-mapper.d.ts +91 -9
- package/dist/frontend/type-mapper.js +622 -181
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +80 -15
- package/dist/index.js.map +1 -1
- package/dist/index.test.d.ts +1 -0
- package/dist/index.test.js +60 -0
- package/dist/index.test.js.map +1 -0
- package/dist/ir/builtin-effects.js +43 -0
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +1 -1
- package/dist/ir/builtin-signatures.js +242 -16
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/callback-specialization.d.ts +3 -2
- package/dist/ir/callback-specialization.js +35 -25
- package/dist/ir/callback-specialization.js.map +1 -1
- package/dist/ir/capture-values.d.ts +8 -4
- package/dist/ir/capture-values.js +9 -6
- package/dist/ir/capture-values.js.map +1 -1
- package/dist/ir/char-unit-locals.d.ts +6 -2
- package/dist/ir/char-unit-locals.js +11 -2
- package/dist/ir/char-unit-locals.js.map +1 -1
- package/dist/ir/class-key-index.d.ts +18 -0
- package/dist/ir/class-key-index.js +29 -0
- package/dist/ir/class-key-index.js.map +1 -0
- package/dist/ir/class-key-index.test.d.ts +1 -0
- package/dist/ir/class-key-index.test.js +25 -0
- package/dist/ir/class-key-index.test.js.map +1 -0
- package/dist/ir/codec.generated.d.ts +1 -1
- package/dist/ir/codec.generated.js +724 -648
- package/dist/ir/codec.generated.js.map +1 -1
- package/dist/ir/constant-globals.d.ts +5 -2
- package/dist/ir/constant-globals.js +25 -27
- package/dist/ir/constant-globals.js.map +1 -1
- package/dist/ir/expression-inlining.d.ts +4 -2
- package/dist/ir/expression-inlining.js +8 -2
- package/dist/ir/expression-inlining.js.map +1 -1
- package/dist/ir/field-values.d.ts +5 -2
- package/dist/ir/field-values.js +32 -21
- package/dist/ir/field-values.js.map +1 -1
- package/dist/ir/fields.generated.d.ts +11 -2
- package/dist/ir/fields.generated.js +8 -0
- package/dist/ir/fields.generated.js.map +1 -1
- package/dist/ir/final-fields.js +1 -1
- package/dist/ir/final-fields.js.map +1 -1
- package/dist/ir/function-references.d.ts +5 -4
- package/dist/ir/function-references.js +7 -4
- package/dist/ir/function-references.js.map +1 -1
- package/dist/ir/function-references.test.js +7 -0
- package/dist/ir/function-references.test.js.map +1 -1
- package/dist/ir/init-only-globals.d.ts +4 -2
- package/dist/ir/init-only-globals.js +17 -18
- package/dist/ir/init-only-globals.js.map +1 -1
- package/dist/ir/inline-array-views.js +1 -0
- package/dist/ir/inline-array-views.js.map +1 -1
- package/dist/ir/int32-slots.js +7 -0
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/ir.d.ts +59 -4
- package/dist/ir/ir.js +7 -0
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/js-groups.d.ts +51 -0
- package/dist/ir/js-groups.js +394 -0
- package/dist/ir/js-groups.js.map +1 -0
- package/dist/ir/js-groups.test.d.ts +1 -0
- package/dist/ir/js-groups.test.js +555 -0
- package/dist/ir/js-groups.test.js.map +1 -0
- package/dist/ir/js-ic.js +30 -5
- package/dist/ir/js-ic.js.map +1 -1
- package/dist/ir/js-ic.test.js +27 -1
- package/dist/ir/js-ic.test.js.map +1 -1
- package/dist/ir/node-index.d.ts +23 -6
- package/dist/ir/node-index.js +126 -49
- package/dist/ir/node-index.js.map +1 -1
- package/dist/ir/numeric-call-specialization.d.ts +4 -2
- package/dist/ir/numeric-call-specialization.js +40 -26
- package/dist/ir/numeric-call-specialization.js.map +1 -1
- package/dist/ir/paired-while-loops.d.ts +4 -2
- package/dist/ir/paired-while-loops.js +8 -2
- package/dist/ir/paired-while-loops.js.map +1 -1
- package/dist/ir/parameter-versions.d.ts +13 -4
- package/dist/ir/parameter-versions.js +63 -42
- package/dist/ir/parameter-versions.js.map +1 -1
- package/dist/ir/property-bags.d.ts +4 -2
- package/dist/ir/property-bags.js +22 -17
- package/dist/ir/property-bags.js.map +1 -1
- package/dist/ir/row-pairs.d.ts +4 -2
- package/dist/ir/row-pairs.js +12 -11
- package/dist/ir/row-pairs.js.map +1 -1
- package/dist/ir/runtime-features.d.ts +87 -12
- package/dist/ir/runtime-features.js +263 -160
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/runtime-features.test.js +109 -139
- package/dist/ir/runtime-features.test.js.map +1 -1
- package/dist/ir/runtime-jam-loops.d.ts +35 -0
- package/dist/ir/runtime-jam-loops.js +604 -0
- package/dist/ir/runtime-jam-loops.js.map +1 -0
- package/dist/ir/runtime-jam-loops.test.d.ts +1 -0
- package/dist/ir/runtime-jam-loops.test.js +565 -0
- package/dist/ir/runtime-jam-loops.test.js.map +1 -0
- package/dist/ir/saturating-loop-jams.d.ts +4 -2
- package/dist/ir/saturating-loop-jams.js +11 -10
- package/dist/ir/saturating-loop-jams.js.map +1 -1
- package/dist/ir/scalar-records.d.ts +5 -2
- package/dist/ir/scalar-records.js +12 -2
- package/dist/ir/scalar-records.js.map +1 -1
- package/dist/ir/self-captures.d.ts +4 -2
- package/dist/ir/self-captures.js +32 -27
- package/dist/ir/self-captures.js.map +1 -1
- package/dist/ir/serialize.d.ts +6 -1
- package/dist/ir/serialize.js +87 -23
- package/dist/ir/serialize.js.map +1 -1
- package/dist/ir/serialize.test.js +26 -0
- package/dist/ir/serialize.test.js.map +1 -1
- package/dist/ir/tiers.js +1 -0
- package/dist/ir/tiers.js.map +1 -1
- package/dist/ir/traverse.js +4 -0
- package/dist/ir/traverse.js.map +1 -1
- package/dist/ir/typed-argument-clones.d.ts +30 -0
- package/dist/ir/typed-argument-clones.js +789 -0
- package/dist/ir/typed-argument-clones.js.map +1 -0
- package/dist/ir/union-arm-loops.d.ts +3 -0
- package/dist/ir/union-arm-loops.js +373 -0
- package/dist/ir/union-arm-loops.js.map +1 -0
- package/dist/ir/union-arm-loops.test.d.ts +1 -0
- package/dist/ir/union-arm-loops.test.js +230 -0
- package/dist/ir/union-arm-loops.test.js.map +1 -0
- package/dist/ir/validate.js +88 -18
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/compiler-self-identity.d.ts +8 -2
- package/dist/library/compiler-self-identity.js +92 -18
- package/dist/library/compiler-self-identity.js.map +1 -1
- package/dist/library/compiler-self-identity.test.js +150 -3
- package/dist/library/compiler-self-identity.test.js.map +1 -1
- package/dist/library/int-infer.d.ts +5 -0
- package/dist/library/int-infer.js +15 -3
- package/dist/library/int-infer.js.map +1 -1
- package/dist/library/ir-policy.js +1 -0
- package/dist/library/ir-policy.js.map +1 -1
- package/dist/library/library-cache.d.ts +4 -0
- package/dist/library/library-cache.js +2 -0
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +26 -0
- package/dist/library/library-cache.test.js.map +1 -1
- package/dist/library/prepare.js +99 -31
- package/dist/library/prepare.js.map +1 -1
- package/dist/native/cache.d.ts +7 -0
- package/dist/native/cache.js +47 -0
- package/dist/native/cache.js.map +1 -1
- package/dist/native/cache.test.js +13 -1
- package/dist/native/cache.test.js.map +1 -1
- package/dist/native/cli.js +1 -1
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.js +18 -3
- package/dist/native/compiler.js.map +1 -1
- package/dist/native/executable-cache-open.test.js +31 -5
- package/dist/native/executable-cache-open.test.js.map +1 -1
- package/dist/native/executable-cache.d.ts +6 -1
- package/dist/native/executable-cache.js +7 -1
- package/dist/native/executable-cache.js.map +1 -1
- package/dist/native/prepare.d.ts +3 -0
- package/dist/native/prepare.js +43 -26
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/prepare.test.js +25 -3
- package/dist/native/prepare.test.js.map +1 -1
- package/dist/native/sanitizer.js +10 -1
- package/dist/native/sanitizer.js.map +1 -1
- package/dist/native/sanitizer.test.js +7 -2
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/node-islands/boundary.d.ts +12 -0
- package/dist/node-islands/boundary.js +38 -6
- package/dist/node-islands/boundary.js.map +1 -1
- package/dist/node-islands/boundary.test.d.ts +1 -0
- package/dist/node-islands/boundary.test.js +76 -0
- package/dist/node-islands/boundary.test.js.map +1 -0
- package/dist/node-islands/detect.d.ts +9 -0
- package/dist/node-islands/detect.js +110 -0
- package/dist/node-islands/detect.js.map +1 -1
- package/dist/node-islands/detect.test.js +24 -0
- package/dist/node-islands/detect.test.js.map +1 -1
- package/dist/node-islands/graph-islands.d.ts +40 -0
- package/dist/node-islands/graph-islands.js +128 -0
- package/dist/node-islands/graph-islands.js.map +1 -0
- package/dist/node-islands/growth.d.ts +57 -0
- package/dist/node-islands/growth.js +205 -0
- package/dist/node-islands/growth.js.map +1 -0
- package/dist/node-islands/report.d.ts +12 -0
- package/dist/node-islands/report.js +28 -0
- package/dist/node-islands/report.js.map +1 -1
- package/dist/node-islands/report.test.js +2 -0
- package/dist/node-islands/report.test.js.map +1 -1
- package/dist/node-islands/rules.js +5 -0
- package/dist/node-islands/rules.js.map +1 -1
- package/dist/node-islands/scan.d.ts +11 -2
- package/dist/node-islands/scan.js +61 -9
- package/dist/node-islands/scan.js.map +1 -1
- package/dist/wasm/translate.js +11 -5
- package/dist/wasm/translate.js.map +1 -1
- package/dist/wasm/translate.test.js +35 -0
- package/dist/wasm/translate.test.js.map +1 -1
- package/package.json +20 -20
- package/surface-manifest.json +184 -117
|
@@ -45,6 +45,23 @@ function buildLibFnSignatures() {
|
|
|
45
45
|
"event.handleEventReader": { argTypes: [DYN], result: VOID },
|
|
46
46
|
"event.targetDispatch": { argTypes: [null, DYN, DYN], result: BOOL },
|
|
47
47
|
"event.targetCall": { argTypes: [null, DYN, STRING, DYN], result: DYN },
|
|
48
|
+
/** events.getEventListeners over an EventTarget: the type's listeners
|
|
49
|
+
* in registration order, as a checked-dynamic array. The receiver is
|
|
50
|
+
* the target as a checked-dynamic value (a plain target, an
|
|
51
|
+
* AbortSignal, or a compiled subclass's capsule); `type` is the string
|
|
52
|
+
* name, or the checked-dynamic form, where a value that is not a string
|
|
53
|
+
* matches no type and the answer is empty. */
|
|
54
|
+
"event.targetListeners": { argTypes: [DYN, STRING], result: DYN },
|
|
55
|
+
"event.targetListenersDyn": { argTypes: [DYN, DYN], result: DYN },
|
|
56
|
+
/** events.listenerCount over an EventTarget: the type's listeners, 0
|
|
57
|
+
* for a type it has none of (the `_dyn` form answers 0 for a value that
|
|
58
|
+
* is not a string). */
|
|
59
|
+
"event.targetListenerCount": { argTypes: [DYN, STRING], result: F64 },
|
|
60
|
+
"event.targetListenerCountDyn": { argTypes: [DYN, DYN], result: F64 },
|
|
61
|
+
/** events.getMaxListeners and events.setMaxListeners over an
|
|
62
|
+
* EventTarget: the target's limit, and its assignment. */
|
|
63
|
+
"event.targetGetMax": { argTypes: [DYN], result: F64 },
|
|
64
|
+
"event.targetSetMax": { argTypes: [DYN, F64], result: VOID },
|
|
48
65
|
"event.call": { argTypes: [null, STRING, DYN], result: DYN },
|
|
49
66
|
"event.get": { argTypes: [null, STRING], result: DYN },
|
|
50
67
|
"event.set": { argTypes: [null, STRING, DYN], result: VOID },
|
|
@@ -203,6 +220,11 @@ function buildLibFnSignatures() {
|
|
|
203
220
|
* arguments; other receiver representations retain a runtime refusal. */
|
|
204
221
|
"dyn.keyDelete": { argTypes: [DYN, STRING, BOOL], result: VOID },
|
|
205
222
|
"dyn.keyDeleteComputed": { argTypes: [DYN, DYN, BOOL], result: VOID },
|
|
223
|
+
/** `delete` on a primitive base: ToPropertyKey of the key, then the
|
|
224
|
+
* ToObject wrapper's own properties (a String's indexes and `length`
|
|
225
|
+
* answer false in sloppy code and throw in strict code). Borrows both
|
|
226
|
+
* operands; answers the delete's value. */
|
|
227
|
+
"dyn.primitiveDelete": { argTypes: [DYN, DYN, BOOL], result: BOOL },
|
|
206
228
|
"dyn.reflectDeleteProperty": { argTypes: [DYN, DYN], result: BOOL },
|
|
207
229
|
/** Reflect.has's target check: Node's TypeError for a primitive. */
|
|
208
230
|
"dyn.reflectHasTarget": { argTypes: [DYN], result: VOID },
|
|
@@ -221,6 +243,11 @@ function buildLibFnSignatures() {
|
|
|
221
243
|
* whose fallback handles every other value. The key is a literal. */
|
|
222
244
|
"dyn.typedRefKeyIs": { argTypes: [DYN, STRING], result: BOOL },
|
|
223
245
|
"dyn.classIs": { argTypes: [DYN, STRING], result: BOOL },
|
|
246
|
+
/** A generated class table's indexed dispatch: the receiver's class key
|
|
247
|
+
* folded to the case it selects, or -1 for a value that is not a capsule
|
|
248
|
+
* or whose key is shorter than four bytes. The table switches on it and
|
|
249
|
+
* keeps its exact key guards (frontend/lowering/class-dynamic-dispatch.ts). */
|
|
250
|
+
"dyn.classHash": { argTypes: [DYN], result: F64 },
|
|
224
251
|
/** Destructuring pack over a dyn source — `const [a, b] = d`, a
|
|
225
252
|
* destructured dyn callback param (args: the source and the STATIC
|
|
226
253
|
* TypeError spelling, "" when the source has none — both borrowed;
|
|
@@ -379,6 +406,11 @@ function buildLibFnSignatures() {
|
|
|
379
406
|
* a promise that adopts a thenable's settlement, or a promise fulfilled
|
|
380
407
|
* with the value. The second argument reads `then` as above. */
|
|
381
408
|
"dyn.promiseResolve": { argTypes: [DYN, DYN], result: { kind: "promise", inner: DYN } },
|
|
409
|
+
/** `Promise.<s>.call(C, value)` in a JavaScript source (scr_js_
|
|
410
|
+
* promise_generic.c): the static's name, the `this` constructor and the
|
|
411
|
+
* one argument the algorithm takes. Answers the capability's promise as
|
|
412
|
+
* a checked-dynamic value (a foreign C may answer anything). */
|
|
413
|
+
"promise.genericStatic": { argTypes: [STRING, DYN, DYN], result: DYN },
|
|
382
414
|
/** Bare `typeof v` on a dyn value AS A STRING (arg: the dyn value,
|
|
383
415
|
* borrowed; result: an owned string) — the dyn kind's JS answer:
|
|
384
416
|
* undefined→"undefined", null/object/array/bytes→"object" (JS's oldest
|
|
@@ -429,6 +461,12 @@ function buildLibFnSignatures() {
|
|
|
429
461
|
* setInterval and 2 for a node:timers import, plus 4 for a delay read
|
|
430
462
|
* from an array element. */
|
|
431
463
|
"timers.userDelay": { argTypes: [F64, F64], result: F64 },
|
|
464
|
+
/** A timer callback that runs with `this` bound to its handle, as Node
|
|
465
|
+
* calls it with the Timeout or Immediate (scr_timer_this_callback). */
|
|
466
|
+
"timers.thisCallback": {
|
|
467
|
+
argTypes: [{ kind: "func", params: [], ret: VOID }],
|
|
468
|
+
result: { kind: "func", params: [], ret: VOID },
|
|
469
|
+
},
|
|
432
470
|
/** The repeating timer pair. setInterval takes (callback, ms) like
|
|
433
471
|
* setTimeout and RETURNS the f64 handle the fallback declarations
|
|
434
472
|
* promise (ids start at 1, so truthiness narrowing works); the loop
|
|
@@ -604,6 +642,27 @@ function buildLibFnSignatures() {
|
|
|
604
642
|
/** process.stdin.on/once('keypress', cb) (scr_readline_tty.c): cb is the
|
|
605
643
|
* listener as a checked-dynamic function, called with (str, key). */
|
|
606
644
|
"stdin.onKeypress": { argTypes: [DYN, BOOL], result: VOID },
|
|
645
|
+
/** process.stdin.on/once("readable", cb): the paused-mode event —
|
|
646
|
+
* input stays buffered for read(), and the listener (no parameters)
|
|
647
|
+
* runs on the next tick when input arrives while a read wanted more,
|
|
648
|
+
* and once at EOF. Like a 'data' listener it keeps the loop alive
|
|
649
|
+
* until EOF. Never throws. */
|
|
650
|
+
"stdin.onReadable": { argTypes: [{ kind: "func", params: [], ret: VOID }, BOOL], result: VOID },
|
|
651
|
+
/** process.stdin.pause()/resume(): Node's flowing flag. Buffered
|
|
652
|
+
* input stops reaching 'data' listeners while paused and flows again
|
|
653
|
+
* on resume. */
|
|
654
|
+
"stdin.pause": { argTypes: [], result: VOID },
|
|
655
|
+
"stdin.resume": { argTypes: [], result: VOID },
|
|
656
|
+
/** process.stdin.isPaused() — true in paused mode, which a 'readable'
|
|
657
|
+
* listener pins. */
|
|
658
|
+
"stdin.isPaused": { argTypes: [], result: BOOL },
|
|
659
|
+
/** process.stdin.readableLength — bytes buffered for read(). */
|
|
660
|
+
"stdin.readableLength": { argTypes: [], result: F64 },
|
|
661
|
+
/** process.stdin.read([size]): args [all bool, size]. Readable#read's
|
|
662
|
+
* size coercion (parseInt, NaN reads everything held, non-positive
|
|
663
|
+
* reads nothing) and its ERR_OUT_OF_RANGE above 1 GiB; the result is
|
|
664
|
+
* the `Uint8Array | null` union (the emitter constructs it). */
|
|
665
|
+
"stdin.read": { argTypes: [BOOL, F64], result: VOID },
|
|
607
666
|
/** The for-await chunk source over process.stdin: no args, result
|
|
608
667
|
* Promise<Uint8Array> (+1). Fulfills with the next arrived chunk; the
|
|
609
668
|
* EMPTY bytes value is the done sentinel (POSIX reads never deliver
|
|
@@ -806,8 +865,15 @@ function buildLibFnSignatures() {
|
|
|
806
865
|
"os.userName": { argTypes: [], result: STRING },
|
|
807
866
|
"os.userShell": { argTypes: [], result: STRING },
|
|
808
867
|
"os.userHomedir": { argTypes: [], result: STRING },
|
|
868
|
+
/** The same three fields as Buffers (os.userInfo({ encoding: 'buffer' })). */
|
|
869
|
+
"os.userNameBuf": { argTypes: [], result: BYTES_U8 },
|
|
870
|
+
"os.userShellBuf": { argTypes: [], result: BYTES_U8 },
|
|
871
|
+
"os.userHomedirBuf": { argTypes: [], result: BYTES_U8 },
|
|
809
872
|
"os.userUid": { argTypes: [], result: F64 },
|
|
810
873
|
"os.userGid": { argTypes: [], result: F64 },
|
|
874
|
+
/** The single passwd lookup the field libCalls above read: one per
|
|
875
|
+
* userInfo() record instead of one per field. */
|
|
876
|
+
"os.userInfoBegin": { argTypes: [], result: VOID },
|
|
811
877
|
"os.tmpdir": { argTypes: [], result: STRING },
|
|
812
878
|
// Result is the call site's Dict<NetworkInterfaceInfo[]> record (VOID is
|
|
813
879
|
// the dgram.address sentinel — the libCall case checks the structure).
|
|
@@ -1026,6 +1092,9 @@ function buildLibFnSignatures() {
|
|
|
1026
1092
|
"sym.keyFor": { argTypes: [SYMBOL_T], result: VOID },
|
|
1027
1093
|
"sym.desc": { argTypes: [SYMBOL_T], result: VOID },
|
|
1028
1094
|
"sym.toString": { argTypes: [SYMBOL_T], result: STRING },
|
|
1095
|
+
/** Symbol.keyFor called through its function value: the key or
|
|
1096
|
+
* undefined, or Node's TypeError for a value that is not a symbol. */
|
|
1097
|
+
"sym.keyForDyn": { argTypes: [DYN], result: DYN },
|
|
1029
1098
|
/** Engine-free arbitrary-precision bigint operations (scr_bigint.c).
|
|
1030
1099
|
* parse accepts the ECMAScript BigInt string grammar; fromF64 accepts
|
|
1031
1100
|
* finite integral Numbers. Arithmetic returns fresh immutable values.
|
|
@@ -1076,6 +1145,10 @@ function buildLibFnSignatures() {
|
|
|
1076
1145
|
"url.canParseBase": { argTypes: [STRING, STRING], result: BOOL },
|
|
1077
1146
|
"url.parse": { argTypes: [STRING], result: DYN },
|
|
1078
1147
|
"url.parseBase": { argTypes: [STRING, STRING], result: DYN },
|
|
1148
|
+
/** URL.revokeObjectURL(id): the id arrives already converted. A
|
|
1149
|
+
* compiled program registers no blob URLs, so Node's registry lookup
|
|
1150
|
+
* always misses and the call answers undefined. Never throws. */
|
|
1151
|
+
"url.revokeObjectURL": { argTypes: [STRING], result: VOID },
|
|
1079
1152
|
"url.protocol": { argTypes: [URL_T], result: STRING },
|
|
1080
1153
|
"url.origin": { argTypes: [URL_T], result: STRING },
|
|
1081
1154
|
"url.username": { argTypes: [URL_T], result: STRING },
|
|
@@ -1294,17 +1367,18 @@ function buildLibFnSignatures() {
|
|
|
1294
1367
|
"fs.statfsSync": { argTypes: [DYN, DYN], result: DYN },
|
|
1295
1368
|
"fs.readlinkSyncStr": { argTypes: [DYN, DYN], result: STRING },
|
|
1296
1369
|
"fs.readlinkSyncBuffer": { argTypes: [DYN, DYN], result: BYTES_U8 },
|
|
1297
|
-
/** fs.openSync(path, flags) → the raw fd as f64; fs.readSync/
|
|
1298
|
-
* over Buffer windows perform sequential I/O when position
|
|
1299
|
-
* offset-preserving positioned I/O otherwise; fs.writeStrSync
|
|
1300
|
-
* utf8 string twin; and fs.closeSync(fd) closes the descriptor.
|
|
1301
|
-
* the fd slice behind spawn/log-processing forms.
|
|
1370
|
+
/** fs.openSync(path, flags, mode) → the raw fd as f64; fs.readSync/
|
|
1371
|
+
* fs.writeSync over Buffer windows perform sequential I/O when position
|
|
1372
|
+
* is -1 and offset-preserving positioned I/O otherwise; fs.writeStrSync
|
|
1373
|
+
* is the utf8 string twin; and fs.closeSync(fd) closes the descriptor.
|
|
1374
|
+
* This is the fd slice behind spawn/log-processing forms.
|
|
1302
1375
|
* flags is Node's string
|
|
1303
1376
|
* grammar ("r", "w", "a" and the +/x variants; unknown flags throw
|
|
1304
|
-
* Node's ERR_INVALID_ARG_VALUE TypeError text)
|
|
1305
|
-
*
|
|
1306
|
-
*
|
|
1307
|
-
|
|
1377
|
+
* Node's ERR_INVALID_ARG_VALUE TypeError text), and mode is open(2)'s
|
|
1378
|
+
* creation mode (Node's 0o666 default, ERR_OUT_OF_RANGE outside
|
|
1379
|
+
* 0..0xFFFFFFFF). All throw Node-shaped fs errors (openSync
|
|
1380
|
+
* ENOENT/EACCES..., readSync EBADF/range errors, closeSync EBADF). */
|
|
1381
|
+
"fs.openSync": { argTypes: [STRING, STRING, F64], result: F64 },
|
|
1308
1382
|
"fs.openNumericSync": { argTypes: [STRING, F64, F64], result: F64 },
|
|
1309
1383
|
"fs.readSync": { argTypes: [F64, BYTES_U8, F64, F64, F64], result: F64 },
|
|
1310
1384
|
"fs.readSyncDyn": { argTypes: [DYN, DYN, DYN, DYN, DYN], result: F64 },
|
|
@@ -1578,6 +1652,40 @@ function buildLibFnSignatures() {
|
|
|
1578
1652
|
argTypes: [STRING, arrayOf(STRING), F64, STRING, STRING],
|
|
1579
1653
|
result: SPAWNRES_T,
|
|
1580
1654
|
},
|
|
1655
|
+
/** spawnSync with the `cwd`, `input`, and `shell` options (the
|
|
1656
|
+
* SCR_CHILD_CP_OPTIONS build of scr_child.c): the cp.spawnSyncOpts
|
|
1657
|
+
* contract plus the child's working directory ("" = inherit), stdin
|
|
1658
|
+
* input (has_input false leaves fd 0 to the stdio mode — an absent
|
|
1659
|
+
* `input` option; "" pipes an empty stdin), and the shell form
|
|
1660
|
+
* (the complete command line through /bin/sh -c — the compiler emits
|
|
1661
|
+
* it with an empty args list only, since Node warns DEP0190 for
|
|
1662
|
+
* separate shell arguments), exactly Node's reading of the members.
|
|
1663
|
+
* Args (cmd, argv, timeout, killSignal, inMode, outMode, errMode,
|
|
1664
|
+
* cwd, input, hasInput, shell). Never throws, like every spawnSync
|
|
1665
|
+
* form. */
|
|
1666
|
+
"cp.spawnSyncExt": {
|
|
1667
|
+
argTypes: [STRING, arrayOf(STRING), F64, STRING, F64, F64, F64, STRING, STRING, BOOL, BOOL],
|
|
1668
|
+
result: SPAWNRES_T,
|
|
1669
|
+
},
|
|
1670
|
+
/** cp.spawnSyncExt with the `env` option: the trailing [k,v,...] pairs
|
|
1671
|
+
* replace the child's environment. */
|
|
1672
|
+
"cp.spawnSyncExtEnv": {
|
|
1673
|
+
argTypes: [
|
|
1674
|
+
STRING,
|
|
1675
|
+
arrayOf(STRING),
|
|
1676
|
+
F64,
|
|
1677
|
+
STRING,
|
|
1678
|
+
F64,
|
|
1679
|
+
F64,
|
|
1680
|
+
F64,
|
|
1681
|
+
STRING,
|
|
1682
|
+
STRING,
|
|
1683
|
+
BOOL,
|
|
1684
|
+
BOOL,
|
|
1685
|
+
arrayOf(STRING),
|
|
1686
|
+
],
|
|
1687
|
+
result: SPAWNRES_T,
|
|
1688
|
+
},
|
|
1581
1689
|
// node:net (scr_net.c). Listener slots are program-dependent closures —
|
|
1582
1690
|
// null slots, checked in the libCall case (the child.onExit precedent);
|
|
1583
1691
|
// the zero-param callbacks pin the exact func type here. The trailing
|
|
@@ -2148,6 +2256,11 @@ function buildLibFnSignatures() {
|
|
|
2148
2256
|
* per-shape adapter — the tags are program data). */
|
|
2149
2257
|
"http.serverOnConnect": { argTypes: [NETSERVER_T, null, BOOL], result: VOID },
|
|
2150
2258
|
"http.clientOnUpgrade": { argTypes: [HTTPCLIENTREQ_T, null, BOOL], result: VOID },
|
|
2259
|
+
/** server.on("clientError", (err, socket) => ...): a request the parser
|
|
2260
|
+
* rejects, or a connection error, goes to the listeners instead of the
|
|
2261
|
+
* default 400/413/431 answer, as in Node. (err, socket) and shorter
|
|
2262
|
+
* prefixes (the libCall case checks). */
|
|
2263
|
+
"http.serverOnClientError": { argTypes: [NETSERVER_T, null, BOOL], result: VOID },
|
|
2151
2264
|
"http.reqSocket": { argTypes: [HTTPREQ_T], result: NETSOCKET_T },
|
|
2152
2265
|
// reqH2Stream's program-interned Http2Stream | undefined result is
|
|
2153
2266
|
// checked in the special libCall cases in validate.ts.
|
|
@@ -2256,6 +2369,11 @@ function buildLibFnSignatures() {
|
|
|
2256
2369
|
"http.clientSignal": { argTypes: [HTTPCLIENTREQ_T, DYN], result: VOID },
|
|
2257
2370
|
/** options.signal checked before the request is built (ERR_INVALID_ARG_TYPE). */
|
|
2258
2371
|
"http.clientSignalCheck": { argTypes: [DYN], result: VOID },
|
|
2372
|
+
/** options.protocol checked before the request is built: the declared
|
|
2373
|
+
* scheme against the agent's (the calling module's when the options
|
|
2374
|
+
* carry no Agent value). MAY THROW ERR_INVALID_PROTOCOL. */
|
|
2375
|
+
"http.clientProtocolCheck": { argTypes: [DYN, BOOL], result: VOID },
|
|
2376
|
+
"http.clientProtocolCheckAgent": { argTypes: [DYN, BOOL, DYN], result: VOID },
|
|
2259
2377
|
/** https.request's servername option, stored for the construction call
|
|
2260
2378
|
* that follows: the TLS name sent and verified, and part of the pooled
|
|
2261
2379
|
* socket key. The "https." prefix keeps the TLS unit linked. */
|
|
@@ -2300,6 +2418,13 @@ function buildLibFnSignatures() {
|
|
|
2300
2418
|
"http.requestDynCb": { argTypes: [DYN, BOOL, null], result: HTTPCLIENTREQ_T },
|
|
2301
2419
|
"https.requestDyn": { argTypes: [DYN, BOOL], result: HTTPCLIENTREQ_T },
|
|
2302
2420
|
"https.requestDynCb": { argTypes: [DYN, BOOL, null], result: HTTPCLIENTREQ_T },
|
|
2421
|
+
/** request/get with a URL and an options record: Node's
|
|
2422
|
+
* `{...urlToHttpOptions(new URL(url)), ...options}` merge at run time,
|
|
2423
|
+
* then the walk above. Args (url, options, autoEnd[, cb]). MAY THROW. */
|
|
2424
|
+
"http.requestUrlDyn": { argTypes: [STRING, DYN, BOOL], result: HTTPCLIENTREQ_T },
|
|
2425
|
+
"http.requestUrlDynCb": { argTypes: [STRING, DYN, BOOL, null], result: HTTPCLIENTREQ_T },
|
|
2426
|
+
"https.requestUrlDyn": { argTypes: [STRING, DYN, BOOL], result: HTTPCLIENTREQ_T },
|
|
2427
|
+
"https.requestUrlDynCb": { argTypes: [STRING, DYN, BOOL, null], result: HTTPCLIENTREQ_T },
|
|
2303
2428
|
/** The paused-mode demux surface (portless's first-byte TLS peek:
|
|
2304
2429
|
* once('readable') + read(1) + unshift + emit('connection')).
|
|
2305
2430
|
* sockOnReadable registers a zero-param listener (a consumer: arrived
|
|
@@ -2826,10 +2951,11 @@ function buildLibFnSignatures() {
|
|
|
2826
2951
|
argTypes: [STRING, arrayOf(STRING), BOOL, STRING, BOOL, arrayOf(STRING), F64],
|
|
2827
2952
|
result: SPAWNRES_T,
|
|
2828
2953
|
},
|
|
2829
|
-
/** child_process.spawn (scr_child.c + the scr_async.c loop):
|
|
2830
|
-
* with per-slot ignore/inherit/pipe
|
|
2831
|
-
* all-piped Node default, and the
|
|
2832
|
-
* which polls waitpid(WNOHANG) at
|
|
2954
|
+
/** child_process.spawn (scr_child.c + the scr_async.c loop): posix_spawn
|
|
2955
|
+
* after the PATH search in the parent, with per-slot ignore/inherit/pipe
|
|
2956
|
+
* modes (and number output fds), the all-piped Node default, and the
|
|
2957
|
+
* child registered with the event loop, which polls waitpid(WNOHANG) at
|
|
2958
|
+
* quiescence like timers.
|
|
2833
2959
|
* NEVER throws: spawn failure defers to the "error" event, Node-exact
|
|
2834
2960
|
* (the error message is Node's "spawn <cmd> <ERRNO-NAME>"; an "error"
|
|
2835
2961
|
* event with no listener prints it and exits 1 like an EventEmitter).
|
|
@@ -2890,6 +3016,13 @@ function buildLibFnSignatures() {
|
|
|
2890
3016
|
* by the validator/backends. The last argument is exec's shell flag:
|
|
2891
3017
|
* the argv is ["-c", command] and failure messages show the command. */
|
|
2892
3018
|
"cp.execFile": { argTypes: [STRING, arrayOf(STRING), null, BOOL], result: CHILD_T },
|
|
3019
|
+
/** The same callback slice with the `cwd` option (the
|
|
3020
|
+
* SCR_CHILD_CP_OPTIONS build): the child starts in cwd.
|
|
3021
|
+
* (cmd, argv, callback, shell, cwd). */
|
|
3022
|
+
"cp.execFileCwd": {
|
|
3023
|
+
argTypes: [STRING, arrayOf(STRING), null, BOOL, STRING],
|
|
3024
|
+
result: CHILD_T,
|
|
3025
|
+
},
|
|
2893
3026
|
// spawn's options form: per-slot stdio modes (0 ignore / 1 inherit /
|
|
2894
3027
|
// 2 fd) with the out/err fds for mode 2, detached, env replacement
|
|
2895
3028
|
// pairs, cwd ("" = inherit).
|
|
@@ -3327,6 +3460,20 @@ function buildLibFnSignatures() {
|
|
|
3327
3460
|
/** Buffer.byteLength as a function value: the encoding arrives at run time. */
|
|
3328
3461
|
"buffer.byteLenValue": { argTypes: [DYN, DYN], result: F64 },
|
|
3329
3462
|
"buffer.byteLenStr": { argTypes: [STRING, STRING], result: F64 },
|
|
3463
|
+
/** A run-time Buffer encoding name, normalized the way the method's
|
|
3464
|
+
* owner reads it. normalizeEncoding is Node's getEncodingOps (empty and
|
|
3465
|
+
* unknown names throw ERR_UNKNOWN_ENCODING); normalizeEncodingEmptyUtf8
|
|
3466
|
+
* is Node's normalizeEncoding (an empty name reads as utf8, unknown
|
|
3467
|
+
* names throw); normalizeEncodingOrUtf8 is Buffer.byteLength's read (an
|
|
3468
|
+
* unknown name counts as utf8, nothing throws). */
|
|
3469
|
+
"buffer.normalizeEncoding": { argTypes: [STRING], result: STRING },
|
|
3470
|
+
"buffer.normalizeEncodingEmptyUtf8": { argTypes: [STRING], result: STRING },
|
|
3471
|
+
"buffer.normalizeEncodingOrUtf8": { argTypes: [STRING], result: STRING },
|
|
3472
|
+
/** buf.write with an encoding name known only at run time: Node checks
|
|
3473
|
+
* the offset and length BEFORE it reads the name, so the raw value goes
|
|
3474
|
+
* to the runtime and the range errors win over an unknown name. */
|
|
3475
|
+
"buffer.writeStrDyn": { argTypes: [BYTES_U8, STRING, STRING, F64], result: F64 },
|
|
3476
|
+
"buffer.writeStrDynLen": { argTypes: [BYTES_U8, STRING, STRING, F64, F64], result: F64 },
|
|
3330
3477
|
"buffer.isEncoding": { argTypes: [STRING], result: BOOL },
|
|
3331
3478
|
/** Buffer.concat(list, totalLength): the concatenation truncated or
|
|
3332
3479
|
* zero-padded to the total. THROWS Node's 'length' RangeError on a
|
|
@@ -3358,6 +3505,8 @@ function buildLibFnSignatures() {
|
|
|
3358
3505
|
"buffer.installValue": { argTypes: [], result: VOID },
|
|
3359
3506
|
"buffer.staticValue": { argTypes: [STRING], result: DYN },
|
|
3360
3507
|
"buffer.prototypeMember": { argTypes: [DYN], result: DYN },
|
|
3508
|
+
"buffer.prototypeObject": { argTypes: [], result: DYN },
|
|
3509
|
+
"buffer.slowBuffer": { argTypes: [DYN], result: BYTES_U8 },
|
|
3361
3510
|
/** fs._toUnixTimestamp(time) over a dyn value: numeric strings and
|
|
3362
3511
|
* finite numbers coerce (negatives answer now/1000, Node's shape);
|
|
3363
3512
|
* everything else throws Node's ERR_INVALID_ARG_TYPE. May-throw. */
|
|
@@ -3485,6 +3634,8 @@ function buildLibFnSignatures() {
|
|
|
3485
3634
|
* receivers are borrowed. */
|
|
3486
3635
|
/** Connects scr_brotli.c to the zlib engine (%main, before any module). */
|
|
3487
3636
|
"zlib.brotliInstall": { argTypes: [], result: VOID },
|
|
3637
|
+
/** Connects scr_zstd.c the same way. */
|
|
3638
|
+
"zlib.zstdInstall": { argTypes: [], result: VOID },
|
|
3488
3639
|
"zlib.streamNew": { argTypes: [F64, DYN], result: VOID },
|
|
3489
3640
|
"zlib.streamBytesWritten": { argTypes: [null], result: F64 },
|
|
3490
3641
|
/** `stream instanceof zlib.Gzip`: the borrowed stream and the class's
|
|
@@ -3751,6 +3902,14 @@ function buildLibFnSignatures() {
|
|
|
3751
3902
|
* (0 String, 1 Number, 2 Boolean), the value it converts, and the three
|
|
3752
3903
|
* constructor values for the prototypes' `constructor`. */
|
|
3753
3904
|
"wrapper.new": { argTypes: [F64, DYN, DYN, DYN, DYN], result: DYN },
|
|
3905
|
+
/** %Iterator.prototype% and %Iterator% (scr_js_iterator.c), `new
|
|
3906
|
+
* Iterator()` (always the abstract-class TypeError), Iterator.from over
|
|
3907
|
+
* a checked value, and OrdinaryHasInstance(%Iterator%, value). */
|
|
3908
|
+
"iterator.prototype": { argTypes: [], result: DYN },
|
|
3909
|
+
"iterator.constructor": { argTypes: [], result: DYN },
|
|
3910
|
+
"iterator.construct": { argTypes: [], result: DYN },
|
|
3911
|
+
"iterator.from": { argTypes: [DYN], result: DYN },
|
|
3912
|
+
"iterator.instanceOf": { argTypes: [DYN], result: BOOL },
|
|
3754
3913
|
/** ToObject (scr_js_wrapper_to_object): a wrapper for a primitive, the
|
|
3755
3914
|
* value for an object, a fresh object for null/undefined; then the
|
|
3756
3915
|
* three constructor values. */
|
|
@@ -3774,6 +3933,12 @@ function buildLibFnSignatures() {
|
|
|
3774
3933
|
* (scr_js_wrapper_this_string). */
|
|
3775
3934
|
"wrapper.isStringMethod": { argTypes: [DYN, STRING], result: BOOL },
|
|
3776
3935
|
"wrapper.thisString": { argTypes: [DYN, STRING], result: DYN },
|
|
3936
|
+
/** Boolean.prototype as a value in a JavaScript source: the wrapper
|
|
3937
|
+
* unit's Boolean prototype object (the one `new Boolean(v)` instances
|
|
3938
|
+
* inherit from), so its valueOf/toString accept a primitive boolean or
|
|
3939
|
+
* a Boolean wrapper receiver and throw Node's brand-check TypeError for
|
|
3940
|
+
* a foreign one. `constructor` is the compiled Boolean constructor. */
|
|
3941
|
+
"wrapper.booleanPrototype": { argTypes: [DYN], result: DYN },
|
|
3777
3942
|
"fs.callbackValue": { argTypes: [STRING], result: DYN },
|
|
3778
3943
|
"fs.callbackCall": { argTypes: [STRING, DYN], result: DYN },
|
|
3779
3944
|
"process.hrtimeValue": { argTypes: [], result: DYN },
|
|
@@ -3957,10 +4122,20 @@ function buildLibFnSignatures() {
|
|
|
3957
4122
|
"console.clear": { argTypes: [], result: VOID },
|
|
3958
4123
|
"console.table": { argTypes: [DYN, DYN], result: VOID },
|
|
3959
4124
|
"console.dirDyn": { argTypes: [DYN, F64], result: STRING },
|
|
4125
|
+
"console.dirHidden": { argTypes: [DYN, F64], result: STRING },
|
|
3960
4126
|
/** A native reference to the global object; known names retain value fences. */
|
|
3961
4127
|
"global.native": { argTypes: [arrayOf(STRING)], result: DYN },
|
|
4128
|
+
/** Arms the runtime check for the Node globals the native runtime does not
|
|
4129
|
+
* implement (host-globals.ts): the compiler's derived name table. */
|
|
4130
|
+
"global.hostAbsent": { argTypes: [arrayOf(STRING)], result: VOID },
|
|
4131
|
+
/** `key in globalThis`: the host-global check, then the global object's
|
|
4132
|
+
* own presence answer (scr_global_host_absent.c). */
|
|
4133
|
+
"dyn.globalHas": { argTypes: [STRING], result: BOOL },
|
|
3962
4134
|
/** Installs the program's builtin-global lookup (global-values.ts). */
|
|
3963
4135
|
"global.installValues": { argTypes: [DYN], result: VOID },
|
|
4136
|
+
/** Installs the program's static-member lookup for builtin constructor
|
|
4137
|
+
* values (builtin-statics.ts). */
|
|
4138
|
+
"dyn.installBuiltinStatics": { argTypes: [DYN], result: VOID },
|
|
3964
4139
|
/** The keys `for (key in globalThis)` visits, as a fresh object. */
|
|
3965
4140
|
"global.forInObject": { argTypes: [], result: DYN },
|
|
3966
4141
|
/** Node's navigator global (scr_node_builtin.c). */
|
|
@@ -4075,6 +4250,15 @@ function buildLibFnSignatures() {
|
|
|
4075
4250
|
"sharedArrayBuffer.new": { argTypes: [DYN], result: DYN },
|
|
4076
4251
|
"sharedArrayBuffer.is": { argTypes: [DYN], result: BOOL },
|
|
4077
4252
|
"arrayBuffer.new": { argTypes: [DYN], result: DYN },
|
|
4253
|
+
/** `new ArrayBuffer(len, { maxByteLength })` in a JavaScript source
|
|
4254
|
+
* (t262-dc C2): the maxByteLength reserved up front, the visible length
|
|
4255
|
+
* len. */
|
|
4256
|
+
"arrayBuffer.newResizable": { argTypes: [DYN, DYN], result: DYN },
|
|
4257
|
+
/** `new SharedArrayBuffer(len, { maxByteLength })`: the same, growable. */
|
|
4258
|
+
"sharedArrayBuffer.newGrowable": { argTypes: [DYN, DYN], result: DYN },
|
|
4259
|
+
/** The %main prologue call that arms scr_js_buffers's views registry
|
|
4260
|
+
* (buffers.ts): never throws, never answers. */
|
|
4261
|
+
"arrayBuffer.armMutable": { argTypes: [], result: VOID },
|
|
4078
4262
|
"ffi.argument": { argTypes: [DYN, STRING], result: DYN },
|
|
4079
4263
|
"ffi.memoryModule": { argTypes: [DYN], result: DYN },
|
|
4080
4264
|
"intl.segmenterNew": { argTypes: [], result: DYN },
|
|
@@ -4217,6 +4401,13 @@ function buildLibFnSignatures() {
|
|
|
4217
4401
|
"dyn.isExtensible": { argTypes: [DYN], result: BOOL },
|
|
4218
4402
|
"dyn.seal": { argTypes: [DYN], result: DYN },
|
|
4219
4403
|
"dyn.isSealed": { argTypes: [DYN], result: BOOL },
|
|
4404
|
+
/** Object.isExtensible / Object.isSealed of a value whose kind is known
|
|
4405
|
+
* only at runtime: a native handle or a promise has no modeled integrity
|
|
4406
|
+
* state, so these refuse (SC2020) instead of answering like
|
|
4407
|
+
* dyn.isExtensible/dyn.isSealed, which the static arms (a class
|
|
4408
|
+
* instance's checked view, a typed function value) keep using. */
|
|
4409
|
+
"dyn.isExtensibleQuery": { argTypes: [DYN], result: BOOL },
|
|
4410
|
+
"dyn.isSealedQuery": { argTypes: [DYN], result: BOOL },
|
|
4220
4411
|
"dyn.objValues": { argTypes: [DYN], result: DYN },
|
|
4221
4412
|
/** Object.values as a native vector of checked values, for results the
|
|
4222
4413
|
* program consumes directly (for-of, index reads, read-only methods). */
|
|
@@ -4970,9 +5161,27 @@ function buildLibFnSignatures() {
|
|
|
4970
5161
|
* 'not supported yet' Error. */
|
|
4971
5162
|
"insp.dynHidden": { argTypes: [DYN, F64], result: STRING },
|
|
4972
5163
|
"insp.begin": { argTypes: [F64], result: VOID },
|
|
4973
|
-
/** util.inspect's breakLength, compact (-1 for false)
|
|
4974
|
-
*
|
|
4975
|
-
|
|
5164
|
+
/** util.inspect's breakLength, compact (-1 for false), sorted and
|
|
5165
|
+
* maxArrayLength (Infinity for null) for the renders that follow; the
|
|
5166
|
+
* call site restores 80, 3, false and 100 afterwards. */
|
|
5167
|
+
"insp.layout": { argTypes: [F64, F64, BOOL, F64], result: VOID },
|
|
5168
|
+
/** The render's maxArrayLength, which the array, Map and Set traversals
|
|
5169
|
+
* read: the option applies at every nesting level. */
|
|
5170
|
+
"insp.maxArrayLength": { argTypes: [], result: F64 },
|
|
5171
|
+
/** ctx.maxStringLength for the renders that follow; answers the previous
|
|
5172
|
+
* value so the call site can restore it. */
|
|
5173
|
+
"insp.maxStringLength": { argTypes: [F64], result: F64 },
|
|
5174
|
+
/** ctx.getters for the renders that follow: whether an accessor
|
|
5175
|
+
* property's getter runs (0 the labels only, 1 every getter, 2 the
|
|
5176
|
+
* getters without a setter, 3 the getters with one); answers the previous
|
|
5177
|
+
* value so the call site can restore it. */
|
|
5178
|
+
"insp.getters": { argTypes: [F64], result: F64 },
|
|
5179
|
+
/** The current ctx.getters, which the interned per-type helpers read: the
|
|
5180
|
+
* option is run-time state shared by every call site. */
|
|
5181
|
+
"insp.gettersMode": { argTypes: [], result: F64 },
|
|
5182
|
+
/** An invoked accessor property's value, by the result's kind:
|
|
5183
|
+
* `[Label: <primitive>]` or `[Label] <object>`. */
|
|
5184
|
+
"insp.accessorValue": { argTypes: [DYN, STRING, F64, F64], result: STRING },
|
|
4976
5185
|
"insp.entry": { argTypes: [STRING, BOOL], result: VOID },
|
|
4977
5186
|
// Circular references: the receiver slot is program-dependent (any
|
|
4978
5187
|
// cycle-capable record/array/map/class type — the insp.error precedent).
|
|
@@ -4995,6 +5204,21 @@ function buildLibFnSignatures() {
|
|
|
4995
5204
|
* (key-order-witness.ts ordered spreads). Both are record types. Never
|
|
4996
5205
|
* throws. */
|
|
4997
5206
|
"record.sourceSpread": { argTypes: [null, null], result: VOID },
|
|
5207
|
+
/** `record.sourceShare(built, value)`: the record `built`, of value's
|
|
5208
|
+
* record type, keeps value's kept source too (record-links.ts compose
|
|
5209
|
+
* helpers). Never throws. */
|
|
5210
|
+
"record.sourceShare": { argTypes: [null, null], result: VOID },
|
|
5211
|
+
/** `record.link(copy, source, pair)`: the copy a narrowing conversion
|
|
5212
|
+
* just built links to its source record (IrModule.recordLinks; `pair`
|
|
5213
|
+
* a numLit). Borrows both. Never throws. */
|
|
5214
|
+
"record.link": { argTypes: [null, null, F64], result: VOID },
|
|
5215
|
+
/** `record.linkIs(copy, pair)`: whether the record links to a source
|
|
5216
|
+
* through the pair (a numLit). Never throws. */
|
|
5217
|
+
"record.linkIs": { argTypes: [null, F64], result: BOOL },
|
|
5218
|
+
/** `record.linkSource(copy, pair)`: the source a record links to
|
|
5219
|
+
* through the pair, which the caller has tested (record.linkIs); its
|
|
5220
|
+
* type is the pair's source type. Never throws. */
|
|
5221
|
+
"record.linkSource": { argTypes: [null, F64], result: VOID },
|
|
4998
5222
|
/** `record.sourceNote(built, keys)`: the record a width spread just
|
|
4999
5223
|
* built keeps `keys` (the copy's own keys, in order; declared ones are
|
|
5000
5224
|
* placeholders) as its kept source when they hold an undeclared key or
|
|
@@ -5010,6 +5234,8 @@ function buildLibFnSignatures() {
|
|
|
5010
5234
|
* `prefix inner` re-indented at the caller's level (+1). */
|
|
5011
5235
|
"insp.nestedBegin": { argTypes: [], result: VOID },
|
|
5012
5236
|
"insp.nestedEnd": { argTypes: [STRING, STRING], result: STRING },
|
|
5237
|
+
/** nestedEnd's restore alone: the caller's context returns. */
|
|
5238
|
+
"insp.nestedRestore": { argTypes: [], result: VOID },
|
|
5013
5239
|
/** Around a top-level render that an inspection refusal can end: mark
|
|
5014
5240
|
* records the inspector's frame and nesting depth, unwind (in the
|
|
5015
5241
|
* render's finally) closes what the render left open above it. */
|