@scriptc/compiler 0.0.35 → 0.0.36
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 +7 -6
- 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 +7913 -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 +1 -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} +377 -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} +238 -298
- package/dist/backend/c/walkers.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/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 +152 -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 +514 -9981
- 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 +623 -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 +151 -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 +622 -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 +396 -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 +164 -218
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/native-codegen.d.ts +38 -0
- package/dist/backend/native-codegen.js +261 -0
- package/dist/backend/native-codegen.js.map +1 -0
- package/dist/backend/native-codegen.test.js +188 -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 +219 -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} +214 -6
- 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.d.ts +137 -0
- package/dist/backend/runtime-pack.js +400 -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 +438 -0
- package/dist/backend/runtime-pack.test.js.map +1 -0
- package/dist/backend/targets.d.ts +30 -0
- package/dist/backend/targets.js +46 -0
- package/dist/backend/targets.js.map +1 -0
- package/dist/backend/targets.test.d.ts +1 -0
- package/dist/backend/targets.test.js +19 -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 +25 -32
- 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/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-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 +1124 -1232
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +56 -188
- package/dist/frontend/lowering/lower-calls.js +1397 -1492
- 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 +1384 -1700
- 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 +56 -264
- package/dist/frontend/lowering/lower-exprs.js +1624 -1696
- 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 +236 -238
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.d.ts +34 -45
- package/dist/frontend/lowering/lower-island.js +437 -508
- 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 +899 -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 +1175 -1228
- 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 +60 -20
- package/dist/frontend/lowering/lowerer.js +191 -117
- 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 +14 -33
- package/dist/frontend/lowering/surfaces.js +63 -63
- 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 +112 -30
- package/dist/index.js +512 -126
- 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} +54 -26
- package/dist/ir/{nodes.js → ir.js} +145 -141
- 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 +1 -1
- package/dist/ir/serialize.js +2 -1
- package/dist/ir/serialize.js.map +1 -1
- package/dist/ir/validate.d.ts +1 -1
- package/dist/ir/validate.js +10 -5
- 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 +5 -1
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/int-infer.d.ts +1 -36
- package/dist/library/int-infer.js +17 -17
- package/dist/library/int-infer.js.map +1 -1
- 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} +2 -2
- 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 +3 -3
- package/dist/startup-cache.js +2 -2
- package/dist/startup-cache.js.map +1 -1
- package/package.json +6 -2
- package/surface-manifest.json +1 -1
- 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 @@
|
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/ir/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAyC,MAAM,EAAe,MAAM,SAAS,CAAC;AAEhG,MAAM,UAAU,MAAM,CAAC,OAAe,EAAE,IAAY,EAAE,GAAW;IAC/D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAAa,EAAE,GAAW;IAC/C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAAa,EAAE,GAAW;IAC/C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAc,EAAE,GAAW;IACjD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AACrD,CAAC;AAED;;uEAEuE;AACvE,MAAM,UAAU,UAAU,CACxB,GAAW,EACX,KAAa,EACb,IAAiC;IAEjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACtC,OAAO;QACL,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE;QACpE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;QAC1E,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;YACnF,GAAG;SACJ;QACD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;QACjB,GAAG;KACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IrExpr, IrLocal, IrStmt } from "./
|
|
1
|
+
import type { IrExpr, IrLocal, IrStmt } from "./ir.js";
|
|
2
2
|
/** A canonical byte loop whose induction variable is mathematically an
|
|
3
3
|
* unsigned integer for every body entry. Backends may keep this binding in
|
|
4
4
|
* integer storage while the loop runs, converting to f64 at ordinary JS
|
|
@@ -382,6 +382,26 @@ export type IrType = {
|
|
|
382
382
|
} | {
|
|
383
383
|
kind: "void";
|
|
384
384
|
};
|
|
385
|
+
interface IrKindSet<K extends IrType["kind"]> extends ReadonlySet<IrType["kind"]> {
|
|
386
|
+
has(kind: IrType["kind"]): kind is K;
|
|
387
|
+
}
|
|
388
|
+
/** The opaque runtime handle kinds. procStream is the one scalar handle;
|
|
389
|
+
* every other handle has pointer representation. */
|
|
390
|
+
declare const HANDLE_KIND_LIST: readonly ["stats", "fileHandle", "spawnRes", "child", "netServer", "netSocket", "http2Session", "http2Stream", "dgramSocket", "testCtx", "httpReq", "httpRes", "httpClientReq", "secureCtx", "fsWatcher", "childStream", "procStream"];
|
|
391
|
+
export type HandleKind = typeof HANDLE_KIND_LIST[number];
|
|
392
|
+
export declare const HANDLE_KINDS: IrKindSet<"fileHandle" | "stats" | "spawnRes" | "child" | "netServer" | "netSocket" | "http2Session" | "http2Stream" | "dgramSocket" | "testCtx" | "httpReq" | "httpRes" | "httpClientReq" | "childStream" | "procStream" | "fsWatcher" | "secureCtx">;
|
|
393
|
+
/** The IR kinds represented as pointers in both native backends. */
|
|
394
|
+
declare const POINTER_KIND_LIST: readonly ["string", "array", "map", "set", "regex", "bytes", "url", "searchParams", "symbol", "stats", "fileHandle", "spawnRes", "child", "netServer", "netSocket", "http2Session", "http2Stream", "dgramSocket", "testCtx", "httpReq", "httpRes", "httpClientReq", "secureCtx", "fsWatcher", "childStream", "func", "object", "classval", "record", "union", "dyn", "jsval", "caught", "promise", "generator"];
|
|
395
|
+
export type PointerKind = typeof POINTER_KIND_LIST[number];
|
|
396
|
+
export declare const POINTER_KINDS: IrKindSet<"string" | "symbol" | "object" | "map" | "bytes" | "regex" | "fileHandle" | "searchParams" | "array" | "set" | "url" | "stats" | "spawnRes" | "child" | "netServer" | "netSocket" | "http2Session" | "http2Stream" | "dgramSocket" | "testCtx" | "httpReq" | "httpRes" | "httpClientReq" | "childStream" | "fsWatcher" | "secureCtx" | "func" | "jsval" | "classval" | "record" | "union" | "dyn" | "caught" | "promise" | "generator">;
|
|
397
|
+
/** Runtime RC symbol stem for each IR type kind. An empty stem means the
|
|
398
|
+
* kind is scalar/unit or uses an emitted per-shape helper (object/record).
|
|
399
|
+
* Keeping this exhaustive makes a new runtime handle kind a compile error
|
|
400
|
+
* until its one retain/release family is named here. */
|
|
401
|
+
export declare const RUNTIME_RC_STEMS: Record<IrType["kind"], string>;
|
|
402
|
+
/** The runtime-provided RC family for a type, or null when the backend must
|
|
403
|
+
* use an emitted class/record helper (or the type is not refcounted). */
|
|
404
|
+
export declare function runtimeRcStem(t: IrType): string | null;
|
|
385
405
|
/** The ref kinds whose values are JS OBJECTS for truthiness: always true
|
|
386
406
|
* ([] and {} included) — toBool accepts them (the operand still evaluates;
|
|
387
407
|
* the test is constant), and per-union truthiness helpers answer their
|
|
@@ -1858,9 +1878,16 @@ export type IrLibFn =
|
|
|
1858
1878
|
* (portless's listenOnProxyInterface): args [server, port, host,
|
|
1859
1879
|
* ipv6Only]. host is an IP literal string ("" = the host-less
|
|
1860
1880
|
* dual-stack any default); ipv6Only sets IPV6_V6ONLY before the bind.
|
|
1861
|
-
*
|
|
1862
|
-
*
|
|
1863
|
-
|
|
1881
|
+
* These are the old-shaped calls, retained for omitted reusePort so
|
|
1882
|
+
* serialized IR remains compatible. Failures are the async 'error',
|
|
1883
|
+
* message in Node's listen shape with the requested host. Never throws. */
|
|
1884
|
+
| "net.listenOpts" | "net.listenOptsCb"
|
|
1885
|
+
/** Additive ABI for listen({ ..., reusePort }) — args
|
|
1886
|
+
* [server, port, host, ipv6Only, reusePort], with the callback following
|
|
1887
|
+
* those values in the callback form. The final BOOL is the requested
|
|
1888
|
+
* kernel connection-distribution option; old spellings remain
|
|
1889
|
+
* four/five-argument calls so serialized IR stays compatible. */
|
|
1890
|
+
| "net.listenOptsReusePort" | "net.listenOptsReusePortCb" | "net.serverPort"
|
|
1864
1891
|
/** server.address() as the full AddressInfo record (the dgram.address
|
|
1865
1892
|
* materialization pattern: the emitter builds the record from the three
|
|
1866
1893
|
* runtime reads; the frontend pinned the shape). Never throws — before
|
|
@@ -2348,7 +2375,7 @@ export type IrLibFn =
|
|
|
2348
2375
|
* promise, rejecting on failure like the other fsp members). The sync
|
|
2349
2376
|
* pair THROWS catchably on failure exactly like the utf8 forms. */
|
|
2350
2377
|
| "fs.readFileSyncBytes" | "fs.writeFileSyncBytes" | "fsp.readFileBytes"
|
|
2351
|
-
/** node:zlib (scr_zlib.c —
|
|
2378
|
+
/** node:zlib (scr_zlib.c — native-toolchain.ts compiles/links it ONLY when these
|
|
2352
2379
|
* appear on the IR, the regex/libcurl gating precedent): deflateSync/
|
|
2353
2380
|
* inflateSync over u8 bytes with Node's default options. deflate never
|
|
2354
2381
|
* throws (OOM aborts); inflate of corrupt input THROWS Node's error
|
|
@@ -2933,7 +2960,7 @@ export type IrLibFn =
|
|
|
2933
2960
|
| "tp.setTimeout" | "tp.setImmediate"
|
|
2934
2961
|
/** node:diagnostics_channel (scr_dc.c, linked when any dc.* appears —
|
|
2935
2962
|
* the zlib gating precedent): a process-global name→channel registry;
|
|
2936
|
-
* channel values are f64 handles (
|
|
2963
|
+
* channel values are f64 handles (type-mapper.ts maps Channel to F64, the
|
|
2937
2964
|
* readline.Interface pattern). Subscribers are dyn function values —
|
|
2938
2965
|
* identity-compared by unsubscribe, called (message, name) by publish
|
|
2939
2966
|
* over a SNAPSHOT of the list (a subscriber unsubscribing itself
|
|
@@ -2944,7 +2971,7 @@ export type IrLibFn =
|
|
|
2944
2971
|
* ERR_INVALID_ARG_TYPE TypeError for non-function subscribers. */
|
|
2945
2972
|
| "dc.channel" | "dc.subscribe" | "dc.unsubscribe" | "dc.hasSubscribers" | "dc.publish" | "dc.chanSubscribe" | "dc.chanUnsubscribe" | "dc.chanHasSubscribers" | "dc.chanName"
|
|
2946
2973
|
/** TracingChannel (dc.tracingChannel): a registry entry of the five
|
|
2947
|
-
* event channels, an f64 handle like Channel (
|
|
2974
|
+
* event channels, an f64 handle like Channel (type-mapper.ts). tcSubscribe/
|
|
2948
2975
|
* tcUnsubscribe walk a dyn handlers object's five event keys (truthy
|
|
2949
2976
|
* non-function slots throw the per-channel ERR_INVALID_ARG_TYPE);
|
|
2950
2977
|
* tcTraceSync/tcTraceCallback/tcTracePromise run Node's publish choreography in C over
|
|
@@ -4898,7 +4925,7 @@ export declare function canExitIslandToType(t: IrType, getRecord: (shapeId: stri
|
|
|
4898
4925
|
/** True when the module contains any regex construct — a regexLit /
|
|
4899
4926
|
* regexIntrinsic node or a regex-typed slot anywhere. This is the link
|
|
4900
4927
|
* switch that pulls scr_regex.c + the vendored libregexp into the binary
|
|
4901
|
-
* (
|
|
4928
|
+
* (native-toolchain.ts); regex-free programs keep the historical command line. A generic
|
|
4902
4929
|
* JSON walk: `kind` discriminants live only on IR objects, so user string
|
|
4903
4930
|
* VALUES can never false-positive. */
|
|
4904
4931
|
export declare function moduleUsesRegex(mod: IrModule): boolean;
|
|
@@ -4916,7 +4943,7 @@ export declare function moduleUsesLegacyTextDecoder(mod: IrModule): boolean;
|
|
|
4916
4943
|
export declare function moduleUsesFileHandle(mod: IrModule): boolean;
|
|
4917
4944
|
/** True when user code lowers static fetch or the embedded npm graph
|
|
4918
4945
|
* reaches the engine's global fetch — the link switch that pulls scr_fetch.c +
|
|
4919
|
-
* its socket/tls/zlib dependencies into the binary (
|
|
4946
|
+
* its socket/tls/zlib dependencies into the binary (native-toolchain.ts) and has the
|
|
4920
4947
|
* emitted main call scr_fetch_install. The npm graph records the embedded
|
|
4921
4948
|
* source fact with a parser + binder, so comments, strings, property names,
|
|
4922
4949
|
* and local `fetch` bindings do not change the link or target capability.
|
|
@@ -4924,12 +4951,12 @@ export declare function moduleUsesFileHandle(mod: IrModule): boolean;
|
|
|
4924
4951
|
export declare function moduleUsesFetch(mod: IrModule): boolean;
|
|
4925
4952
|
/** True when the module uses the process-events surface — the link switch
|
|
4926
4953
|
* that pulls scr_events.c into the binary and has the emitted main call
|
|
4927
|
-
* scr_events_install (
|
|
4954
|
+
* scr_events_install (native-toolchain.ts + emitter; the scr_regex/scr_fetch/scr_zlib
|
|
4928
4955
|
* gating precedent). Event-free programs pay zero bytes and keep their
|
|
4929
4956
|
* exact link line. Same generic-walk shape as moduleUsesRegex. */
|
|
4930
4957
|
export declare function moduleUsesProcessEvents(mod: IrModule): boolean;
|
|
4931
4958
|
/** True when the module uses the node:events EventEmitter surface — the
|
|
4932
|
-
* link switch that pulls scr_events_emitter.c into the binary (
|
|
4959
|
+
* link switch that pulls scr_events_emitter.c into the binary (native-toolchain.ts; the
|
|
4933
4960
|
* scr_events.c gating precedent, but pure data structure: no install, no
|
|
4934
4961
|
* loop hooks). Two signals: the `%EventEmitter` class def rides the
|
|
4935
4962
|
* module (any emitter-typed value or `extends EventEmitter` subclass
|
|
@@ -4951,12 +4978,12 @@ export declare function moduleUsesStream(mod: IrModule): boolean;
|
|
|
4951
4978
|
* the first; the emitted main installs it before any island entry). */
|
|
4952
4979
|
export declare function moduleEmbedsBuiltin(mod: IrModule, builtin: string): boolean;
|
|
4953
4980
|
/** Embedded module texts at least this long are DEFLATE-compressed into
|
|
4954
|
-
* the emitted C (
|
|
4981
|
+
* the emitted C (island.ts; each stays plain when deflate does not
|
|
4955
4982
|
* shrink it) and inflated lazily by the island's module loader at first
|
|
4956
4983
|
* load. Below it the zlib round trip cannot pay for itself. */
|
|
4957
4984
|
export declare const NPM_COMPRESS_MIN = 1024;
|
|
4958
4985
|
/** True when the emitted npm tables will carry compressed module text —
|
|
4959
|
-
* the SAME candidate test
|
|
4986
|
+
* the SAME candidate test island.ts compresses by, so index.ts's
|
|
4960
4987
|
* zlib link switch and emitter.ts's inflater installation stay in
|
|
4961
4988
|
* lockstep with the emission (a candidate whose deflate happens not to
|
|
4962
4989
|
* shrink stays plain; the installed inflater is then just unused). */
|
|
@@ -4964,17 +4991,17 @@ export declare function moduleEmbedsCompressedNpm(mod: IrModule): boolean;
|
|
|
4964
4991
|
/** True when the module contains any zlib libCall (the static lowering)
|
|
4965
4992
|
* OR the embedded npm graph imports node:zlib (the island shim) — the
|
|
4966
4993
|
* link switch that pulls scr_zlib.c + the system libz into the binary
|
|
4967
|
-
* (
|
|
4994
|
+
* (native-toolchain.ts); zlib-free programs keep their exact link line. Same
|
|
4968
4995
|
* generic-walk shape as moduleUsesRegex: `kind`/`fn` discriminants live
|
|
4969
4996
|
* only on IR objects. */
|
|
4970
4997
|
export declare function moduleUsesZlib(mod: IrModule): boolean;
|
|
4971
4998
|
/** True when the module contains any dc.* libCall — the link switch that
|
|
4972
4999
|
* pulls scr_dc.c (the diagnostics_channel registry and pub/sub) into the
|
|
4973
|
-
* binary (
|
|
5000
|
+
* binary (native-toolchain.ts). Channel-free binaries keep their exact size class.
|
|
4974
5001
|
* Same walk shape as moduleUsesZlib. */
|
|
4975
5002
|
export declare function moduleUsesDc(mod: IrModule): boolean;
|
|
4976
5003
|
/** True when the module contains any assert libCall — the link switch
|
|
4977
|
-
* that pulls scr_assert.c into the binary (
|
|
5004
|
+
* that pulls scr_assert.c into the binary (native-toolchain.ts). scr_regex.c calls the
|
|
4978
5005
|
* assert throw/inspect helpers (assert.match lives there), so the regex
|
|
4979
5006
|
* switch also pulls scr_assert.c; assert-free, regex-free binaries keep
|
|
4980
5007
|
* the historical command line and size. Same walk shape as
|
|
@@ -4983,31 +5010,31 @@ export declare function moduleUsesAssert(mod: IrModule): boolean;
|
|
|
4983
5010
|
/** True when the module contains any dynInvoke node or dyn.defineProps
|
|
4984
5011
|
* libCall — the link switch that pulls scr_dyn_invoke.c (the prototype-
|
|
4985
5012
|
* method dispatch on dyn receivers, plus scr_dyn_display and
|
|
4986
|
-
* scr_dyn_define_props) into the binary (
|
|
5013
|
+
* scr_dyn_define_props) into the binary (native-toolchain.ts; the assert gating
|
|
4987
5014
|
* precedent — dispatch-free binaries keep their exact size class). Same
|
|
4988
5015
|
* walk shape as moduleUsesZlib. */
|
|
4989
5016
|
export declare function moduleUsesDynInvoke(mod: IrModule): boolean;
|
|
4990
5017
|
/** True when the module contains any insp libCall — the link switch that
|
|
4991
|
-
* pulls scr_inspect.c into the binary (
|
|
5018
|
+
* pulls scr_inspect.c into the binary (native-toolchain.ts; the assert gating
|
|
4992
5019
|
* precedent — inspect-free binaries keep the historical command line and
|
|
4993
5020
|
* size class). Same walk shape as moduleUsesZlib. */
|
|
4994
5021
|
/** True when the module needs scr_async_dyn.c — the checked-dynamic
|
|
4995
5022
|
* async surfaces (dyn-promise then/catch/finally reactions, await of a
|
|
4996
5023
|
* dyn value, `new Promise(setImmediate)`, AsyncLocalStorage, the
|
|
4997
5024
|
* unhandledRejection/warning process events). Also pulled by the
|
|
4998
|
-
* dynInvoke and dc gates (their TUs call into this one) —
|
|
5025
|
+
* dynInvoke and dc gates (their TUs call into this one) — native-toolchain.ts. Same
|
|
4999
5026
|
* walk shape as moduleUsesZlib. */
|
|
5000
5027
|
export declare function moduleUsesDynAsync(mod: IrModule): boolean;
|
|
5001
5028
|
export declare function moduleUsesInspect(mod: IrModule): boolean;
|
|
5002
5029
|
/** True when the module contains any net libCall — the link switch that
|
|
5003
5030
|
* pulls scr_net.c into the binary and has the emitted main call
|
|
5004
|
-
* scr_net_install (
|
|
5031
|
+
* scr_net_install (native-toolchain.ts + emitter; the scr_events gating precedent).
|
|
5005
5032
|
* Net-free programs pay zero bytes and keep their exact link line. Same
|
|
5006
5033
|
* generic-walk shape as moduleUsesZlib. */
|
|
5007
5034
|
export declare function moduleUsesNet(mod: IrModule): boolean;
|
|
5008
5035
|
/** True when the module contains any sym.* libCall or a symbol-kind type
|
|
5009
5036
|
* anywhere in the IR — the link switch that pulls scr_symbol.c into the
|
|
5010
|
-
* binary (
|
|
5037
|
+
* binary (native-toolchain.ts; the scr_net gating precedent — no install call, the
|
|
5011
5038
|
* Symbol.for registry initializes lazily). The TYPE check matters like
|
|
5012
5039
|
* net's: a symbol-typed local whose initializer compiled to a runtime
|
|
5013
5040
|
* fence still emits release calls that need the unit linked. Symbol-free
|
|
@@ -5036,25 +5063,25 @@ export declare function moduleUsesQs(mod: IrModule): boolean;
|
|
|
5036
5063
|
export declare function moduleUsesParseArgs(mod: IrModule): boolean;
|
|
5037
5064
|
/** True when the module contains any fs.watch/watcher.* libCall — the
|
|
5038
5065
|
* link switch that pulls scr_watch.c into the binary and has the emitted
|
|
5039
|
-
* main call scr_watch_install (
|
|
5066
|
+
* main call scr_watch_install (native-toolchain.ts + emitter; the scr_net gating
|
|
5040
5067
|
* precedent). Watch-free programs pay zero bytes and keep their exact
|
|
5041
5068
|
* link line. Same generic-walk shape as moduleUsesZlib. */
|
|
5042
5069
|
export declare function moduleUsesFsWatch(mod: IrModule): boolean;
|
|
5043
5070
|
/** True when the module contains any test.* libCall or a testCtx handle
|
|
5044
5071
|
* type — the link switch that pulls scr_test.c into the binary and has
|
|
5045
5072
|
* the emitted main return scr_test_exit_code() after the loop drains
|
|
5046
|
-
* (
|
|
5073
|
+
* (native-toolchain.ts + emitter; the moduleUsesDgram shape). Test-free programs pay
|
|
5047
5074
|
* zero bytes and keep their exact link line. */
|
|
5048
5075
|
export declare function moduleUsesNodeTest(mod: IrModule): boolean;
|
|
5049
5076
|
/** True when the module contains any dgram.* or dns.* libCall — the
|
|
5050
5077
|
* link switch that pulls scr_dgram.c into the binary and has the emitted
|
|
5051
|
-
* main call scr_dgram_install (
|
|
5078
|
+
* main call scr_dgram_install (native-toolchain.ts + emitter; the scr_net gating
|
|
5052
5079
|
* precedent — dns.lookup lives in the same unit, so either prefix
|
|
5053
5080
|
* answers). Dgram-free programs pay zero bytes and keep their exact link
|
|
5054
5081
|
* line. Same generic-walk shape as moduleUsesZlib. */
|
|
5055
5082
|
export declare function moduleUsesDgram(mod: IrModule): boolean;
|
|
5056
5083
|
/** True when the module contains any http.* libCall — the link switch
|
|
5057
|
-
* that pulls scr_http.c into the binary (
|
|
5084
|
+
* that pulls scr_http.c into the binary (native-toolchain.ts; moduleUsesNet already
|
|
5058
5085
|
* answers true for these, so scr_net.c comes along). */
|
|
5059
5086
|
export declare function moduleUsesHttpServer(mod: IrModule): boolean;
|
|
5060
5087
|
/** True when the module uses the REAL h2 surface (scr_http2.c): any core
|
|
@@ -5063,7 +5090,7 @@ export declare function moduleUsesHttpServer(mod: IrModule): boolean;
|
|
|
5063
5090
|
export declare function moduleUsesHttp2(mod: IrModule): boolean;
|
|
5064
5091
|
/** True when the module contains any tls.* or https.* libCall — the link
|
|
5065
5092
|
* switch that pulls scr_tls.c and the vendored mbedTLS archive into the
|
|
5066
|
-
* binary (
|
|
5093
|
+
* binary (native-toolchain.ts; moduleUsesNet and moduleUsesHttpServer already answer
|
|
5067
5094
|
* true for these, so scr_net.c and scr_http.c come along). TLS-free
|
|
5068
5095
|
* programs keep their exact link line and never build mbedTLS. */
|
|
5069
5096
|
export declare function moduleUsesTls(mod: IrModule): boolean;
|
|
@@ -5071,7 +5098,7 @@ export declare function moduleUsesTls(mod: IrModule): boolean;
|
|
|
5071
5098
|
* for scr_tls_ca.c, the CA-store introspection unit (getCACertificates /
|
|
5072
5099
|
* rootCertificates / setDefaultCACertificates). Deliberately SEPARATE
|
|
5073
5100
|
* from moduleUsesTls: the unit is plain PEM-block bookkeeping, so a
|
|
5074
|
-
* program that only inspects the CA store never pulls mbedTLS.
|
|
5101
|
+
* program that only inspects the CA store never pulls mbedTLS. native-toolchain.ts
|
|
5075
5102
|
* also compiles the unit whenever TLS itself links — scr_tls.c consults
|
|
5076
5103
|
* the unit's default-set override for its trust anchors. */
|
|
5077
5104
|
export declare function moduleUsesTlsCa(mod: IrModule): boolean;
|
|
@@ -5110,3 +5137,4 @@ export declare function moduleLibNondeterministicSurface(mod: IrModule): string
|
|
|
5110
5137
|
* seed on `dynCheck` and `awaitExpr` nodes, which throw on validation
|
|
5111
5138
|
* failure / promise rejection). */
|
|
5112
5139
|
export declare const MAY_THROW_LIB_FNS: ReadonlySet<IrLibFn>;
|
|
5140
|
+
export {};
|