@scriptc/compiler 0.0.35 → 0.1.1
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 +14 -11
- package/ambient/scriptc-overrides.d.ts +0 -7
- package/ambient/scriptc.d.ts +1 -1
- package/dist/backend/build-cache.d.ts +44 -0
- package/dist/backend/build-cache.js +241 -0
- package/dist/backend/build-cache.js.map +1 -0
- package/dist/backend/{emission/emit-async.d.ts → c/async.d.ts} +21 -30
- package/dist/backend/{emission/emit-async.js → c/async.js} +270 -286
- package/dist/backend/c/async.js.map +1 -0
- package/dist/backend/{emission/emitter.d.ts → c/c-emitter.d.ts} +6 -23
- package/dist/backend/{emission/emitter.js → c/c-emitter.js} +53 -107
- package/dist/backend/c/c-emitter.js.map +1 -0
- package/dist/backend/c/exprs.d.ts +8 -0
- package/dist/backend/c/exprs.js +7937 -0
- package/dist/backend/c/exprs.js.map +1 -0
- package/dist/backend/{emission/emit-island.d.ts → c/island.d.ts} +5 -5
- package/dist/backend/{emission/emit-island.js → c/island.js} +24 -22
- package/dist/backend/c/island.js.map +1 -0
- package/dist/backend/{emission → c}/may-throw.d.ts +1 -1
- package/dist/backend/{emission → c}/may-throw.js +4 -1
- package/dist/backend/c/may-throw.js.map +1 -0
- package/dist/backend/{emission/emit-shapes.d.ts → c/shapes.d.ts} +19 -19
- package/dist/backend/{emission/emit-shapes.js → c/shapes.js} +78 -87
- package/dist/backend/c/shapes.js.map +1 -0
- package/dist/backend/{emission/emit-stmts.d.ts → c/stmts.d.ts} +12 -12
- package/dist/backend/{emission/emit-stmts.js → c/stmts.js} +395 -343
- package/dist/backend/c/stmts.js.map +1 -0
- package/dist/backend/{emission/emit-types.d.ts → c/types.d.ts} +1 -1
- package/dist/backend/{emission/emit-types.js → c/types.js} +42 -286
- package/dist/backend/c/types.js.map +1 -0
- package/dist/backend/c/types.test.js +25 -0
- package/dist/backend/c/types.test.js.map +1 -0
- package/dist/backend/{emission/emit-walkers.d.ts → c/walkers.d.ts} +19 -41
- package/dist/backend/{emission/emit-walkers.js → c/walkers.js} +242 -304
- package/dist/backend/c/walkers.js.map +1 -0
- package/dist/backend/external-c.d.ts +33 -0
- package/dist/backend/external-c.js +51 -0
- package/dist/backend/external-c.js.map +1 -0
- package/dist/backend/ffi-callbacks.d.ts +1 -1
- package/dist/backend/ffi-callbacks.js +4 -3
- package/dist/backend/ffi-callbacks.js.map +1 -1
- package/dist/backend/{library-identity.d.ts → library-identity-markers.d.ts} +0 -4
- package/dist/backend/{library-identity.js → library-identity-markers.js} +10 -9
- package/dist/backend/library-identity-markers.js.map +1 -0
- package/dist/backend/link-plan.d.ts +37 -0
- package/dist/backend/link-plan.js +26 -0
- package/dist/backend/link-plan.js.map +1 -0
- package/dist/backend/linker.d.ts +22 -0
- package/dist/backend/linker.js +236 -0
- package/dist/backend/linker.js.map +1 -0
- package/dist/backend/llvm/blocks.d.ts +4 -0
- package/dist/backend/llvm/blocks.js +29 -0
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/classes.d.ts +2 -19
- package/dist/backend/llvm/classes.js +20 -52
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/common.d.ts +4 -0
- package/dist/backend/llvm/common.js +27 -0
- package/dist/backend/llvm/common.js.map +1 -0
- package/dist/backend/llvm/dyn.d.ts +3 -8
- package/dist/backend/llvm/dyn.js +159 -224
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +4 -1
- package/dist/backend/llvm/emitter.js +548 -9988
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-async.d.ts +4 -0
- package/dist/backend/llvm/expr-async.js +726 -0
- package/dist/backend/llvm/expr-async.js.map +1 -0
- package/dist/backend/llvm/expr-bytes.d.ts +13 -0
- package/dist/backend/llvm/expr-bytes.js +456 -0
- package/dist/backend/llvm/expr-bytes.js.map +1 -0
- package/dist/backend/llvm/expr-callbacks.d.ts +22 -0
- package/dist/backend/llvm/expr-callbacks.js +520 -0
- package/dist/backend/llvm/expr-callbacks.js.map +1 -0
- package/dist/backend/llvm/expr-calls.d.ts +2 -0
- package/dist/backend/llvm/expr-calls.js +618 -0
- package/dist/backend/llvm/expr-calls.js.map +1 -0
- package/dist/backend/llvm/expr-containers.d.ts +25 -0
- package/dist/backend/llvm/expr-containers.js +637 -0
- package/dist/backend/llvm/expr-containers.js.map +1 -0
- package/dist/backend/llvm/expr-context.d.ts +255 -0
- package/dist/backend/llvm/expr-context.js +2 -0
- package/dist/backend/llvm/expr-context.js.map +1 -0
- package/dist/backend/llvm/expr-control.d.ts +2 -0
- package/dist/backend/llvm/expr-control.js +473 -0
- package/dist/backend/llvm/expr-control.js.map +1 -0
- package/dist/backend/llvm/expr-dispatch.d.ts +4 -0
- package/dist/backend/llvm/expr-dispatch.js +153 -0
- package/dist/backend/llvm/expr-dispatch.js.map +1 -0
- package/dist/backend/llvm/expr-dynamic.d.ts +2 -0
- package/dist/backend/llvm/expr-dynamic.js +810 -0
- package/dist/backend/llvm/expr-dynamic.js.map +1 -0
- package/dist/backend/llvm/expr-island.d.ts +15 -0
- package/dist/backend/llvm/expr-island.js +690 -0
- package/dist/backend/llvm/expr-island.js.map +1 -0
- package/dist/backend/llvm/expr-primitives.d.ts +6 -0
- package/dist/backend/llvm/expr-primitives.js +642 -0
- package/dist/backend/llvm/expr-primitives.js.map +1 -0
- package/dist/backend/llvm/expr-records.d.ts +9 -0
- package/dist/backend/llvm/expr-records.js +299 -0
- package/dist/backend/llvm/expr-records.js.map +1 -0
- package/dist/backend/llvm/expr-stream-bridges.d.ts +13 -0
- package/dist/backend/llvm/expr-stream-bridges.js +420 -0
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -0
- package/dist/backend/llvm/expr-stream-callbacks.d.ts +12 -0
- package/dist/backend/llvm/expr-stream-callbacks.js +360 -0
- package/dist/backend/llvm/expr-stream-callbacks.js.map +1 -0
- package/dist/backend/llvm/lib-dispatch.d.ts +5 -0
- package/dist/backend/llvm/lib-dispatch.js +267 -0
- package/dist/backend/llvm/lib-dispatch.js.map +1 -0
- package/dist/backend/llvm/lib-filesystem.d.ts +6 -0
- package/dist/backend/llvm/lib-filesystem.js +594 -0
- package/dist/backend/llvm/lib-filesystem.js.map +1 -0
- package/dist/backend/llvm/lib-network.d.ts +2 -0
- package/dist/backend/llvm/lib-network.js +429 -0
- package/dist/backend/llvm/lib-network.js.map +1 -0
- package/dist/backend/llvm/lib-process.d.ts +5 -0
- package/dist/backend/llvm/lib-process.js +585 -0
- package/dist/backend/llvm/lib-process.js.map +1 -0
- package/dist/backend/llvm/lib-shared.d.ts +6 -0
- package/dist/backend/llvm/lib-shared.js +687 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -0
- package/dist/backend/llvm/lib-stream.d.ts +2 -0
- package/dist/backend/llvm/lib-stream.js +470 -0
- package/dist/backend/llvm/lib-stream.js.map +1 -0
- package/dist/backend/llvm/shapes.d.ts +12 -2
- package/dist/backend/llvm/shapes.js +66 -307
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +52 -0
- package/dist/backend/llvm/shapes.test.js.map +1 -0
- package/dist/backend/llvm/unsupported.d.ts +1 -1
- package/dist/backend/llvm/walkers.d.ts +2 -3
- package/dist/backend/llvm/walkers.js +195 -222
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/native-codegen.d.ts +45 -0
- package/dist/backend/native-codegen.js +275 -0
- package/dist/backend/native-codegen.js.map +1 -0
- package/dist/backend/native-codegen.test.js +226 -0
- package/dist/backend/native-codegen.test.js.map +1 -0
- package/dist/backend/native-link-info.d.ts +96 -0
- package/dist/backend/native-link-info.js +243 -0
- package/dist/backend/native-link-info.js.map +1 -0
- package/dist/backend/native-link-info.test.d.ts +1 -0
- package/dist/backend/native-link-info.test.js +134 -0
- package/dist/backend/native-link-info.test.js.map +1 -0
- package/dist/backend/{cc.d.ts → native-toolchain.d.ts} +54 -34
- package/dist/backend/{cc.js → native-toolchain.js} +231 -810
- package/dist/backend/native-toolchain.js.map +1 -0
- package/dist/backend/native-toolchain.test.d.ts +1 -0
- package/dist/backend/{cc-cache.test.js → native-toolchain.test.js} +219 -7
- package/dist/backend/native-toolchain.test.js.map +1 -0
- package/dist/backend/object-localize.js +1 -1
- package/dist/backend/runtime-abi.d.ts +10 -0
- package/dist/backend/runtime-abi.js +11 -0
- package/dist/backend/runtime-abi.js.map +1 -0
- package/dist/backend/runtime-pack-targets.test.d.ts +1 -0
- package/dist/backend/runtime-pack-targets.test.js +54 -0
- package/dist/backend/runtime-pack-targets.test.js.map +1 -0
- package/dist/backend/runtime-pack.d.ts +112 -0
- package/dist/backend/runtime-pack.js +305 -0
- package/dist/backend/runtime-pack.js.map +1 -0
- package/dist/backend/runtime-pack.test.d.ts +1 -0
- package/dist/backend/runtime-pack.test.js +473 -0
- package/dist/backend/runtime-pack.test.js.map +1 -0
- package/dist/backend/targets.d.ts +76 -0
- package/dist/backend/targets.js +262 -0
- package/dist/backend/targets.js.map +1 -0
- package/dist/backend/targets.test.d.ts +1 -0
- package/dist/backend/targets.test.js +41 -0
- package/dist/backend/targets.test.js.map +1 -0
- package/dist/backend/vendor-archives.d.ts +41 -0
- package/dist/backend/vendor-archives.js +462 -0
- package/dist/backend/vendor-archives.js.map +1 -0
- package/dist/compat/fetch-profile.d.ts +0 -1
- package/dist/compat/fetch-profile.js +0 -1
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/coverage/report.js +3 -3
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +35 -33
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +11 -12
- package/dist/diagnostics/diagnostic.js +19 -17
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/render.d.ts +1 -1
- package/dist/diagnostics/render.js +1 -1
- package/dist/diagnostics/render.js.map +1 -1
- package/dist/errors.d.ts +5 -0
- package/dist/errors.js +9 -0
- package/dist/errors.js.map +1 -0
- package/dist/executable/{early-cache.d.ts → executable-cache.d.ts} +2 -2
- package/dist/executable/{early-cache.js → executable-cache.js} +36 -98
- package/dist/executable/executable-cache.js.map +1 -0
- package/dist/executable/executable-cache.test.d.ts +1 -0
- package/dist/executable/{early-cache.test.js → executable-cache.test.js} +3 -3
- package/dist/executable/executable-cache.test.js.map +1 -0
- package/dist/ffi/{profile.js → ffi-manifest.js} +1 -1
- package/dist/ffi/ffi-manifest.js.map +1 -0
- package/dist/frontend/builtin-modules.d.ts +21 -0
- package/dist/frontend/builtin-modules.js +82 -0
- package/dist/frontend/builtin-modules.js.map +1 -0
- package/dist/frontend/cjs-lexer.d.ts +7 -0
- package/dist/frontend/cjs-lexer.js +15 -17
- package/dist/frontend/cjs-lexer.js.map +1 -1
- package/dist/frontend/dts-paths.d.ts +26 -0
- package/dist/frontend/dts-paths.js +41 -0
- package/dist/frontend/dts-paths.js.map +1 -0
- package/dist/frontend/input-tracker.d.ts +0 -2
- package/dist/frontend/input-tracker.js +1 -4
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/lib-contract.d.ts +1 -5
- package/dist/frontend/lib-contract.js +1 -1
- package/dist/frontend/lib-contract.js.map +1 -1
- package/dist/frontend/lib-exports.d.ts +1 -1
- package/dist/frontend/lowering/array-values.d.ts +8 -0
- package/dist/frontend/lowering/array-values.js +60 -0
- package/dist/frontend/lowering/array-values.js.map +1 -0
- package/dist/frontend/lowering/call-position.d.ts +4 -0
- package/dist/frontend/lowering/call-position.js +7 -0
- package/dist/frontend/lowering/call-position.js.map +1 -0
- package/dist/frontend/lowering/callback-arg.d.ts +20 -0
- package/dist/frontend/lowering/callback-arg.js +44 -0
- package/dist/frontend/lowering/callback-arg.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.d.ts +1 -1
- package/dist/frontend/lowering/lib-boundary.js +34 -34
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-array-sort.d.ts +22 -0
- package/dist/frontend/lowering/lower-array-sort.js +619 -0
- package/dist/frontend/lowering/lower-array-sort.js.map +1 -0
- package/dist/frontend/lowering/lower-assert.d.ts +3 -3
- package/dist/frontend/lowering/lower-assert.js +214 -241
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-builtins.d.ts +74 -146
- package/dist/frontend/lowering/lower-builtins.js +1285 -1233
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +59 -192
- package/dist/frontend/lowering/lower-calls.js +1644 -1506
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +62 -125
- package/dist/frontend/lowering/lower-classes.js +832 -866
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-comptime.d.ts +5 -12
- package/dist/frontend/lowering/lower-comptime.js +32 -31
- package/dist/frontend/lowering/lower-comptime.js.map +1 -1
- package/dist/frontend/lowering/lower-containers.d.ts +35 -135
- package/dist/frontend/lowering/lower-containers.js +1984 -2227
- package/dist/frontend/lowering/lower-containers.js.map +1 -1
- package/dist/frontend/lowering/lower-dgram.d.ts +3 -7
- package/dist/frontend/lowering/lower-dgram.js +97 -111
- package/dist/frontend/lowering/lower-dgram.js.map +1 -1
- package/dist/frontend/lowering/lower-enums.d.ts +4 -4
- package/dist/frontend/lowering/lower-enums.js +30 -30
- package/dist/frontend/lowering/lower-enums.js.map +1 -1
- package/dist/frontend/lowering/{lower-emitter.d.ts → lower-event-emitter.d.ts} +7 -18
- package/dist/frontend/lowering/{lower-emitter.js → lower-event-emitter.js} +172 -174
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -0
- package/dist/frontend/lowering/lower-expando.d.ts +5 -5
- package/dist/frontend/lowering/lower-expando.js +40 -40
- package/dist/frontend/lowering/lower-expando.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +60 -264
- package/dist/frontend/lowering/lower-exprs.js +2361 -1765
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.d.ts +6 -6
- package/dist/frontend/lowering/lower-generators.js +73 -72
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.d.ts +5 -17
- package/dist/frontend/lowering/lower-inspect.js +273 -261
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.d.ts +39 -49
- package/dist/frontend/lowering/lower-island.js +447 -513
- package/dist/frontend/lowering/lower-island.js.map +1 -1
- package/dist/frontend/lowering/lower-mixins.d.ts +7 -10
- package/dist/frontend/lowering/lower-mixins.js +85 -85
- package/dist/frontend/lowering/lower-mixins.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.d.ts +12 -18
- package/dist/frontend/lowering/lower-modules.js +284 -283
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.d.ts +23 -49
- package/dist/frontend/lowering/lower-namespaces.js +123 -115
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-server.d.ts +18 -25
- package/dist/frontend/lowering/lower-server.js +909 -899
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +30 -149
- package/dist/frontend/lowering/lower-stmts.js +1463 -1285
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.d.ts +12 -12
- package/dist/frontend/lowering/lower-stream.js +300 -301
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lower-test.d.ts +5 -5
- package/dist/frontend/lowering/lower-test.js +82 -82
- package/dist/frontend/lowering/lower-test.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +134 -22
- package/dist/frontend/lowering/lowerer.js +1277 -126
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/pairs-snapshot.d.ts +11 -0
- package/dist/frontend/lowering/pairs-snapshot.js +85 -0
- package/dist/frontend/lowering/pairs-snapshot.js.map +1 -0
- package/dist/frontend/lowering/static-this.d.ts +6 -0
- package/dist/frontend/lowering/static-this.js +24 -0
- package/dist/frontend/lowering/static-this.js.map +1 -0
- package/dist/frontend/lowering/surfaces.d.ts +24 -35
- package/dist/frontend/lowering/surfaces.js +78 -66
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/npm-static-rewrite.js +6 -28
- package/dist/frontend/npm-static-rewrite.js.map +1 -1
- package/dist/frontend/npm-static.d.ts +0 -10
- package/dist/frontend/npm-static.js +4 -7
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm.d.ts +0 -24
- package/dist/frontend/npm.js +11 -85
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/program.d.ts +3 -1
- package/dist/frontend/program.js +9 -4
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/provenance-registry.d.ts +0 -2
- package/dist/frontend/provenance-registry.js +0 -10
- package/dist/frontend/provenance-registry.js.map +1 -1
- package/dist/frontend/provenance.js +4 -7
- package/dist/frontend/provenance.js.map +1 -1
- package/dist/frontend/resolve.d.ts +7 -2
- package/dist/frontend/resolve.js +12 -17
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/resolve.test.d.ts +1 -0
- package/dist/frontend/resolve.test.js +29 -0
- package/dist/frontend/resolve.test.js.map +1 -0
- package/dist/frontend/ts7/adapter.d.ts +2 -2
- package/dist/frontend/ts7/adapter.js +1 -1
- package/dist/frontend/ts7/adapter.js.map +1 -1
- package/dist/frontend/ts7/checker.js +2 -36
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/ts7/enums.js +2 -1
- package/dist/frontend/ts7/enums.js.map +1 -1
- package/dist/frontend/ts7/{program.js → program-adapter.js} +7 -6
- package/dist/frontend/ts7/program-adapter.js.map +1 -0
- package/dist/frontend/ts7/world-check.d.ts +1 -3
- package/dist/frontend/ts7/world-check.js +3 -1
- package/dist/frontend/ts7/world-check.js.map +1 -1
- package/dist/frontend/tsc-codes.d.ts +8 -0
- package/dist/frontend/tsc-codes.js +109 -0
- package/dist/frontend/tsc-codes.js.map +1 -0
- package/dist/frontend/{types.d.ts → type-mapper.d.ts} +2 -25
- package/dist/frontend/{types.js → type-mapper.js} +12 -11
- package/dist/frontend/type-mapper.js.map +1 -0
- package/dist/frontend/workspace-registry.d.ts +26 -0
- package/dist/frontend/workspace-registry.js +71 -0
- package/dist/frontend/workspace-registry.js.map +1 -0
- package/dist/index.d.ts +113 -31
- package/dist/index.js +536 -128
- package/dist/index.js.map +1 -1
- package/dist/ir/analysis.d.ts +37 -0
- package/dist/ir/analysis.js +118 -0
- package/dist/ir/analysis.js.map +1 -0
- package/dist/ir/analysis.test.d.ts +1 -0
- package/dist/ir/analysis.test.js +21 -0
- package/dist/ir/analysis.test.js.map +1 -0
- package/dist/ir/build.d.ts +9 -0
- package/dist/ir/build.js +33 -0
- package/dist/ir/build.js.map +1 -0
- package/dist/ir/integer-loops.d.ts +1 -1
- package/dist/ir/{nodes.d.ts → ir.d.ts} +119 -37
- package/dist/ir/{nodes.js → ir.js} +170 -166
- package/dist/ir/ir.js.map +1 -0
- package/dist/ir/ir.test.d.ts +1 -0
- package/dist/ir/ir.test.js +17 -0
- package/dist/ir/ir.test.js.map +1 -0
- package/dist/ir/serialize.d.ts +2 -2
- package/dist/ir/serialize.js +3 -2
- package/dist/ir/serialize.js.map +1 -1
- package/dist/ir/validate.d.ts +1 -1
- package/dist/ir/validate.js +93 -41
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/cache-primitives.d.ts +24 -0
- package/dist/library/cache-primitives.js +83 -0
- package/dist/library/cache-primitives.js.map +1 -0
- package/dist/library/cache-reset.test.d.ts +1 -0
- package/dist/library/cache-reset.test.js +47 -0
- package/dist/library/cache-reset.test.js.map +1 -0
- package/dist/library/{implementation-identity.js → compiler-self-identity.js} +1 -1
- package/dist/library/compiler-self-identity.js.map +1 -0
- package/dist/library/fence-eval.d.ts +3 -1
- package/dist/library/fence-eval.js +8 -2
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/int-infer.d.ts +1 -36
- package/dist/library/int-infer.js +29 -18
- package/dist/library/int-infer.js.map +1 -1
- package/dist/library/int-infer.test.js +4 -4
- package/dist/library/{early-cache.d.ts → library-cache.d.ts} +1 -1
- package/dist/library/{early-cache.js → library-cache.js} +34 -89
- package/dist/library/library-cache.js.map +1 -0
- package/dist/library/library-cache.test.d.ts +1 -0
- package/dist/library/{early-cache.test.js → library-cache.test.js} +7 -7
- package/dist/library/library-cache.test.js.map +1 -0
- package/dist/library/{profile.d.ts → library-profile.d.ts} +4 -7
- package/dist/library/{profile.js → library-profile.js} +18 -11
- package/dist/library/library-profile.js.map +1 -0
- package/dist/library/semantic-source.js +2 -1
- package/dist/library/semantic-source.js.map +1 -1
- package/dist/library/sidecar.d.ts +5 -2
- package/dist/library/sidecar.js +11 -5
- package/dist/library/sidecar.js.map +1 -1
- package/dist/startup-cache.d.ts +11 -3
- package/dist/startup-cache.js +17 -2
- package/dist/startup-cache.js.map +1 -1
- package/package.json +19 -2
- package/surface-manifest.json +5 -5
- package/dist/backend/cc-cache.test.js.map +0 -1
- package/dist/backend/cc.js.map +0 -1
- package/dist/backend/emission/emit-async.js.map +0 -1
- package/dist/backend/emission/emit-exprs.d.ts +0 -13
- package/dist/backend/emission/emit-exprs.js +0 -7407
- package/dist/backend/emission/emit-exprs.js.map +0 -1
- package/dist/backend/emission/emit-island.js.map +0 -1
- package/dist/backend/emission/emit-shapes.js.map +0 -1
- package/dist/backend/emission/emit-stmts.js.map +0 -1
- package/dist/backend/emission/emit-types.js.map +0 -1
- package/dist/backend/emission/emit-walkers.js.map +0 -1
- package/dist/backend/emission/emitter.js.map +0 -1
- package/dist/backend/emission/may-throw.js.map +0 -1
- package/dist/backend/library-identity.js.map +0 -1
- package/dist/executable/early-cache.js.map +0 -1
- package/dist/executable/early-cache.test.js.map +0 -1
- package/dist/ffi/profile.js.map +0 -1
- package/dist/frontend/lowering/lower-emitter.js.map +0 -1
- package/dist/frontend/shared.d.ts +0 -82
- package/dist/frontend/shared.js +0 -308
- package/dist/frontend/shared.js.map +0 -1
- package/dist/frontend/ts7/program.js.map +0 -1
- package/dist/frontend/types.js.map +0 -1
- package/dist/ir/nodes.js.map +0 -1
- package/dist/library/early-cache.js.map +0 -1
- package/dist/library/early-cache.test.js.map +0 -1
- package/dist/library/implementation-identity.js.map +0 -1
- package/dist/library/profile.js.map +0 -1
- /package/dist/backend/{cc-cache.test.d.ts → c/types.test.d.ts} +0 -0
- /package/dist/{executable/early-cache.test.d.ts → backend/llvm/shapes.test.d.ts} +0 -0
- /package/dist/{library/early-cache.test.d.ts → backend/native-codegen.test.d.ts} +0 -0
- /package/dist/ffi/{profile.d.ts → ffi-manifest.d.ts} +0 -0
- /package/dist/frontend/ts7/{program.d.ts → program-adapter.d.ts} +0 -0
- /package/dist/library/{implementation-identity.d.ts → compiler-self-identity.d.ts} +0 -0
|
@@ -0,0 +1,687 @@
|
|
|
1
|
+
import { f64Lit } from "./common.js";
|
|
2
|
+
/** Emit a validation-ladder call that always throws, preserving the typed
|
|
3
|
+
* dummy-result ownership shape until the pending check unwinds it. */
|
|
4
|
+
export function emitAlwaysThrowLibCall(host, e, sym) {
|
|
5
|
+
const args = e.args.map((a) => host.emitExpr(a));
|
|
6
|
+
host.declare(`declare void @${sym}(${args.map(() => "ptr").join(", ")})`);
|
|
7
|
+
host.B.line(`call void @${sym}(${args.map((a) => `ptr ${a.name}`).join(", ")})`);
|
|
8
|
+
const ty = host.llType(e.type);
|
|
9
|
+
if (ty === "void") {
|
|
10
|
+
host.emitPendingCheck();
|
|
11
|
+
return { name: "", type: e.type };
|
|
12
|
+
}
|
|
13
|
+
const dummy = ty === "double" ? f64Lit(0) : ty === "i1" ? "false" : "null";
|
|
14
|
+
const out = host.own({ name: dummy, type: e.type });
|
|
15
|
+
host.emitPendingCheck();
|
|
16
|
+
return out;
|
|
17
|
+
}
|
|
18
|
+
export const LIB_FN_SYMS = {
|
|
19
|
+
"util.parseArgs": "scr_util_parse_args",
|
|
20
|
+
"math.maxArr": "scr_math_max_arr",
|
|
21
|
+
"math.minArr": "scr_math_min_arr",
|
|
22
|
+
"math.min": "scr_math_min",
|
|
23
|
+
"math.max": "scr_math_max",
|
|
24
|
+
"math.random": "scr_math_random",
|
|
25
|
+
"num.parseInt": "scr_parse_int",
|
|
26
|
+
"num.parseFloat": "scr_parse_float",
|
|
27
|
+
"num.fromString": "scr_string_to_number",
|
|
28
|
+
"math.round": "scr_math_round",
|
|
29
|
+
// decodeUriComponent is NOT here: it throws (MAY_THROW_LIB_FNS), so it
|
|
30
|
+
// refuses by name like the rest of the throwing tier.
|
|
31
|
+
"str.encodeUriComponent": "scr_str_encode_uri_component",
|
|
32
|
+
// DOMException: construction and the read surface never throw; the
|
|
33
|
+
// WebIDL clone's option validation throws (may-throw pending check).
|
|
34
|
+
"error.newDom": "scr_domex_new",
|
|
35
|
+
"error.domCode": "scr_domex_code",
|
|
36
|
+
"error.domHasCause": "scr_domex_has_cause",
|
|
37
|
+
"error.domCause": "scr_domex_cause",
|
|
38
|
+
"error.domClone": "scr_domex_clone",
|
|
39
|
+
"dyn.errInstanceof": "scr_dyn_err_instanceof",
|
|
40
|
+
"num.toExponential": "scr_num_to_exponential",
|
|
41
|
+
"num.toFixed0": "scr_num_to_fixed0",
|
|
42
|
+
"num.toFixed": "scr_num_to_fixed",
|
|
43
|
+
"num.sameValue": "scr_num_same_value",
|
|
44
|
+
"intl.numFormatEnUs": "scr_intl_num_format_en_us",
|
|
45
|
+
"number.isFinite": "scr_num_is_finite",
|
|
46
|
+
"number.isNaN": "scr_num_is_nan",
|
|
47
|
+
"number.isInteger": "scr_num_is_integer",
|
|
48
|
+
"number.isSafeInteger": "scr_num_is_safe_integer",
|
|
49
|
+
"string.lastIndexOf": "scr_str_last_index_of",
|
|
50
|
+
"string.raw": "scr_str_raw",
|
|
51
|
+
"path.join": "scr_path_join",
|
|
52
|
+
"path.resolve": "scr_path_resolve",
|
|
53
|
+
"path.normalize": "scr_path_normalize",
|
|
54
|
+
"path.dirname": "scr_path_dirname",
|
|
55
|
+
"path.basename": "scr_path_basename",
|
|
56
|
+
"path.extname": "scr_path_extname",
|
|
57
|
+
"path.isAbsolute": "scr_path_is_absolute",
|
|
58
|
+
"path.relative": "scr_path_relative",
|
|
59
|
+
"path.toNamespacedPath": "scr_path_to_namespaced_path",
|
|
60
|
+
"path.win32Join": "scr_path_win32_join",
|
|
61
|
+
"path.win32Resolve": "scr_path_win32_resolve",
|
|
62
|
+
"path.win32Normalize": "scr_path_win32_normalize",
|
|
63
|
+
"path.win32Dirname": "scr_path_win32_dirname",
|
|
64
|
+
"path.win32Basename": "scr_path_win32_basename",
|
|
65
|
+
"path.win32Extname": "scr_path_win32_extname",
|
|
66
|
+
"path.win32IsAbsolute": "scr_path_win32_is_absolute",
|
|
67
|
+
"path.win32Relative": "scr_path_win32_relative",
|
|
68
|
+
"path.win32ToNamespacedPath": "scr_path_win32_to_namespaced_path",
|
|
69
|
+
"os.homedir": "scr_os_homedir",
|
|
70
|
+
"os.type": "scr_os_type",
|
|
71
|
+
"os.totalmem": "scr_os_totalmem",
|
|
72
|
+
"os.release": "scr_os_release",
|
|
73
|
+
"os.userName": "scr_os_user_name",
|
|
74
|
+
"os.userShell": "scr_os_user_shell",
|
|
75
|
+
"os.userHomedir": "scr_os_user_homedir",
|
|
76
|
+
"os.tmpdir": "scr_os_tmpdir",
|
|
77
|
+
"process.argv": "scr_process_argv",
|
|
78
|
+
"process.platform": "scr_process_platform",
|
|
79
|
+
"process.cwd": "scr_process_cwd",
|
|
80
|
+
"process.pid": "scr_process_pid",
|
|
81
|
+
"process.getuid": "scr_process_getuid",
|
|
82
|
+
"process.getgid": "scr_process_getgid",
|
|
83
|
+
"process.execPath": "scr_process_exec_path",
|
|
84
|
+
"process.arch": "scr_process_arch",
|
|
85
|
+
"process.versionsNode": "scr_process_versions_node",
|
|
86
|
+
"process.versionsOpenssl": "scr_process_versions_openssl",
|
|
87
|
+
"process.umask": "scr_process_umask",
|
|
88
|
+
"process.uptime": "scr_process_uptime",
|
|
89
|
+
"perf.now": "scr_perf_now",
|
|
90
|
+
"process.availableMemory": "scr_available_memory",
|
|
91
|
+
"process.constrainedMemory": "scr_constrained_memory",
|
|
92
|
+
"process.cpuUser": "scr_cpu_user",
|
|
93
|
+
"process.cpuSystem": "scr_cpu_system",
|
|
94
|
+
"process.cpuUserDiff": "scr_cpu_user_diff",
|
|
95
|
+
"process.cpuSystemDiff": "scr_cpu_system_diff",
|
|
96
|
+
"process.threadCpuUser": "scr_thread_cpu_user",
|
|
97
|
+
"process.threadCpuSystem": "scr_thread_cpu_system",
|
|
98
|
+
"process.threadCpuUserDiff": "scr_thread_cpu_user_diff",
|
|
99
|
+
"process.threadCpuSystemDiff": "scr_thread_cpu_system_diff",
|
|
100
|
+
"process.rusage": "scr_process_rusage",
|
|
101
|
+
"process.activeResources": "scr_active_resources",
|
|
102
|
+
"process.exiting": "scr_process_exiting",
|
|
103
|
+
"process.exit": "scr_process_exit",
|
|
104
|
+
"process.envSet": "scr_env_set",
|
|
105
|
+
"process.envUnset": "scr_env_unset",
|
|
106
|
+
"process.envPairs": "scr_env_pairs",
|
|
107
|
+
"process.stdoutWrite": "scr_process_stdout_write",
|
|
108
|
+
"process.stderrWrite": "scr_process_stderr_write",
|
|
109
|
+
"process.isTTY": "scr_process_is_tty",
|
|
110
|
+
"date.now": "scr_date_now",
|
|
111
|
+
"date.newNow": "scr_date_now",
|
|
112
|
+
"date.newMs": "scr_date_new_ms",
|
|
113
|
+
"date.newString": "scr_date_parse_get_time",
|
|
114
|
+
"date.getTime": "scr_date_get_time",
|
|
115
|
+
"date.valueOf": "scr_date_get_time",
|
|
116
|
+
"date.parseGetTime": "scr_date_parse_get_time",
|
|
117
|
+
"date.utc": "scr_date_utc",
|
|
118
|
+
"date.getFullYear": "scr_date_get_full_year_local",
|
|
119
|
+
"date.getUTCFullYear": "scr_date_get_full_year_utc",
|
|
120
|
+
"date.getMonth": "scr_date_get_month_local",
|
|
121
|
+
"date.getUTCMonth": "scr_date_get_month_utc",
|
|
122
|
+
"date.getDate": "scr_date_get_date_local",
|
|
123
|
+
"date.getUTCDate": "scr_date_get_date_utc",
|
|
124
|
+
"date.getDay": "scr_date_get_day_local",
|
|
125
|
+
"date.getUTCDay": "scr_date_get_day_utc",
|
|
126
|
+
"date.getHours": "scr_date_get_hours_local",
|
|
127
|
+
"date.getUTCHours": "scr_date_get_hours_utc",
|
|
128
|
+
"date.getMinutes": "scr_date_get_minutes_local",
|
|
129
|
+
"date.getUTCMinutes": "scr_date_get_minutes_utc",
|
|
130
|
+
"date.getSeconds": "scr_date_get_seconds_local",
|
|
131
|
+
"date.getUTCSeconds": "scr_date_get_seconds_utc",
|
|
132
|
+
"date.getMilliseconds": "scr_date_get_milliseconds",
|
|
133
|
+
"date.getUTCMilliseconds": "scr_date_get_milliseconds",
|
|
134
|
+
"date.getTimezoneOffset": "scr_date_get_timezone_offset",
|
|
135
|
+
"fs.existsSync": "scr_fs_exists",
|
|
136
|
+
// ── the throwing slice (MAY_THROW_LIB_FNS members): the generic path
|
|
137
|
+
// emits the standard pending check after each — exprs.ts's finish.
|
|
138
|
+
"process.cpuPrevValidate": "scr_cpu_prev_validate",
|
|
139
|
+
"date.toISOString": "scr_date_to_iso",
|
|
140
|
+
"date.toISOStringValue": "scr_date_to_iso",
|
|
141
|
+
"process.chdir": "scr_process_chdir",
|
|
142
|
+
"fs.writeFileSync": "scr_fs_write_file",
|
|
143
|
+
"fs.appendFileSync": "scr_fs_append_file",
|
|
144
|
+
"fs.mkdirSync": "scr_fs_mkdir",
|
|
145
|
+
"fs.mkdirRecursiveSync": "scr_fs_mkdir_recursive",
|
|
146
|
+
"fs.mkdtempSync": "scr_fs_mkdtemp",
|
|
147
|
+
"fs.rmSync": "scr_fs_rm",
|
|
148
|
+
"fs.rmOptsSync": "scr_fs_rm_opts",
|
|
149
|
+
"fs.rmRetrySync": "scr_fs_rm_opts_retry",
|
|
150
|
+
"fs.rmdirSync": "scr_fs_rmdir",
|
|
151
|
+
"fs.readdirSync": "scr_fs_readdir",
|
|
152
|
+
"fs.realpathSync": "scr_fs_realpath",
|
|
153
|
+
"fs.unlinkSync": "scr_fs_unlink",
|
|
154
|
+
"fs.chmodSync": "scr_fs_chmod",
|
|
155
|
+
"fs.copyFileSync": "scr_fs_copyfile",
|
|
156
|
+
"fs.renameSync": "scr_fs_rename",
|
|
157
|
+
"fs.accessSync": "scr_fs_access",
|
|
158
|
+
// node:assert (scr_assert.c): all args borrowed; failures throw the
|
|
159
|
+
// catchable AssertionError. The never-throwing members ride along.
|
|
160
|
+
"assert.ok": "scr_assert_ok",
|
|
161
|
+
"assert.eqF64": "scr_assert_eq_f64",
|
|
162
|
+
"assert.eqStr": "scr_assert_eq_str",
|
|
163
|
+
"assert.eqBool": "scr_assert_eq_bool",
|
|
164
|
+
"assert.eqSym": "scr_assert_eq_sym",
|
|
165
|
+
"assert.eqDyn": "scr_assert_eq_dyn",
|
|
166
|
+
"assert.deepResult": "scr_assert_deep_result",
|
|
167
|
+
"assert.sameValue": "scr_assert_same_value_f64",
|
|
168
|
+
"assert.deqEnter": "scr_assert_deq_enter",
|
|
169
|
+
"assert.deqLeave": "scr_assert_deq_leave",
|
|
170
|
+
"assert.match": "scr_assert_match",
|
|
171
|
+
"assert.throwsNone": "scr_assert_throws_none",
|
|
172
|
+
"assert.throwsMismatch": "scr_assert_throws_mismatch",
|
|
173
|
+
"assert.throwsRegex": "scr_assert_throws_regex",
|
|
174
|
+
"assert.shapeBegin": "scr_assert_shape_begin",
|
|
175
|
+
// shapeStr/shapeRe take an int key — special-cased (fptosi), not generic.
|
|
176
|
+
"assert.shapeEnd": "scr_assert_shape_end",
|
|
177
|
+
"assert.regexErrTest": "scr_assert_regex_err_test",
|
|
178
|
+
"assert.unwantedRejection": "scr_assert_unwanted_rejection",
|
|
179
|
+
"assert.ifErrorErr": "scr_assert_iferror_err",
|
|
180
|
+
"assert.ifErrorF64": "scr_assert_iferror_f64",
|
|
181
|
+
"assert.ifErrorStr": "scr_assert_iferror_str",
|
|
182
|
+
"assert.ifErrorBool": "scr_assert_iferror_bool",
|
|
183
|
+
"assert.ifErrorDyn": "scr_assert_iferror_dyn",
|
|
184
|
+
"assert.refEqFn": "scr_assert_ref_eq_fn",
|
|
185
|
+
"assert.refEqBytes": "scr_assert_ref_eq_bytes",
|
|
186
|
+
"assert.bytesDeepEq": "scr_assert_bytes_deep_eq",
|
|
187
|
+
// The Buffer statics and bytes-adjacent members (scr_bytes.c /
|
|
188
|
+
// scr_bytes_io.c / scr_zlib.c / scr_crypto): fromStr decodes Node-
|
|
189
|
+
// leniently (never throws), concat copies its borrowed list; the sync
|
|
190
|
+
// fs Buffer pair and zlib.inflateSync ride the may-throw check.
|
|
191
|
+
"buffer.fromStr": "scr_bytes_from_str",
|
|
192
|
+
"buffer.concat": "scr_bytes_concat",
|
|
193
|
+
"buffer.concatLen": "scr_bytes_concat_len",
|
|
194
|
+
"buffer.byteLenStr": "scr_bytes_byte_length_str",
|
|
195
|
+
"buffer.isEncoding": "scr_bytes_is_encoding",
|
|
196
|
+
// The checked-dynamic compare/equals validators (scr_bytes_io.c):
|
|
197
|
+
// Node's argument ladders throw catchably (MAY_THROW_LIB_FNS).
|
|
198
|
+
"dyn.toStringCoerce": "scr_dyn_string_coerce_js",
|
|
199
|
+
"buffer.compareChk": "scr_buffer_compare_chk",
|
|
200
|
+
"bytes.equalsChk": "scr_bytes_equals_chk",
|
|
201
|
+
"bytes.compareChk": "scr_bytes_compare_chk",
|
|
202
|
+
"buffer.newStringFail": "scr_buffer_new_string_fail",
|
|
203
|
+
"fs.toUnixTimestamp": "scr_fs_to_unix_timestamp",
|
|
204
|
+
"fs.existsChk": "scr_fs_exists_async",
|
|
205
|
+
"fs.mkdtempSyncChk": "scr_fs_mkdtemp_sync_chk",
|
|
206
|
+
"net.connectAttempt": "scr_net_connect_attempt",
|
|
207
|
+
"fs.lchmodSyncChk": "scr_fs_lchmod_sync_chk",
|
|
208
|
+
"fsp.lchmodChk": "scr_fsp_lchmod_chk",
|
|
209
|
+
"fs.readFileSyncBuf": "scr_fs_read_file_bytes",
|
|
210
|
+
"fs.readFileSyncBytes": "scr_fs_read_file_bytes",
|
|
211
|
+
"fs.writeFileSyncBytes": "scr_fs_write_file_bytes",
|
|
212
|
+
"fs.readFdSyncBytes": "scr_fs_read_fd_bytes",
|
|
213
|
+
// Stats snapshots (scr_lib.c): statSync/lstatSync throw like the other
|
|
214
|
+
// sync fs calls; the getters are pure reads.
|
|
215
|
+
"fs.statSync": "scr_fs_stat",
|
|
216
|
+
"fs.lstatSync": "scr_fs_lstat",
|
|
217
|
+
"fs.openSync": "scr_fs_open",
|
|
218
|
+
"fs.readSync": "scr_fs_read_sync",
|
|
219
|
+
"fs.writeSync": "scr_fs_write_sync",
|
|
220
|
+
"fs.writeStrSync": "scr_fs_write_str_sync",
|
|
221
|
+
"fs.closeSync": "scr_fs_close",
|
|
222
|
+
// string_decoder (scr_bytes.c): stateless helpers over (enc, pending,
|
|
223
|
+
// chunk) — never throw.
|
|
224
|
+
"strdec.write": "scr_strdec_write",
|
|
225
|
+
"strdec.next": "scr_strdec_next",
|
|
226
|
+
"strdec.end": "scr_strdec_end",
|
|
227
|
+
"stats.isFile": "scr_stats_is_file",
|
|
228
|
+
"stats.isDirectory": "scr_stats_is_dir",
|
|
229
|
+
"stats.isSymbolicLink": "scr_stats_is_symlink",
|
|
230
|
+
"stats.size": "scr_stats_size",
|
|
231
|
+
"stats.blocks": "scr_stats_blocks",
|
|
232
|
+
"stats.nlink": "scr_stats_nlink",
|
|
233
|
+
"stats.atimeMs": "scr_stats_atime_ms",
|
|
234
|
+
"stats.mtimeMs": "scr_stats_mtime_ms",
|
|
235
|
+
"text.decode": "scr_text_decode",
|
|
236
|
+
"text.decodeLegacy": "scr_text_decode_legacy",
|
|
237
|
+
"zlib.deflateSync": "scr_zlib_deflate",
|
|
238
|
+
"zlib.inflateSync": "scr_zlib_inflate",
|
|
239
|
+
// The CA-store unit. get/set throw (an unknown type name, a
|
|
240
|
+
// certificate-free set) and take the generic path's pending check.
|
|
241
|
+
"tlsca.root": "scr_tls_ca_root",
|
|
242
|
+
"tlsca.get": "scr_tls_ca_get",
|
|
243
|
+
"tlsca.set": "scr_tls_ca_set_default",
|
|
244
|
+
"crypto.randomBytes": "scr_crypto_random_bytes",
|
|
245
|
+
"crypto.randomBytesToString": "scr_crypto_random_string",
|
|
246
|
+
"crypto.randomUUID": "scr_crypto_random_uuid",
|
|
247
|
+
"crypto.hashDigestStr": "scr_crypto_hash_digest_str",
|
|
248
|
+
"crypto.hashDigestBytes": "scr_crypto_hash_digest_bytes",
|
|
249
|
+
"process.stdoutWriteBytes": "scr_process_stdout_write_bytes",
|
|
250
|
+
"process.stderrWriteBytes": "scr_process_stderr_write_bytes",
|
|
251
|
+
"insp.buffer": "scr_insp_buffer",
|
|
252
|
+
// util.inspect (scr_inspect.c): all args borrowed; string results +1;
|
|
253
|
+
// the begin/entry/key/moreItems/end accumulator drives the emitted
|
|
254
|
+
// container walks. None of these throw.
|
|
255
|
+
"insp.f64": "scr_insp_f64",
|
|
256
|
+
"insp.str": "scr_insp_str",
|
|
257
|
+
"insp.regex": "scr_insp_regex",
|
|
258
|
+
"insp.error": "scr_insp_error",
|
|
259
|
+
"insp.begin": "scr_insp_begin",
|
|
260
|
+
"insp.entry": "scr_insp_entry",
|
|
261
|
+
"insp.key": "scr_insp_key",
|
|
262
|
+
"insp.moreItems": "scr_insp_more_items",
|
|
263
|
+
"insp.end": "scr_insp_end",
|
|
264
|
+
// Circular references over cycle-capable composites (Node's
|
|
265
|
+
// seen/circular machinery — none of these throw; refWrap borrows its
|
|
266
|
+
// string and answers +1).
|
|
267
|
+
"insp.circCheck": "scr_insp_circ_check",
|
|
268
|
+
"insp.seenPush": "scr_insp_seen_push",
|
|
269
|
+
"insp.refWrap": "scr_insp_ref_wrap",
|
|
270
|
+
"insp.circular": "scr_insp_circular",
|
|
271
|
+
// WHATWG URL + URLSearchParams (scr_url.c / scr_url_params.c):
|
|
272
|
+
// constructions +1; url.new, the fileURLToPath pair, the win32
|
|
273
|
+
// pathToFileURL flavor, and sp.fromPairs throw catchably (may-throw).
|
|
274
|
+
"url.new": "scr_url_new",
|
|
275
|
+
"url.protocol": "scr_url_protocol",
|
|
276
|
+
"url.host": "scr_url_host",
|
|
277
|
+
"url.hostname": "scr_url_hostname",
|
|
278
|
+
"url.pathname": "scr_url_pathname",
|
|
279
|
+
"url.href": "scr_url_href",
|
|
280
|
+
"url.search": "scr_url_search",
|
|
281
|
+
"url.searchParams": "scr_url_search_params",
|
|
282
|
+
"url.fileURLToPathUrl": "scr_url_to_path",
|
|
283
|
+
"url.fileURLToPathStr": "scr_url_str_to_path",
|
|
284
|
+
"url.pathToFileURL": "scr_url_from_path",
|
|
285
|
+
"url.pathToFileURLWin32": "scr_url_from_path",
|
|
286
|
+
"sp.new": "scr_sp_new",
|
|
287
|
+
"sp.parse": "scr_sp_parse",
|
|
288
|
+
"sp.copy": "scr_sp_copy",
|
|
289
|
+
"sp.fromPairs": "scr_sp_from_pairs",
|
|
290
|
+
"sp.with": "scr_sp_with",
|
|
291
|
+
"sp.getAll": "scr_sp_get_all",
|
|
292
|
+
"sp.append": "scr_sp_append",
|
|
293
|
+
"sp.set": "scr_sp_set",
|
|
294
|
+
"sp.delete": "scr_sp_delete",
|
|
295
|
+
"sp.deleteValue": "scr_sp_delete_value",
|
|
296
|
+
"sp.has": "scr_sp_has",
|
|
297
|
+
"sp.hasValue": "scr_sp_has_value",
|
|
298
|
+
"sp.sort": "scr_sp_sort",
|
|
299
|
+
"sp.size": "scr_sp_size",
|
|
300
|
+
"sp.toString": "scr_sp_to_string",
|
|
301
|
+
"sp.keyAt": "scr_sp_key_at",
|
|
302
|
+
"sp.valAt": "scr_sp_val_at",
|
|
303
|
+
// node:querystring (scr_qs.c): unescape/stringify are plain generic
|
|
304
|
+
// calls (never throw; string results +1), and escape IS the component
|
|
305
|
+
// encoder (Node's qsEscape set equals encodeURIComponent's) so it emits
|
|
306
|
+
// the always-linked codec. qs.parse is special-cased in emitLibCall
|
|
307
|
+
// (the result dictionary's construction).
|
|
308
|
+
"qs.escape": "scr_str_encode_uri_component",
|
|
309
|
+
"qs.unescape": "scr_qs_unescape",
|
|
310
|
+
"qs.stringify": "scr_qs_stringify",
|
|
311
|
+
// Timer handle bookkeeping (never throws; the comma-shaped chaining
|
|
312
|
+
// forms are special-cased in emitLibCall).
|
|
313
|
+
"timers.hasRef": "scr_timer_has_ref",
|
|
314
|
+
"timers.immediateHasRef": "scr_immediate_has_ref",
|
|
315
|
+
"timers.clearImmediate": "scr_clear_immediate",
|
|
316
|
+
// Process event removals (borrowed callbacks: removal is by pointer
|
|
317
|
+
// identity); registration is special-cased above (ownership moves).
|
|
318
|
+
"process.offSignal": "scr_signal_off",
|
|
319
|
+
"process.offExit": "scr_process_off_exit",
|
|
320
|
+
// child_process (scr_child.c): spawnSync/exec forms are synchronous
|
|
321
|
+
// (execSync/execCapture throw — the may-throw check); handle getters
|
|
322
|
+
// are pure reads. Registration forms are special-cased (moves + per-
|
|
323
|
+
// shape adapters); spawn itself is special-cased for usesTimers.
|
|
324
|
+
"cp.spawnSync": "scr_spawn_sync",
|
|
325
|
+
"cp.spawnSyncOpts": "scr_spawn_sync_opts",
|
|
326
|
+
"cp.spawnSyncStdioStr": "scr_spawn_sync_stdio_str",
|
|
327
|
+
"cp.execSync": "scr_exec_sync",
|
|
328
|
+
"cp.execCapture": "scr_exec_capture",
|
|
329
|
+
"spawnRes.stdout": "scr_spawn_res_stdout",
|
|
330
|
+
"spawnRes.stderr": "scr_spawn_res_stderr",
|
|
331
|
+
"child.killed": "scr_child_killed",
|
|
332
|
+
"child.kill": "scr_child_kill",
|
|
333
|
+
"child.killNum": "scr_child_kill_num",
|
|
334
|
+
"child.unref": "scr_child_unref",
|
|
335
|
+
"procStream.write": "scr_proc_stream_write",
|
|
336
|
+
"process.kill": "scr_process_kill_named",
|
|
337
|
+
"process.killNum": "scr_process_kill",
|
|
338
|
+
// fs.promises (scr_bytes_io.c / scr_lib.c): the promise forms settle
|
|
339
|
+
// instead of throwing — plain generic calls answering a +1 promise.
|
|
340
|
+
// fsp.readFile is NOT here: it carries the ignored encoding argument,
|
|
341
|
+
// so it is special-cased in emitLibCall (the fs.readFileSync pattern).
|
|
342
|
+
"fsp.readFileBytes": "scr_fsp_read_file_bytes",
|
|
343
|
+
"fsp.writeFile": "scr_fsp_write_file",
|
|
344
|
+
"fsp.writeFileMode": "scr_fsp_write_file_mode",
|
|
345
|
+
"fsp.mkdir": "scr_fsp_mkdir",
|
|
346
|
+
"fsp.mkdirMode": "scr_fsp_mkdir_mode",
|
|
347
|
+
"fsp.mkdirRecursive": "scr_fsp_mkdir_recursive",
|
|
348
|
+
"fsp.mkdirRecursiveMode": "scr_fsp_mkdir_recursive_mode",
|
|
349
|
+
"fsp.unlink": "scr_fsp_unlink",
|
|
350
|
+
"fsp.chmod": "scr_fsp_chmod",
|
|
351
|
+
"fsp.rename": "scr_fsp_rename",
|
|
352
|
+
"fsp.readdir": "scr_fsp_readdir",
|
|
353
|
+
"fsp.rm": "scr_fsp_rm",
|
|
354
|
+
"fsp.stat": "scr_fsp_stat",
|
|
355
|
+
"fsp.open": "scr_fsp_open",
|
|
356
|
+
"fileHandle.fd": "scr_file_handle_fd",
|
|
357
|
+
"fileHandle.close": "scr_file_handle_close_promise",
|
|
358
|
+
"fileHandle.readFile": "scr_file_handle_read_file_promise",
|
|
359
|
+
"fileHandle.readFileBytes": "scr_file_handle_read_file_bytes_promise",
|
|
360
|
+
"fileHandle.writeFile": "scr_file_handle_write_file_promise",
|
|
361
|
+
"fileHandle.writeFileBytes": "scr_file_handle_write_file_bytes_promise",
|
|
362
|
+
"fileHandle.stat": "scr_file_handle_stat_promise",
|
|
363
|
+
"sym.new": "scr_sym_new",
|
|
364
|
+
"sym.for": "scr_sym_for",
|
|
365
|
+
"sym.toString": "scr_sym_to_string",
|
|
366
|
+
"error.toString": "scr_error_to_string",
|
|
367
|
+
"class.name": "scr_classobj_name",
|
|
368
|
+
// The dyn (ScrDyn dyn) surface (scr_json.c / scr_dyn_invoke.c):
|
|
369
|
+
// json.parse throws the catchable SyntaxError; keySet/toString/
|
|
370
|
+
// defineProps throw Node's TypeErrors (all in the may-throw seed set —
|
|
371
|
+
// the generic path emits the standard pending check). typeof and the
|
|
372
|
+
// ambient-this read never throw. The fs dyn read is the sync-fs story.
|
|
373
|
+
"fetch.start": "scr_fetch_static",
|
|
374
|
+
"fetch.responseNew": "scr_fetch_response_new",
|
|
375
|
+
"fetch.responseJson": "scr_fetch_response_json",
|
|
376
|
+
"fetch.responseText": "scr_fetch_response_text",
|
|
377
|
+
"fetch.responseBytes": "scr_fetch_response_bytes",
|
|
378
|
+
"fetch.abortControllerNew": "scr_fetch_abort_controller_new",
|
|
379
|
+
"fetch.abortTimeout": "scr_fetch_abort_timeout",
|
|
380
|
+
"fetch.abortNow": "scr_fetch_abort_now",
|
|
381
|
+
"fetch.abortAny": "scr_fetch_abort_any",
|
|
382
|
+
"fetch.streamNew": "scr_fetch_stream_new",
|
|
383
|
+
"fetch.streamFrom": "scr_fetch_stream_from",
|
|
384
|
+
"fetch.readerRead": "scr_fetch_reader_read",
|
|
385
|
+
"json.parse": "scr_json_parse",
|
|
386
|
+
"dyn.keySet": "scr_dyn_key_set",
|
|
387
|
+
"dyn.iterPack": "scr_dyn_iter_pack",
|
|
388
|
+
"dyn.arrLen": "scr_dyn_arr_len",
|
|
389
|
+
"dyn.arrAt": "scr_dyn_arr_at",
|
|
390
|
+
"dyn.hasKey": "scr_dyn_has_key",
|
|
391
|
+
"dyn.defineProps": "scr_dyn_define_props",
|
|
392
|
+
"dyn.typeof": "scr_dyn_typeof",
|
|
393
|
+
"dyn.toString": "scr_dyn_to_string_method",
|
|
394
|
+
"dyn.this": "scr_dyn_this_get",
|
|
395
|
+
"insp.dyn": "scr_insp_dyn",
|
|
396
|
+
"insp.dynS": "scr_insp_dyn_s",
|
|
397
|
+
"fs.readFileSyncDyn": "scr_fs_read_file_sync_dyn",
|
|
398
|
+
// Loose generic-shaped stragglers the burn-down surfaced alongside the
|
|
399
|
+
// dyn head: the x509 PEM walks and stdin raw-mode throw catchably (the
|
|
400
|
+
// may-throw seed set); the mode-carrying fs sync forms are the plain
|
|
401
|
+
// sync-fs story; stdinDestroy is a deliberate no-op; atomics.wait is
|
|
402
|
+
// the static sleep.
|
|
403
|
+
"crypto.x509Fingerprint": "scr_crypto_x509_fingerprint",
|
|
404
|
+
"crypto.x509FingerprintStr": "scr_crypto_x509_fingerprint_str",
|
|
405
|
+
"crypto.x509ValidFrom": "scr_crypto_x509_valid_from",
|
|
406
|
+
"crypto.x509ValidFromStr": "scr_crypto_x509_valid_from_str",
|
|
407
|
+
"crypto.x509ValidTo": "scr_crypto_x509_valid_to",
|
|
408
|
+
"crypto.x509ValidToStr": "scr_crypto_x509_valid_to_str",
|
|
409
|
+
"fs.writeFileModeSync": "scr_fs_write_file_mode",
|
|
410
|
+
"fs.chownSync": "scr_fs_chown",
|
|
411
|
+
"fs.mkdirModeSync": "scr_fs_mkdir_mode",
|
|
412
|
+
"fs.mkdirRecursiveModeSync": "scr_fs_mkdir_recursive_mode",
|
|
413
|
+
"atomics.wait": "scr_atomics_wait",
|
|
414
|
+
"process.stdinDestroy": "scr_process_stdin_destroy",
|
|
415
|
+
"process.stdinSetRawMode": "scr_process_stdin_set_raw_mode",
|
|
416
|
+
// node:events EventEmitter (scr_events_emitter.c): receivers borrowed,
|
|
417
|
+
// chaining forms answer the receiver +1 (Node's `return this`). The
|
|
418
|
+
// registration/removal family and emitError are may-throw (meta
|
|
419
|
+
// listeners run inside; unhandled 'error' throws its payload) — the
|
|
420
|
+
// generic path's pending check covers them. on/onDyn and the emit
|
|
421
|
+
// family have non-generic shapes (adapter/variadic) — special-cased in
|
|
422
|
+
// emitLibCall.
|
|
423
|
+
"emitter.new": "scr_emitter_new",
|
|
424
|
+
"emitter.ctor": "scr_emitter_init",
|
|
425
|
+
"emitter.off": "scr_emitter_off",
|
|
426
|
+
"emitter.offDyn": "scr_emitter_off_dyn",
|
|
427
|
+
"emitter.checkListener": "scr_emitter_check_listener",
|
|
428
|
+
"emitter.removeAll": "scr_emitter_remove_all",
|
|
429
|
+
"emitter.emitError": "scr_emitter_emit_error",
|
|
430
|
+
"emitter.count": "scr_emitter_listener_count",
|
|
431
|
+
"emitter.countFn": "scr_emitter_listener_count_fn",
|
|
432
|
+
"emitter.names": "scr_emitter_event_names",
|
|
433
|
+
"emitter.listeners": "scr_emitter_listeners",
|
|
434
|
+
"emitter.setMax": "scr_emitter_set_max",
|
|
435
|
+
"emitter.setMaxChk": "scr_emitter_set_max_chk",
|
|
436
|
+
"emitter.setDefaultMaxChk": "scr_emitter_set_default_max_chk",
|
|
437
|
+
"emitter.getMax": "scr_emitter_get_max",
|
|
438
|
+
"emitter.setDefaultMax": "scr_emitter_set_default_max",
|
|
439
|
+
"emitter.getDefaultMax": "scr_emitter_get_default_max",
|
|
440
|
+
// node:stream (scr_stream.c): receivers borrowed, chunks borrowed,
|
|
441
|
+
// chaining forms answer the receiver +1. The throwing members
|
|
442
|
+
// (listeners and option callbacks run synchronously inside) ride the
|
|
443
|
+
// generic pending check; loop liveness rides USES_TIMERS_LIB_FNS.
|
|
444
|
+
"readable.push": "scr_stream_push",
|
|
445
|
+
"readable.pushStr": "scr_stream_push_str",
|
|
446
|
+
"readable.pushStrEnc": "scr_stream_push_str_enc",
|
|
447
|
+
"readable.pushEncoding": "scr_stream_set_push_encoding",
|
|
448
|
+
"readable.pushNull": "scr_stream_push_null",
|
|
449
|
+
"readable.pushDyn": "scr_stream_push_dyn",
|
|
450
|
+
"readable.unshift": "scr_stream_unshift",
|
|
451
|
+
"readable.unshiftStr": "scr_stream_unshift_str",
|
|
452
|
+
"readable.pause": "scr_stream_pause",
|
|
453
|
+
"readable.resume": "scr_stream_resume",
|
|
454
|
+
"readable.isPaused": "scr_stream_is_paused",
|
|
455
|
+
"readable.setEncoding": "scr_stream_set_encoding",
|
|
456
|
+
"readable.nextChunk": "scr_stream_next_chunk",
|
|
457
|
+
"readable.nextChunkDyn": "scr_stream_next_chunk_dyn",
|
|
458
|
+
"readable.fromArr": "scr_stream_from_arr",
|
|
459
|
+
"readable.pipe": "scr_stream_pipe",
|
|
460
|
+
"writable.cork": "scr_stream_cork",
|
|
461
|
+
"writable.uncork": "scr_stream_uncork",
|
|
462
|
+
"stream.destroyErr": "scr_stream_destroy",
|
|
463
|
+
"readable.newDyn": "scr_stream_new_readable_dyn",
|
|
464
|
+
"writable.newDyn": "scr_stream_new_writable_dyn",
|
|
465
|
+
"duplex.newDyn": "scr_stream_new_duplex_dyn",
|
|
466
|
+
"transform.newDyn": "scr_stream_new_transform_dyn",
|
|
467
|
+
"passthrough.newDyn": "scr_stream_new_passthrough_dyn",
|
|
468
|
+
// node:net + node:http (scr_net.c / scr_http.c): receivers borrowed;
|
|
469
|
+
// writes borrow their payloads; the *Dyn chunk forms and setEncoding
|
|
470
|
+
// are may-throw (generic pending check). Listener registrations and
|
|
471
|
+
// the client request forms have non-generic shapes — special-cased.
|
|
472
|
+
"net.serverPort": "scr_net_server_port",
|
|
473
|
+
"net.sockWrite": "scr_net_sock_write_str",
|
|
474
|
+
"net.sockWriteBytes": "scr_net_sock_write_bytes",
|
|
475
|
+
"net.sockEnd": "scr_net_sock_end",
|
|
476
|
+
"net.sockEndStr": "scr_net_sock_end_str",
|
|
477
|
+
"net.sockEndBytes": "scr_net_sock_end_bytes",
|
|
478
|
+
"net.sockWriteDyn": "scr_net_sock_write_dynv",
|
|
479
|
+
"net.sockEndDyn": "scr_net_sock_end_dynv",
|
|
480
|
+
"net.sockDestroy": "scr_net_sock_destroy",
|
|
481
|
+
"net.sockPipe": "scr_net_sock_pipe",
|
|
482
|
+
"net.sockDestroyed": "scr_net_sock_destroyed",
|
|
483
|
+
"net.sockWritable": "scr_net_sock_writable",
|
|
484
|
+
"net.sockSetEncoding": "scr_net_sock_set_encoding",
|
|
485
|
+
"net.sockSetTimeout": "scr_net_sock_set_timeout",
|
|
486
|
+
"net.sockUnshift": "scr_net_sock_unshift_bytes",
|
|
487
|
+
"net.sockPause": "scr_net_sock_pause",
|
|
488
|
+
"net.sockResume": "scr_net_sock_resume",
|
|
489
|
+
"net.sockSetNoDelay": "scr_net_sock_set_nodelay",
|
|
490
|
+
"net.sockDestroySoon": "scr_net_sock_destroy_soon",
|
|
491
|
+
"net.sockBytesWritten": "scr_net_sock_bytes_written",
|
|
492
|
+
"net.sockReadable": "scr_net_sock_readable",
|
|
493
|
+
"net.sockPipeRes": "scr_http_sock_pipe_res",
|
|
494
|
+
"net.serverEmitConnection": "scr_net_server_emit_connection",
|
|
495
|
+
"net.getAutoSelTimeout": "scr_net_get_autosel_timeout",
|
|
496
|
+
"net.setAutoSelTimeout": "scr_net_set_autosel_timeout",
|
|
497
|
+
"http.reqUrl": "scr_http_req_url",
|
|
498
|
+
"http.reqMethod": "scr_http_req_method",
|
|
499
|
+
"http.reqSocket": "scr_http_req_socket",
|
|
500
|
+
"http.reqRawHeaders": "scr_http_req_raw_headers",
|
|
501
|
+
"http.reqHeaderPairs": "scr_http_req_header_pairs",
|
|
502
|
+
"http.reqPipeRes": "scr_http_req_pipe_res",
|
|
503
|
+
"http.reqPipeClient": "scr_http_req_pipe_client",
|
|
504
|
+
"http.reqPipeSock": "scr_http_req_pipe_sock",
|
|
505
|
+
"http.reqResume": "scr_http_req_resume",
|
|
506
|
+
"http.reqDestroy": "scr_http_req_destroy",
|
|
507
|
+
"http.reqSetEncoding": "scr_http_req_set_encoding",
|
|
508
|
+
"http.resSetHeader": "scr_http_res_set_header",
|
|
509
|
+
"http.resWriteHead": "scr_http_res_write_head",
|
|
510
|
+
"http.resWriteHeadN": "scr_http_res_write_head_n",
|
|
511
|
+
"http.resWrite": "scr_http_res_write_str",
|
|
512
|
+
"http.resWriteBytes": "scr_http_res_write_bytes",
|
|
513
|
+
"http.resEnd": "scr_http_res_end",
|
|
514
|
+
"http.resEndStr": "scr_http_res_end_str",
|
|
515
|
+
"http.resEndBytes": "scr_http_res_end_bytes",
|
|
516
|
+
"http.resWriteDyn": "scr_http_res_write_dynv",
|
|
517
|
+
"http.resEndDyn": "scr_http_res_end_dynv",
|
|
518
|
+
"http.resHeadersSent": "scr_http_res_headers_sent",
|
|
519
|
+
"http.resDestroy": "scr_http_res_destroy",
|
|
520
|
+
"http.resStatusGet": "scr_http_res_status_get",
|
|
521
|
+
"http.resStatusSet": "scr_http_res_status_set",
|
|
522
|
+
"http.resStatusMsgGet": "scr_http_res_status_msg_get",
|
|
523
|
+
"http.resStatusMsgSet": "scr_http_res_status_msg_set",
|
|
524
|
+
"http.resHasHeader": "scr_http_res_has_header_named",
|
|
525
|
+
"http.resRemoveHeader": "scr_http_res_remove_header",
|
|
526
|
+
"http.resWriteHeadPairs": "scr_http_res_write_head_pairs",
|
|
527
|
+
"http.resWriteHeadDyn": "scr_http_res_write_head_dyn",
|
|
528
|
+
"http.serverJoinDupHeaders": "scr_http_server_join_duplicate_headers",
|
|
529
|
+
"http.serverTimeoutGet": "scr_net_server_timeout_get",
|
|
530
|
+
"http.serverTimeoutSet": "scr_net_server_timeout_set",
|
|
531
|
+
"http.serverTimeoutOptionSet": "scr_net_server_timeout_option_set",
|
|
532
|
+
"http.clientWrite": "scr_http_client_write_str",
|
|
533
|
+
"http.clientWriteBytes": "scr_http_client_write_bytes",
|
|
534
|
+
"http.clientEnd": "scr_http_client_end",
|
|
535
|
+
"http.clientEndStr": "scr_http_client_end_str",
|
|
536
|
+
"http.clientEndBytes": "scr_http_client_end_bytes",
|
|
537
|
+
"http.clientWriteDyn": "scr_http_client_write_dynv",
|
|
538
|
+
"http.clientEndDyn": "scr_http_client_end_dynv",
|
|
539
|
+
"http.clientDestroy": "scr_http_client_destroy",
|
|
540
|
+
"http.clientDestroyed": "scr_http_client_destroyed",
|
|
541
|
+
"http2.streamUndefCall": "scr_http2_stream_undef_call",
|
|
542
|
+
"http.agentNew": "scr_http_agent_new",
|
|
543
|
+
// The island surface (--dynamic): eval/import bridge catchably (the
|
|
544
|
+
// may-throw seed's pending check); importDyn answers an engine promise
|
|
545
|
+
// and never throws itself. insp.jsval throws on composite island
|
|
546
|
+
// values (engine JSON.stringify inside).
|
|
547
|
+
"island.eval": "scr_island_eval",
|
|
548
|
+
"island.import": "scr_jsval_import",
|
|
549
|
+
"island.importDyn": "scr_jsval_import_dyn",
|
|
550
|
+
"insp.jsval": "scr_insp_jsval",
|
|
551
|
+
// timers/promises (+1 promises; the await parks a fiber, so the async
|
|
552
|
+
// loop gate already runs) and diagnostics_channel (scr_dc.c): all
|
|
553
|
+
// generic shapes; the throwing members ride the pending check.
|
|
554
|
+
"tp.setTimeout": "scr_tp_set_timeout",
|
|
555
|
+
"tp.setImmediate": "scr_tp_set_immediate",
|
|
556
|
+
// stream/promises' finished form (+1 promise; may-throw pending check;
|
|
557
|
+
// the pipeline form needs the stream-array compound and emits below).
|
|
558
|
+
"sp.finished": "scr_sp_finished",
|
|
559
|
+
// stream/consumers' promise consumers (+1 promises; may-throw pending
|
|
560
|
+
// check — the 'newListener' meta emit can run user code).
|
|
561
|
+
"sc.text": "scr_sc_text",
|
|
562
|
+
"sc.json": "scr_sc_json",
|
|
563
|
+
"sc.buffer": "scr_sc_buffer",
|
|
564
|
+
"dc.channel": "scr_dc_channel",
|
|
565
|
+
"dc.subscribe": "scr_dc_subscribe",
|
|
566
|
+
"dc.unsubscribe": "scr_dc_unsubscribe",
|
|
567
|
+
"dc.hasSubscribers": "scr_dc_has_subscribers",
|
|
568
|
+
"dc.publish": "scr_dc_publish",
|
|
569
|
+
"dc.chanSubscribe": "scr_dc_chan_subscribe",
|
|
570
|
+
"dc.chanUnsubscribe": "scr_dc_chan_unsubscribe",
|
|
571
|
+
"dc.chanHasSubscribers": "scr_dc_chan_has_subscribers",
|
|
572
|
+
"dc.chanName": "scr_dc_chan_name",
|
|
573
|
+
"str.decodeUriComponent": "scr_str_decode_uri_component",
|
|
574
|
+
// TracingChannel (scr_dc.c): registry handles are plain doubles; the
|
|
575
|
+
// subscribe/trace forms ride the may-throw pending check, and
|
|
576
|
+
// tcTracePromise marks the loop live (USES_TIMERS_LIB_FNS — the
|
|
577
|
+
// reaction fiber needs the loop to drain it).
|
|
578
|
+
"dc.tracingChannel": "scr_dc_tracing_channel",
|
|
579
|
+
"dc.tracingChannelOf": "scr_dc_tracing_channel_of",
|
|
580
|
+
"dc.tcChannel": "scr_dc_tc_channel",
|
|
581
|
+
"dc.tcHasSubscribers": "scr_dc_tc_has_subscribers",
|
|
582
|
+
"dc.tcSubscribe": "scr_dc_tc_subscribe",
|
|
583
|
+
"dc.tcUnsubscribe": "scr_dc_tc_unsubscribe",
|
|
584
|
+
"dc.tcTraceSync": "scr_dc_tc_trace_sync",
|
|
585
|
+
"dc.tcTraceCallback": "scr_dc_tc_trace_callback",
|
|
586
|
+
"dc.tcTracePromise": "scr_dc_tc_trace_promise",
|
|
587
|
+
// AsyncLocalStorage (scr_async_dyn.c): store ids are doubles, values
|
|
588
|
+
// ride the checked-dynamic tree; run/exitRun dispatch user callbacks (may-throw).
|
|
589
|
+
// The dc bind-store trio shares the als id space.
|
|
590
|
+
"als.new": "scr_als_new",
|
|
591
|
+
"als.get": "scr_als_get",
|
|
592
|
+
"als.run": "scr_als_run",
|
|
593
|
+
"als.exitRun": "scr_als_exit_run",
|
|
594
|
+
"als.enterWith": "scr_als_enter_with",
|
|
595
|
+
"als.disable": "scr_als_disable",
|
|
596
|
+
"dc.chanBindStore": "scr_dc_chan_bind_store",
|
|
597
|
+
"dc.chanUnbindStore": "scr_dc_chan_unbind_store",
|
|
598
|
+
"dc.chanRunStores": "scr_dc_chan_run_stores",
|
|
599
|
+
// process warning/rejection events (scr_lib.c / scr_async_dyn.c):
|
|
600
|
+
// dyn listeners are borrowed (the runtime retains its copy);
|
|
601
|
+
// onUnhandledRejection marks the loop live (the checkpoint report
|
|
602
|
+
// dispatches the listeners).
|
|
603
|
+
"process.onWarning": "scr_process_on_warning",
|
|
604
|
+
"process.offWarning": "scr_process_off_warning",
|
|
605
|
+
"process.emitWarning": "scr_process_emit_warning",
|
|
606
|
+
"process.onUnhandledRejection": "scr_process_on_unhandled_rejection",
|
|
607
|
+
"process.offUnhandledRejection": "scr_process_off_unhandled_rejection",
|
|
608
|
+
"process.onRejectionHandled": "scr_process_on_rejection_handled",
|
|
609
|
+
"process.offRejectionHandled": "scr_process_off_rejection_handled",
|
|
610
|
+
// The await lowering's loop hop and the dyn await (both park the
|
|
611
|
+
// current fiber — USES_TIMERS_LIB_FNS marks the loop live).
|
|
612
|
+
"async.hop": "scr_await_hop",
|
|
613
|
+
"async.awaitDyn": "scr_await_dyn_value",
|
|
614
|
+
// encodeURI never throws; the WHATWG base64 globals throw the
|
|
615
|
+
// catchable DOMException InvalidCharacterError (may-throw), and the
|
|
616
|
+
// zero-argument form always throws ERR_MISSING_ARGS.
|
|
617
|
+
"str.encodeUri": "scr_encode_uri",
|
|
618
|
+
"str.atob": "scr_atob",
|
|
619
|
+
"str.btoa": "scr_btoa",
|
|
620
|
+
"str.b64Missing": "scr_b64_missing_arg",
|
|
621
|
+
"regexp.escape": "scr_regexp_escape",
|
|
622
|
+
// The dyn Object walks (throw on nullish receivers), structuredClone
|
|
623
|
+
// (option/DataClone/cycle errors), and new RegExp's eager compile
|
|
624
|
+
// (catchable SyntaxError) — all may-throw generics over the checked-dynamic tree.
|
|
625
|
+
"dyn.objKeys": "scr_dyn_obj_keys",
|
|
626
|
+
"dyn.hasOwn": "scr_dyn_has_own",
|
|
627
|
+
"dyn.assign": "scr_dyn_assign",
|
|
628
|
+
// variadic Object.assign: the source pack (push never throws; the
|
|
629
|
+
// spread flatten throws V8's spread-call TypeErrors) and the final
|
|
630
|
+
// left-to-right copy (ToObject TypeError on a nullish target).
|
|
631
|
+
"dyn.packPush": "scr_dyn_pack_push",
|
|
632
|
+
"dyn.packPushSpread": "scr_dyn_pack_push_spread",
|
|
633
|
+
"dyn.packPushSpreadIter": "scr_dyn_pack_push_spread_iter",
|
|
634
|
+
"dyn.assignAll": "scr_dyn_assign_all",
|
|
635
|
+
"dyn.objCreateNullProto": "scr_dyn_new_obj_null_proto",
|
|
636
|
+
"dyn.objValues": "scr_dyn_obj_values",
|
|
637
|
+
"dyn.objEntries": "scr_dyn_obj_entries",
|
|
638
|
+
"dyn.structuredClone": "scr_structured_clone",
|
|
639
|
+
"dyn.cloneMissing": "scr_structured_clone_missing",
|
|
640
|
+
"dyn.cloneTransferFail": "scr_structured_clone_transfer_fail",
|
|
641
|
+
"regex.new": "scr_regex_new",
|
|
642
|
+
// queueMicrotask's checked-dynamic form (borrowed dyn; a non-function
|
|
643
|
+
// throws synchronously), the minted setImmediate value, and the
|
|
644
|
+
// timers/promises immediate — all mark the loop live.
|
|
645
|
+
"timers.queueMicrotaskDyn": "scr_queue_microtask_dyn",
|
|
646
|
+
"timers.setImmediateFnValue": "scr_set_immediate_dyn_value",
|
|
647
|
+
"timers.immediatePromise": "scr_immediate_promise",
|
|
648
|
+
};
|
|
649
|
+
export const USES_TIMERS_LIB_FNS = new Set([
|
|
650
|
+
"fetch.start",
|
|
651
|
+
"fetch.abortTimeout", "fetch.streamNew", "fetch.streamFrom",
|
|
652
|
+
"readable.new", "writable.new", "duplex.new", "transform.new", "passthrough.new",
|
|
653
|
+
"readable.init", "writable.init", "duplex.init", "transform.init", "passthrough.init",
|
|
654
|
+
"readable.newDyn", "writable.newDyn", "duplex.newDyn", "transform.newDyn", "passthrough.newDyn",
|
|
655
|
+
"readable.initDyn", "writable.initDyn", "duplex.initDyn", "transform.initDyn", "passthrough.initDyn",
|
|
656
|
+
"readable.push", "readable.pushStr", "readable.pushStrEnc", "readable.pushEncoding",
|
|
657
|
+
"readable.pushNull", "readable.pushU", "readable.pushDyn",
|
|
658
|
+
"readable.unshift", "readable.unshiftStr", "readable.read", "readable.setEncoding",
|
|
659
|
+
"readable.nextChunk", "readable.nextChunkDyn", "readable.fromArr", "readable.resume",
|
|
660
|
+
"readable.pipe", "readable.unpipe",
|
|
661
|
+
"writable.write", "writable.writeStr", "writable.writeU", "writable.writeDyn",
|
|
662
|
+
"writable.end", "writable.uncork",
|
|
663
|
+
"stream.destroy", "stream.destroyErr",
|
|
664
|
+
"stream.setRead", "stream.setWrite", "stream.setFinal", "stream.setDestroy",
|
|
665
|
+
"stream.setTransform", "stream.setFlush",
|
|
666
|
+
"process.activeResources",
|
|
667
|
+
"stream.finished", "stream.finishedDyn", "stream.pipeline", "stream.pipelineDyn",
|
|
668
|
+
"sp.finished", "sp.pipeline",
|
|
669
|
+
"sc.text", "sc.json", "sc.buffer",
|
|
670
|
+
"net.listen", "net.listenCb", "net.listenOpts", "net.listenOptsCb",
|
|
671
|
+
"net.listenOptsReusePort", "net.listenOptsReusePortCb",
|
|
672
|
+
"net.connect", "net.connectCb", "net.connectLookup", "net.connectAttempt",
|
|
673
|
+
"fs.existsChk",
|
|
674
|
+
"http.createServer", "http.createServerEmpty",
|
|
675
|
+
"http.request", "http.requestCb", "http.requestUrl", "http.requestUrlCb",
|
|
676
|
+
"https.request", "https.requestCb", "https.requestUrl", "https.requestUrlCb",
|
|
677
|
+
"http.requestConn", "http.requestConnCb",
|
|
678
|
+
"http.agentNew", "http.requestAgent", "http.requestAgentCb",
|
|
679
|
+
// The dyn-async slice (exprs.ts's markings): fiber parks, the
|
|
680
|
+
// microtask/immediate mints, the tracing-promise reaction fiber, and
|
|
681
|
+
// the checkpoint unhandled-rejection report.
|
|
682
|
+
"async.hop", "async.awaitDyn",
|
|
683
|
+
"dc.tcTracePromise",
|
|
684
|
+
"process.onUnhandledRejection", "process.onRejectionHandled",
|
|
685
|
+
"timers.queueMicrotaskDyn", "timers.setImmediateFnValue", "timers.immediatePromise",
|
|
686
|
+
]);
|
|
687
|
+
//# sourceMappingURL=lib-shared.js.map
|