@scriptc/compiler 0.0.34 → 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/split.d.ts +43 -0
- package/dist/backend/llvm/split.js +227 -0
- package/dist/backend/llvm/split.js.map +1 -0
- package/dist/backend/llvm/split.test.d.ts +1 -0
- package/dist/backend/llvm/split.test.js +102 -0
- package/dist/backend/llvm/split.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.d.ts +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} +139 -47
- package/dist/backend/{cc.js → native-toolchain.js} +1008 -910
- 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} +1297 -127
- package/dist/backend/native-toolchain.test.js.map +1 -0
- package/dist/backend/object-localize.js +1 -1
- package/dist/backend/object-localize.test.js +20 -0
- package/dist/backend/object-localize.test.js.map +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/executable-cache.d.ts +86 -0
- package/dist/executable/executable-cache.js +398 -0
- package/dist/executable/executable-cache.js.map +1 -0
- package/dist/executable/executable-cache.test.d.ts +1 -0
- package/dist/executable/executable-cache.test.js +300 -0
- package/dist/executable/executable-cache.test.js.map +1 -0
- package/dist/ffi/{profile.d.ts → ffi-manifest.d.ts} +7 -2
- package/dist/ffi/{profile.js → ffi-manifest.js} +2 -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 +1126 -1234
- 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 +1409 -1494
- 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 +1394 -1715
- 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 +1644 -1704
- 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 +440 -511
- 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 +86 -86
- 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 +1176 -1229
- 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 +66 -20
- package/dist/frontend/lowering/lowerer.js +421 -198
- 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 +64 -64
- 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 +51 -17
- 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.d.ts +40 -2
- package/dist/frontend/ts7/checker.js +182 -54
- 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} +31 -52
- 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 +115 -30
- package/dist/index.js +650 -146
- 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} +60 -26
- package/dist/ir/{nodes.js → ir.js} +173 -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 +16 -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/compiler-self-identity.d.ts +23 -0
- package/dist/library/compiler-self-identity.js +84 -0
- 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} +37 -111
- 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 +6 -0
- package/dist/startup-cache.js +6 -0
- package/dist/startup-cache.js.map +1 -0
- package/package.json +7 -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/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/profile.js.map +0 -1
- /package/dist/backend/{cc-cache.test.d.ts → c/types.test.d.ts} +0 -0
- /package/dist/{library/early-cache.test.d.ts → backend/llvm/shapes.test.d.ts} +0 -0
- /package/dist/frontend/ts7/{program.d.ts → program-adapter.d.ts} +0 -0
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import * as ts from "../ts7/adapter.js";
|
|
2
2
|
import type { ScrDiagnostic } from "../../diagnostics/diagnostic.js";
|
|
3
3
|
import { UNSUPPORTED } from "../../diagnostics/diagnostic.js";
|
|
4
|
-
import type { IrClassDef, IrExpr, IrFfiImport, IrFunction, IrGlobal, IrLocal, IrModule, IrParam, IrRecordShape, IrStmt, IrType, IrUnionDef, SrcLoc } from "../../ir/
|
|
4
|
+
import type { IrClassDef, IrExpr, IrFfiImport, IrFunction, IrGlobal, IrLocal, IrModule, IrParam, IrRecordShape, IrStmt, IrType, IrUnionDef, SrcLoc } from "../../ir/ir.js";
|
|
5
5
|
import { type DynamicImportResolution, type NpmBuiltinUse, type NpmLazyTrap } from "../npm.js";
|
|
6
6
|
import { type StartupCrash } from "../program.js";
|
|
7
|
-
import { ShapeRegistry, type TypeMapperCtx, UnionRegistry } from "../
|
|
7
|
+
import { ShapeRegistry, type TypeMapperCtx, UnionRegistry } from "../type-mapper.js";
|
|
8
8
|
import { CompoundOp, IslandFnEntry, BuiltinModuleFn } from "./surfaces.js";
|
|
9
9
|
import { FileParts } from "./lower-modules.js";
|
|
10
10
|
import { ClassInfo, ClassIteratorInfo, GenericClassInfo, findStaticOn } from "./lower-classes.js";
|
|
11
11
|
import { MixinFnShape } from "./lower-mixins.js";
|
|
12
12
|
import { ParamShape, FnSig, GenericFnInfo, GenericInstance } from "./lower-calls.js";
|
|
13
|
-
import { type EmitSpecCtx, type EmitSpecRequest } from "./lower-emitter.js";
|
|
13
|
+
import { type EmitSpecCtx, type EmitSpecRequest } from "./lower-event-emitter.js";
|
|
14
14
|
import { FieldTarget } from "./lower-exprs.js";
|
|
15
15
|
import type { ExpandoMember } from "./lower-expando.js";
|
|
16
16
|
/** Entry function name. '%' cannot appear in a TS identifier, so a user
|
|
@@ -59,10 +59,6 @@ export declare class PoisonError extends Error {
|
|
|
59
59
|
* NAMES user code can spell now that the real lib declares them; treating
|
|
60
60
|
* an inherited function as a table entry would mis-lower or ICE. */
|
|
61
61
|
export declare function own<T>(table: Record<string, T | undefined>, key: string): T | undefined;
|
|
62
|
-
/** Sentinel binding key for `this` (which has no ts.Symbol): a stable
|
|
63
|
-
* object identity used in the same scope/capture maps as real symbols, so
|
|
64
|
-
* arrows capturing `this` ride the ordinary capture machinery. */
|
|
65
|
-
export declare const THIS_BINDING: ts.Symbol;
|
|
66
62
|
/** Per-function lowering context. A stack of these models nested functions:
|
|
67
63
|
* identifier resolution walks outward, and a hit in an enclosing context
|
|
68
64
|
* turns into a capture (boxing the binding at its origin and threading it
|
|
@@ -135,12 +131,6 @@ export interface LowerStats {
|
|
|
135
131
|
/** Functions whose signature couldn't be analyzed (bodies not counted). */
|
|
136
132
|
functionsSkipped: number;
|
|
137
133
|
}
|
|
138
|
-
/** IrStmt discriminants — the island walk below must not descend into
|
|
139
|
-
* NESTED statements (each is counted individually by its own lowerStmts
|
|
140
|
-
* visit; descending would attribute a nested island statement to every
|
|
141
|
-
* enclosing construct too). The top-level statement object itself is
|
|
142
|
-
* always visited. */
|
|
143
|
-
export declare const IR_STMT_KINDS: Set<string>;
|
|
144
134
|
/** True when a lowered statement's OWN expressions contain island
|
|
145
135
|
* constructs — a generic JSON walk (like moduleUsesRegex): `kind`
|
|
146
136
|
* discriminants live only on IR objects, so user string values can never
|
|
@@ -230,6 +220,39 @@ export interface LowerOptions {
|
|
|
230
220
|
* to their owning external specifier. */
|
|
231
221
|
externalTypeSpecifiersByFile?: ReadonlyMap<string, readonly string[]>;
|
|
232
222
|
}
|
|
223
|
+
interface RuntimeFenceFallback {
|
|
224
|
+
code: `SC${number}`;
|
|
225
|
+
message: string;
|
|
226
|
+
}
|
|
227
|
+
interface RuntimeFenceBase {
|
|
228
|
+
/** Used only by catches that can legitimately have no fresh diagnostic. */
|
|
229
|
+
fallback?: RuntimeFenceFallback;
|
|
230
|
+
/** Legacy function-body fences throw the diagnostic text without a site suffix. */
|
|
231
|
+
bareMessage?: boolean;
|
|
232
|
+
/** The closure-probe fallback historically applies inside diagnostic captures. */
|
|
233
|
+
allowDiagSink?: boolean;
|
|
234
|
+
}
|
|
235
|
+
interface RuntimeFenceStatementTarget extends RuntimeFenceBase {
|
|
236
|
+
kind: "statement";
|
|
237
|
+
}
|
|
238
|
+
interface RuntimeFenceFunctionTarget extends RuntimeFenceBase {
|
|
239
|
+
kind: "function";
|
|
240
|
+
name: string | (() => string);
|
|
241
|
+
params?: IrParam[];
|
|
242
|
+
returnType: IrType;
|
|
243
|
+
paramsMutable?: boolean;
|
|
244
|
+
async?: true;
|
|
245
|
+
generator?: {
|
|
246
|
+
yieldT: IrType;
|
|
247
|
+
nextT: IrType;
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
interface RuntimeFenceClosureTarget extends Omit<RuntimeFenceFunctionTarget, "kind"> {
|
|
251
|
+
kind: "closure";
|
|
252
|
+
type: IrType & {
|
|
253
|
+
kind: "func";
|
|
254
|
+
};
|
|
255
|
+
}
|
|
233
256
|
/** The Lowerer's pass configuration (see lowerToIr). */
|
|
234
257
|
export interface LowererMode {
|
|
235
258
|
/** Names of bodies a prior reachability pass reached; null lowers everything. */
|
|
@@ -296,7 +319,7 @@ export declare function importCallHandleType(expr: ts.Expression | undefined): I
|
|
|
296
319
|
* Ambient (.d.ts) declarations never reach this: they have no compiled
|
|
297
320
|
* implementation, so their calls lower through the island/builtin paths
|
|
298
321
|
* whose validated exits keep the checker-trust trap. */
|
|
299
|
-
export declare function uncheckedOverloadHandleCall(
|
|
322
|
+
export declare function uncheckedOverloadHandleCall(lowerer: Lowerer, expr: ts.Expression | undefined): boolean;
|
|
300
323
|
/** The JavaScript declaration fallback for unmappable binding types (see
|
|
301
324
|
* irTypeOf): `any` and every other inference residue is the checked-
|
|
302
325
|
* dynamic 'unknown' kind, and array types keep their array-ness with the
|
|
@@ -314,7 +337,7 @@ export declare function uncheckedOverloadHandleCall(L: Lowerer, expr: ts.Express
|
|
|
314
337
|
* checked-dynamic fallbacks apply, the pre-never-mapping behavior. Bare
|
|
315
338
|
* `never` at the ROOT stays out (`for (const v of [])`'s loop var — the
|
|
316
339
|
* dead read the f64 mapping is FOR). */
|
|
317
|
-
export declare function neverTaintedJsType(
|
|
340
|
+
export declare function neverTaintedJsType(lowerer: Lowerer, node: ts.Node, t: ts.Type): boolean;
|
|
318
341
|
/** The dyn undefined value — what an uninitialized checked-dynamic
|
|
319
342
|
* binding holds (JS: declared bindings read `undefined` before any
|
|
320
343
|
* assignment). A NULL dyn slot is a trap, never a value, so every dyn
|
|
@@ -337,7 +360,7 @@ export declare function nodeThrowExpr(kind: 0 | 1 | 2, code: string, message: st
|
|
|
337
360
|
* (scr_throw_lowering_fence). The diagnostic joins the runtime-fence
|
|
338
361
|
* ledger exactly like a deferred statement fence — nothing silently
|
|
339
362
|
* drops off the coverage report. */
|
|
340
|
-
export declare function ladderFenceExpr(
|
|
363
|
+
export declare function ladderFenceExpr(lowerer: Lowerer, surface: string, node: ts.Node, hint?: string): IrExpr;
|
|
341
364
|
/** The checked-dynamic declaration fallback for unmappable binding types
|
|
342
365
|
* (see irTypeOf), two gates over one story:
|
|
343
366
|
*
|
|
@@ -361,7 +384,7 @@ export declare function ladderFenceExpr(L: Lowerer, surface: string, node: ts.No
|
|
|
361
384
|
* this fallback for `any` (mapType answers jsval first).
|
|
362
385
|
*
|
|
363
386
|
* Null for void (no value exists to represent). */
|
|
364
|
-
export declare function dynFallbackType(
|
|
387
|
+
export declare function dynFallbackType(lowerer: Lowerer, node: ts.Node, t: ts.Type): IrType | null;
|
|
365
388
|
/** The best-effort JS `Function.prototype.name` of an expression flowing
|
|
366
389
|
* into a dyn slot (the boxed function kind's inspect/error name):
|
|
367
390
|
* identifier and property reads answer the referenced NAME (a
|
|
@@ -510,7 +533,7 @@ export declare class Lowerer {
|
|
|
510
533
|
* Reachability lowers inits before the declarations they discover, so
|
|
511
534
|
* these rebuild after the worklist restores historical shape metadata. */
|
|
512
535
|
readonly shapeOrderHelperFinalizers: (() => void)[];
|
|
513
|
-
/** Emit-override specializations (`%C.emit:<event>` — lower-emitter.ts's
|
|
536
|
+
/** Emit-override specializations (`%C.emit:<event>` — lower-event-emitter.ts's
|
|
514
537
|
* emit-overrides block): interned names, the drive-loop queue, and the
|
|
515
538
|
* currently-lowering specialization's context (the super-forward
|
|
516
539
|
* interception reads it). */
|
|
@@ -888,6 +911,13 @@ export declare class Lowerer {
|
|
|
888
911
|
* point for deferred collection diagnostics: resolving a reference to a
|
|
889
912
|
* broken declaration reports what collection deferred. */
|
|
890
913
|
resolveValueSymbol(ident: ts.Identifier): ts.Symbol | null;
|
|
914
|
+
/** Whether this exact direct call belongs to a manifest-validated native
|
|
915
|
+
* binding. Declaration classification uses this as a probe before normal
|
|
916
|
+
* expression lowering: resolving must not flush deferred diagnostics or
|
|
917
|
+
* trigger the merged-namespace fence just because it is asking ownership.
|
|
918
|
+
* Call lowering remains the authority for every ABI and call-shape
|
|
919
|
+
* diagnostic once this answers true. */
|
|
920
|
+
ownsFfiCall(expr: ts.CallExpression): boolean;
|
|
891
921
|
/** The configured external host module owning an expression's runtime
|
|
892
922
|
* value, or null. Alias chains are followed to their declaration file so
|
|
893
923
|
* direct imports and local re-export facades classify identically. Type
|
|
@@ -1030,6 +1060,15 @@ export declare class Lowerer {
|
|
|
1030
1060
|
records: IrRecordShape[];
|
|
1031
1061
|
unions: IrUnionDef[];
|
|
1032
1062
|
};
|
|
1063
|
+
/** Converts diagnostics recorded since `diagsBefore` into a runtime
|
|
1064
|
+
* fence. ICEs stay on the compile-diagnostic path; every other captured
|
|
1065
|
+
* diagnostic moves to the runtime-fence ledger. Function targets share
|
|
1066
|
+
* the same capture-free trap-function construction, while statement
|
|
1067
|
+
* targets return the fence inline. Null means the conversion was not
|
|
1068
|
+
* eligible (probe mode, no diagnostic/fallback, or an ICE). */
|
|
1069
|
+
deferToRuntimeFence(diagsBefore: number, node: ts.Node, target: RuntimeFenceStatementTarget): IrStmt | null;
|
|
1070
|
+
deferToRuntimeFence(diagsBefore: number, node: ts.Node, target: RuntimeFenceFunctionTarget): IrFunction | null;
|
|
1071
|
+
deferToRuntimeFence(diagsBefore: number, node: ts.Node, target: RuntimeFenceClosureTarget): IrExpr | null;
|
|
1033
1072
|
/** All diagnostics land here; while a generic instance body is lowering,
|
|
1034
1073
|
* the instantiation context is appended so the user knows which concrete
|
|
1035
1074
|
* types made the (source-anchored) construct fail. */
|
|
@@ -1167,7 +1206,7 @@ export declare class Lowerer {
|
|
|
1167
1206
|
/** Unwraps a HYBRID (function-with-properties) record to its callable:
|
|
1168
1207
|
* a record whose shape carries the reserved `%call` func field reads
|
|
1169
1208
|
* that field; anything else returns unchanged. The consumer half of
|
|
1170
|
-
*
|
|
1209
|
+
* type-mapper.ts's chalk-shape mapping — call paths and func-slot coercions
|
|
1171
1210
|
* share it. */
|
|
1172
1211
|
hybridCallUnwrap(expr: IrExpr): IrExpr;
|
|
1173
1212
|
/** The tag of the union arm equal to `arm`, or -1 (unknown union / no
|
|
@@ -1677,6 +1716,12 @@ export declare class Lowerer {
|
|
|
1677
1716
|
lowerGenericFnValue(ref: ts.Expression, info: GenericFnInfo): IrExpr;
|
|
1678
1717
|
inferTypeParamBindings(expr: ts.CallExpression, info: GenericFnInfo, rsig: ts.Signature, tsBindings?: Map<ts.Symbol, ts.Type>): Map<ts.Symbol, IrType>;
|
|
1679
1718
|
lowerGenericInstance(info: GenericFnInfo, inst: GenericInstance): IrFunction;
|
|
1719
|
+
/** Checker work class SHAPE collection performs inside otherwise
|
|
1720
|
+
* deferred JavaScript bodies. Constructor assignments declare fields,
|
|
1721
|
+
* so collection asks for each `this.x` symbol and RHS type even when the
|
|
1722
|
+
* constructor is unreachable. Keep that mandatory work batched without
|
|
1723
|
+
* sweeping unrelated dead method bodies. */
|
|
1724
|
+
private prefetchClassCollection;
|
|
1680
1725
|
collectClassShape(decl: ts.ClassDeclaration): void;
|
|
1681
1726
|
collectClassShapeInner(decl: ts.ClassLikeDeclaration, jsNameOverride?: string, inst?: {
|
|
1682
1727
|
family: ClassInfo;
|
|
@@ -1904,7 +1949,7 @@ export declare class Lowerer {
|
|
|
1904
1949
|
* node_modules but NOT the standard library (typescript's own lib files
|
|
1905
1950
|
* live under node_modules too), or inside a registered workspace-linked
|
|
1906
1951
|
* package (a node_modules symlink whose realpath'd files carry no
|
|
1907
|
-
* node_modules segment —
|
|
1952
|
+
* node_modules segment — workspace-registry.ts). The provenance half of the npm
|
|
1908
1953
|
* typing rule (package types are island handles) and of the per-package
|
|
1909
1954
|
* requires-dynamic attribution. */
|
|
1910
1955
|
readonly isNpmFile: (sf: ts.SourceFile) => boolean;
|
|
@@ -2135,3 +2180,4 @@ export declare class Lowerer {
|
|
|
2135
2180
|
islandGlobalFnOf(ident: ts.Identifier): IslandFnEntry | null;
|
|
2136
2181
|
lowerIslandMethodCall(call: ts.CallExpression, access: ts.PropertyAccessExpression): IrExpr | null;
|
|
2137
2182
|
}
|
|
2183
|
+
export {};
|