@adobe/ecs 0.0.0-stage → 0.1.0
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/LICENSE +21 -0
- package/dist/implementation/compiler/access.d.ts +6 -0
- package/dist/implementation/compiler/access.js +155 -0
- package/dist/implementation/compiler/access.js.map +1 -0
- package/dist/implementation/compiler/assign.d.ts +7 -0
- package/dist/implementation/compiler/assign.js +162 -0
- package/dist/implementation/compiler/assign.js.map +1 -0
- package/dist/implementation/compiler/bind.d.ts +9 -0
- package/dist/implementation/compiler/bind.js +82 -0
- package/dist/implementation/compiler/bind.js.map +1 -0
- package/dist/implementation/compiler/body-access.d.ts +15 -0
- package/dist/implementation/compiler/body-access.js +377 -0
- package/dist/implementation/compiler/body-access.js.map +1 -0
- package/dist/implementation/compiler/booleans.d.ts +8 -0
- package/dist/implementation/compiler/booleans.js +35 -0
- package/dist/implementation/compiler/booleans.js.map +1 -0
- package/dist/implementation/compiler/branches.d.ts +16 -0
- package/dist/implementation/compiler/branches.js +38 -0
- package/dist/implementation/compiler/branches.js.map +1 -0
- package/dist/implementation/compiler/calls.d.ts +6 -0
- package/dist/implementation/compiler/calls.js +390 -0
- package/dist/implementation/compiler/calls.js.map +1 -0
- package/dist/implementation/compiler/columns.d.ts +20 -0
- package/dist/implementation/compiler/columns.js +37 -0
- package/dist/implementation/compiler/columns.js.map +1 -0
- package/dist/implementation/compiler/compile-kernel.d.ts +14 -0
- package/dist/implementation/compiler/compile-kernel.js +139 -0
- package/dist/implementation/compiler/compile-kernel.js.map +1 -0
- package/dist/implementation/compiler/data.d.ts +30 -0
- package/dist/implementation/compiler/data.js +77 -0
- package/dist/implementation/compiler/data.js.map +1 -0
- package/dist/implementation/compiler/estree.d.ts +18 -0
- package/dist/implementation/compiler/estree.js +62 -0
- package/dist/implementation/compiler/estree.js.map +1 -0
- package/dist/implementation/compiler/exact.d.ts +24 -0
- package/dist/implementation/compiler/exact.js +64 -0
- package/dist/implementation/compiler/exact.js.map +1 -0
- package/dist/implementation/compiler/expression.d.ts +6 -0
- package/dist/implementation/compiler/expression.js +129 -0
- package/dist/implementation/compiler/expression.js.map +1 -0
- package/dist/implementation/compiler/failure.d.ts +27 -0
- package/dist/implementation/compiler/failure.js +24 -0
- package/dist/implementation/compiler/failure.js.map +1 -0
- package/dist/implementation/compiler/identify.d.ts +33 -0
- package/dist/implementation/compiler/identify.js +149 -0
- package/dist/implementation/compiler/identify.js.map +1 -0
- package/dist/implementation/compiler/index.d.ts +1 -0
- package/dist/implementation/compiler/index.js +2 -0
- package/dist/implementation/compiler/index.js.map +1 -0
- package/dist/implementation/compiler/ir.d.ts +214 -0
- package/dist/implementation/compiler/ir.js +28 -0
- package/dist/implementation/compiler/ir.js.map +1 -0
- package/dist/implementation/compiler/kernel-id.d.ts +17 -0
- package/dist/implementation/compiler/kernel-id.js +27 -0
- package/dist/implementation/compiler/kernel-id.js.map +1 -0
- package/dist/implementation/compiler/key.d.ts +21 -0
- package/dist/implementation/compiler/key.js +21 -0
- package/dist/implementation/compiler/key.js.map +1 -0
- package/dist/implementation/compiler/link.d.ts +70 -0
- package/dist/implementation/compiler/link.js +169 -0
- package/dist/implementation/compiler/link.js.map +1 -0
- package/dist/implementation/compiler/lists.d.ts +39 -0
- package/dist/implementation/compiler/lists.js +189 -0
- package/dist/implementation/compiler/lists.js.map +1 -0
- package/dist/implementation/compiler/lookups.d.ts +24 -0
- package/dist/implementation/compiler/lookups.js +118 -0
- package/dist/implementation/compiler/lookups.js.map +1 -0
- package/dist/implementation/compiler/math.d.ts +3 -0
- package/dist/implementation/compiler/math.js +9 -0
- package/dist/implementation/compiler/math.js.map +1 -0
- package/dist/implementation/compiler/module-scope.d.ts +53 -0
- package/dist/implementation/compiler/module-scope.js +121 -0
- package/dist/implementation/compiler/module-scope.js.map +1 -0
- package/dist/implementation/compiler/module-value.d.ts +15 -0
- package/dist/implementation/compiler/module-value.js +124 -0
- package/dist/implementation/compiler/module-value.js.map +1 -0
- package/dist/implementation/compiler/out.d.ts +4 -0
- package/dist/implementation/compiler/out.js +2 -0
- package/dist/implementation/compiler/out.js.map +1 -0
- package/dist/implementation/compiler/paths.d.ts +14 -0
- package/dist/implementation/compiler/paths.js +29 -0
- package/dist/implementation/compiler/paths.js.map +1 -0
- package/dist/implementation/compiler/plugin.d.ts +2 -0
- package/dist/implementation/compiler/plugin.js +225 -0
- package/dist/implementation/compiler/plugin.js.map +1 -0
- package/dist/implementation/compiler/print.d.ts +12 -0
- package/dist/implementation/compiler/print.js +96 -0
- package/dist/implementation/compiler/print.js.map +1 -0
- package/dist/implementation/compiler/program.d.ts +10 -0
- package/dist/implementation/compiler/program.js +255 -0
- package/dist/implementation/compiler/program.js.map +1 -0
- package/dist/implementation/compiler/scalar.d.ts +8 -0
- package/dist/implementation/compiler/scalar.js +47 -0
- package/dist/implementation/compiler/scalar.js.map +1 -0
- package/dist/implementation/compiler/scope.d.ts +24 -0
- package/dist/implementation/compiler/scope.js +4 -0
- package/dist/implementation/compiler/scope.js.map +1 -0
- package/dist/implementation/compiler/serialize.d.ts +2 -0
- package/dist/implementation/compiler/serialize.js +14 -0
- package/dist/implementation/compiler/serialize.js.map +1 -0
- package/dist/implementation/compiler/signature.d.ts +45 -0
- package/dist/implementation/compiler/signature.js +150 -0
- package/dist/implementation/compiler/signature.js.map +1 -0
- package/dist/implementation/compiler/snapshot.d.ts +21 -0
- package/dist/implementation/compiler/snapshot.js +18 -0
- package/dist/implementation/compiler/snapshot.js.map +1 -0
- package/dist/implementation/compiler/source-map.d.ts +34 -0
- package/dist/implementation/compiler/source-map.js +130 -0
- package/dist/implementation/compiler/source-map.js.map +1 -0
- package/dist/implementation/compiler/spawns.d.ts +29 -0
- package/dist/implementation/compiler/spawns.js +102 -0
- package/dist/implementation/compiler/spawns.js.map +1 -0
- package/dist/implementation/compiler/stamps.d.ts +6 -0
- package/dist/implementation/compiler/stamps.js +25 -0
- package/dist/implementation/compiler/stamps.js.map +1 -0
- package/dist/implementation/compiler/statement.d.ts +7 -0
- package/dist/implementation/compiler/statement.js +112 -0
- package/dist/implementation/compiler/statement.js.map +1 -0
- package/dist/implementation/compiler/terminal.d.ts +8 -0
- package/dist/implementation/compiler/terminal.js +51 -0
- package/dist/implementation/compiler/terminal.js.map +1 -0
- package/dist/implementation/compiler/transform.d.ts +31 -0
- package/dist/implementation/compiler/transform.js +227 -0
- package/dist/implementation/compiler/transform.js.map +1 -0
- package/dist/implementation/compiler/unit.d.ts +91 -0
- package/dist/implementation/compiler/unit.js +39 -0
- package/dist/implementation/compiler/unit.js.map +1 -0
- package/dist/implementation/compiler/value.d.ts +115 -0
- package/dist/implementation/compiler/value.js +9 -0
- package/dist/implementation/compiler/value.js.map +1 -0
- package/dist/implementation/index.d.ts +2 -0
- package/dist/implementation/index.js +3 -0
- package/dist/implementation/index.js.map +1 -0
- package/dist/implementation/world/activate.d.ts +21 -0
- package/dist/implementation/world/activate.js +132 -0
- package/dist/implementation/world/activate.js.map +1 -0
- package/dist/implementation/world/archetype.d.ts +136 -0
- package/dist/implementation/world/archetype.js +313 -0
- package/dist/implementation/world/archetype.js.map +1 -0
- package/dist/implementation/world/arrays.d.ts +24 -0
- package/dist/implementation/world/arrays.js +31 -0
- package/dist/implementation/world/arrays.js.map +1 -0
- package/dist/implementation/world/attach-kernel.d.ts +9 -0
- package/dist/implementation/world/attach-kernel.js +22 -0
- package/dist/implementation/world/attach-kernel.js.map +1 -0
- package/dist/implementation/world/batches.d.ts +15 -0
- package/dist/implementation/world/batches.js +144 -0
- package/dist/implementation/world/batches.js.map +1 -0
- package/dist/implementation/world/buffer.d.ts +60 -0
- package/dist/implementation/world/buffer.js +105 -0
- package/dist/implementation/world/buffer.js.map +1 -0
- package/dist/implementation/world/cascade.d.ts +28 -0
- package/dist/implementation/world/cascade.js +139 -0
- package/dist/implementation/world/cascade.js.map +1 -0
- package/dist/implementation/world/cells.d.ts +7 -0
- package/dist/implementation/world/cells.js +22 -0
- package/dist/implementation/world/cells.js.map +1 -0
- package/dist/implementation/world/check-kernel.d.ts +10 -0
- package/dist/implementation/world/check-kernel.js +102 -0
- package/dist/implementation/world/check-kernel.js.map +1 -0
- package/dist/implementation/world/claims.d.ts +13 -0
- package/dist/implementation/world/claims.js +50 -0
- package/dist/implementation/world/claims.js.map +1 -0
- package/dist/implementation/world/closure.d.ts +12 -0
- package/dist/implementation/world/closure.js +43 -0
- package/dist/implementation/world/closure.js.map +1 -0
- package/dist/implementation/world/command-ring.d.ts +97 -0
- package/dist/implementation/world/command-ring.js +438 -0
- package/dist/implementation/world/command-ring.js.map +1 -0
- package/dist/implementation/world/commands.d.ts +25 -0
- package/dist/implementation/world/commands.js +74 -0
- package/dist/implementation/world/commands.js.map +1 -0
- package/dist/implementation/world/create.d.ts +61 -0
- package/dist/implementation/world/create.js +787 -0
- package/dist/implementation/world/create.js.map +1 -0
- package/dist/implementation/world/directories.d.ts +28 -0
- package/dist/implementation/world/directories.js +67 -0
- package/dist/implementation/world/directories.js.map +1 -0
- package/dist/implementation/world/entities.d.ts +77 -0
- package/dist/implementation/world/entities.js +137 -0
- package/dist/implementation/world/entities.js.map +1 -0
- package/dist/implementation/world/execute.d.ts +36 -0
- package/dist/implementation/world/execute.js +616 -0
- package/dist/implementation/world/execute.js.map +1 -0
- package/dist/implementation/world/failures.d.ts +10 -0
- package/dist/implementation/world/failures.js +5 -0
- package/dist/implementation/world/failures.js.map +1 -0
- package/dist/implementation/world/finalizers.d.ts +63 -0
- package/dist/implementation/world/finalizers.js +408 -0
- package/dist/implementation/world/finalizers.js.map +1 -0
- package/dist/implementation/world/gpu.d.ts +64 -0
- package/dist/implementation/world/gpu.js +317 -0
- package/dist/implementation/world/gpu.js.map +1 -0
- package/dist/implementation/world/holders.d.ts +21 -0
- package/dist/implementation/world/holders.js +65 -0
- package/dist/implementation/world/holders.js.map +1 -0
- package/dist/implementation/world/index-build.d.ts +88 -0
- package/dist/implementation/world/index-build.js +404 -0
- package/dist/implementation/world/index-build.js.map +1 -0
- package/dist/implementation/world/index-hash.d.ts +99 -0
- package/dist/implementation/world/index-hash.js +440 -0
- package/dist/implementation/world/index-hash.js.map +1 -0
- package/dist/implementation/world/index-keys.d.ts +75 -0
- package/dist/implementation/world/index-keys.js +251 -0
- package/dist/implementation/world/index-keys.js.map +1 -0
- package/dist/implementation/world/index-lookups.d.ts +76 -0
- package/dist/implementation/world/index-lookups.js +567 -0
- package/dist/implementation/world/index-lookups.js.map +1 -0
- package/dist/implementation/world/index-order.d.ts +21 -0
- package/dist/implementation/world/index-order.js +174 -0
- package/dist/implementation/world/index-order.js.map +1 -0
- package/dist/implementation/world/index-readers.d.ts +101 -0
- package/dist/implementation/world/index-readers.js +341 -0
- package/dist/implementation/world/index-readers.js.map +1 -0
- package/dist/implementation/world/index-sorted.d.ts +120 -0
- package/dist/implementation/world/index-sorted.js +631 -0
- package/dist/implementation/world/index-sorted.js.map +1 -0
- package/dist/implementation/world/indexes.d.ts +139 -0
- package/dist/implementation/world/indexes.js +1174 -0
- package/dist/implementation/world/indexes.js.map +1 -0
- package/dist/implementation/world/input.d.ts +3 -0
- package/dist/implementation/world/input.js +17 -0
- package/dist/implementation/world/input.js.map +1 -0
- package/dist/implementation/world/intrinsics.d.ts +5 -0
- package/dist/implementation/world/intrinsics.js +33 -0
- package/dist/implementation/world/intrinsics.js.map +1 -0
- package/dist/implementation/world/join.d.ts +23 -0
- package/dist/implementation/world/join.js +709 -0
- package/dist/implementation/world/join.js.map +1 -0
- package/dist/implementation/world/joined-observer.d.ts +179 -0
- package/dist/implementation/world/joined-observer.js +758 -0
- package/dist/implementation/world/joined-observer.js.map +1 -0
- package/dist/implementation/world/joining.d.ts +338 -0
- package/dist/implementation/world/joining.js +143 -0
- package/dist/implementation/world/joining.js.map +1 -0
- package/dist/implementation/world/journal.d.ts +21 -0
- package/dist/implementation/world/journal.js +22 -0
- package/dist/implementation/world/journal.js.map +1 -0
- package/dist/implementation/world/kernel-indexes.d.ts +30 -0
- package/dist/implementation/world/kernel-indexes.js +172 -0
- package/dist/implementation/world/kernel-indexes.js.map +1 -0
- package/dist/implementation/world/kernel.d.ts +358 -0
- package/dist/implementation/world/kernel.js +3 -0
- package/dist/implementation/world/kernel.js.map +1 -0
- package/dist/implementation/world/kernels.d.ts +80 -0
- package/dist/implementation/world/kernels.js +284 -0
- package/dist/implementation/world/kernels.js.map +1 -0
- package/dist/implementation/world/layout-directory.d.ts +107 -0
- package/dist/implementation/world/layout-directory.js +218 -0
- package/dist/implementation/world/layout-directory.js.map +1 -0
- package/dist/implementation/world/lists.d.ts +56 -0
- package/dist/implementation/world/lists.js +118 -0
- package/dist/implementation/world/lists.js.map +1 -0
- package/dist/implementation/world/lookup-keys.d.ts +19 -0
- package/dist/implementation/world/lookup-keys.js +48 -0
- package/dist/implementation/world/lookup-keys.js.map +1 -0
- package/dist/implementation/world/loop.d.ts +73 -0
- package/dist/implementation/world/loop.js +253 -0
- package/dist/implementation/world/loop.js.map +1 -0
- package/dist/implementation/world/memory.d.ts +40 -0
- package/dist/implementation/world/memory.js +64 -0
- package/dist/implementation/world/memory.js.map +1 -0
- package/dist/implementation/world/mirror.d.ts +112 -0
- package/dist/implementation/world/mirror.js +542 -0
- package/dist/implementation/world/mirror.js.map +1 -0
- package/dist/implementation/world/move-log.d.ts +107 -0
- package/dist/implementation/world/move-log.js +165 -0
- package/dist/implementation/world/move-log.js.map +1 -0
- package/dist/implementation/world/observer.d.ts +16 -0
- package/dist/implementation/world/observer.js +131 -0
- package/dist/implementation/world/observer.js.map +1 -0
- package/dist/implementation/world/order.d.ts +38 -0
- package/dist/implementation/world/order.js +323 -0
- package/dist/implementation/world/order.js.map +1 -0
- package/dist/implementation/world/plan.d.ts +50 -0
- package/dist/implementation/world/plan.js +20 -0
- package/dist/implementation/world/plan.js.map +1 -0
- package/dist/implementation/world/pool.d.ts +70 -0
- package/dist/implementation/world/pool.js +263 -0
- package/dist/implementation/world/pool.js.map +1 -0
- package/dist/implementation/world/port.d.ts +61 -0
- package/dist/implementation/world/port.js +104 -0
- package/dist/implementation/world/port.js.map +1 -0
- package/dist/implementation/world/prepared-lookup.d.ts +11 -0
- package/dist/implementation/world/prepared-lookup.js +98 -0
- package/dist/implementation/world/prepared-lookup.js.map +1 -0
- package/dist/implementation/world/prepared-spawn.d.ts +39 -0
- package/dist/implementation/world/prepared-spawn.js +115 -0
- package/dist/implementation/world/prepared-spawn.js.map +1 -0
- package/dist/implementation/world/program.d.ts +11 -0
- package/dist/implementation/world/program.js +12 -0
- package/dist/implementation/world/program.js.map +1 -0
- package/dist/implementation/world/protocol.d.ts +185 -0
- package/dist/implementation/world/protocol.js +41 -0
- package/dist/implementation/world/protocol.js.map +1 -0
- package/dist/implementation/world/publish.d.ts +9 -0
- package/dist/implementation/world/publish.js +28 -0
- package/dist/implementation/world/publish.js.map +1 -0
- package/dist/implementation/world/ranges.d.ts +11 -0
- package/dist/implementation/world/ranges.js +47 -0
- package/dist/implementation/world/ranges.js.map +1 -0
- package/dist/implementation/world/reductions.d.ts +32 -0
- package/dist/implementation/world/reductions.js +92 -0
- package/dist/implementation/world/reductions.js.map +1 -0
- package/dist/implementation/world/register.d.ts +64 -0
- package/dist/implementation/world/register.js +368 -0
- package/dist/implementation/world/register.js.map +1 -0
- package/dist/implementation/world/remote-systems.d.ts +139 -0
- package/dist/implementation/world/remote-systems.js +551 -0
- package/dist/implementation/world/remote-systems.js.map +1 -0
- package/dist/implementation/world/remote.d.ts +25 -0
- package/dist/implementation/world/remote.js +137 -0
- package/dist/implementation/world/remote.js.map +1 -0
- package/dist/implementation/world/reports.d.ts +63 -0
- package/dist/implementation/world/reports.js +180 -0
- package/dist/implementation/world/reports.js.map +1 -0
- package/dist/implementation/world/resources.d.ts +20 -0
- package/dist/implementation/world/resources.js +63 -0
- package/dist/implementation/world/resources.js.map +1 -0
- package/dist/implementation/world/rows.d.ts +108 -0
- package/dist/implementation/world/rows.js +479 -0
- package/dist/implementation/world/rows.js.map +1 -0
- package/dist/implementation/world/runner.d.ts +123 -0
- package/dist/implementation/world/runner.js +1014 -0
- package/dist/implementation/world/runner.js.map +1 -0
- package/dist/implementation/world/sharing.d.ts +47 -0
- package/dist/implementation/world/sharing.js +548 -0
- package/dist/implementation/world/sharing.js.map +1 -0
- package/dist/implementation/world/staging.d.ts +60 -0
- package/dist/implementation/world/staging.js +169 -0
- package/dist/implementation/world/staging.js.map +1 -0
- package/dist/implementation/world/state.d.ts +261 -0
- package/dist/implementation/world/state.js +335 -0
- package/dist/implementation/world/state.js.map +1 -0
- package/dist/implementation/world/stop-lists.d.ts +114 -0
- package/dist/implementation/world/stop-lists.js +250 -0
- package/dist/implementation/world/stop-lists.js.map +1 -0
- package/dist/implementation/world/strings.d.ts +48 -0
- package/dist/implementation/world/strings.js +213 -0
- package/dist/implementation/world/strings.js.map +1 -0
- package/dist/implementation/world/structure.d.ts +39 -0
- package/dist/implementation/world/structure.js +39 -0
- package/dist/implementation/world/structure.js.map +1 -0
- package/dist/implementation/world/synchronize.d.ts +32 -0
- package/dist/implementation/world/synchronize.js +868 -0
- package/dist/implementation/world/synchronize.js.map +1 -0
- package/dist/implementation/world/tail-blocks.d.ts +40 -0
- package/dist/implementation/world/tail-blocks.js +54 -0
- package/dist/implementation/world/tail-blocks.js.map +1 -0
- package/dist/implementation/world/tails.d.ts +114 -0
- package/dist/implementation/world/tails.js +441 -0
- package/dist/implementation/world/tails.js.map +1 -0
- package/dist/implementation/world/terminal.d.ts +7 -0
- package/dist/implementation/world/terminal.js +12 -0
- package/dist/implementation/world/terminal.js.map +1 -0
- package/dist/implementation/world/thread-directory.d.ts +66 -0
- package/dist/implementation/world/thread-directory.js +173 -0
- package/dist/implementation/world/thread-directory.js.map +1 -0
- package/dist/implementation/world/thread-finalizers.d.ts +52 -0
- package/dist/implementation/world/thread-finalizers.js +266 -0
- package/dist/implementation/world/thread-finalizers.js.map +1 -0
- package/dist/implementation/world/thread-indexes.d.ts +26 -0
- package/dist/implementation/world/thread-indexes.js +71 -0
- package/dist/implementation/world/thread-indexes.js.map +1 -0
- package/dist/implementation/world/thread-observer.d.ts +41 -0
- package/dist/implementation/world/thread-observer.js +181 -0
- package/dist/implementation/world/thread-observer.js.map +1 -0
- package/dist/implementation/world/thread-systems.d.ts +113 -0
- package/dist/implementation/world/thread-systems.js +1169 -0
- package/dist/implementation/world/thread-systems.js.map +1 -0
- package/dist/implementation/world/thread-tasks.d.ts +61 -0
- package/dist/implementation/world/thread-tasks.js +69 -0
- package/dist/implementation/world/thread-tasks.js.map +1 -0
- package/dist/implementation/world/transfers.d.ts +30 -0
- package/dist/implementation/world/transfers.js +101 -0
- package/dist/implementation/world/transfers.js.map +1 -0
- package/dist/implementation/world/up.d.ts +32 -0
- package/dist/implementation/world/up.js +723 -0
- package/dist/implementation/world/up.js.map +1 -0
- package/dist/implementation/world/wasm.d.ts +112 -0
- package/dist/implementation/world/wasm.js +2159 -0
- package/dist/implementation/world/wasm.js.map +1 -0
- package/dist/implementation/world/wgsl.d.ts +20 -0
- package/dist/implementation/world/wgsl.js +485 -0
- package/dist/implementation/world/wgsl.js.map +1 -0
- package/dist/implementation/world/worker-platform.d.ts +37 -0
- package/dist/implementation/world/worker-platform.js +80 -0
- package/dist/implementation/world/worker-platform.js.map +1 -0
- package/dist/implementation/world/worker.d.ts +1 -0
- package/dist/implementation/world/worker.js +510 -0
- package/dist/implementation/world/worker.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/interface/archetype/archetype.d.ts +2 -0
- package/dist/interface/archetype/archetype.js +2 -0
- package/dist/interface/archetype/archetype.js.map +1 -0
- package/dist/interface/archetype/create.d.ts +7 -0
- package/dist/interface/archetype/create.js +11 -0
- package/dist/interface/archetype/create.js.map +1 -0
- package/dist/interface/archetype/index.d.ts +1 -0
- package/dist/interface/archetype/index.js +2 -0
- package/dist/interface/archetype/index.js.map +1 -0
- package/dist/interface/archetype/values-of.d.ts +17 -0
- package/dist/interface/archetype/values-of.js +2 -0
- package/dist/interface/archetype/values-of.js.map +1 -0
- package/dist/interface/component/component.d.ts +2 -0
- package/dist/interface/component/component.js +2 -0
- package/dist/interface/component/component.js.map +1 -0
- package/dist/interface/component/declaration.d.ts +74 -0
- package/dist/interface/component/declaration.js +2 -0
- package/dist/interface/component/declaration.js.map +1 -0
- package/dist/interface/component/index.d.ts +3 -0
- package/dist/interface/component/index.js +2 -0
- package/dist/interface/component/index.js.map +1 -0
- package/dist/interface/component/key.d.ts +2 -0
- package/dist/interface/component/key.js +2 -0
- package/dist/interface/component/key.js.map +1 -0
- package/dist/interface/component/register.d.ts +23 -0
- package/dist/interface/component/register.js +6 -0
- package/dist/interface/component/register.js.map +1 -0
- package/dist/interface/component/types.d.ts +6 -0
- package/dist/interface/component/types.js +2 -0
- package/dist/interface/component/types.js.map +1 -0
- package/dist/interface/component/value.d.ts +34 -0
- package/dist/interface/component/value.js +2 -0
- package/dist/interface/component/value.js.map +1 -0
- package/dist/interface/component/values.d.ts +6 -0
- package/dist/interface/component/values.js +2 -0
- package/dist/interface/component/values.js.map +1 -0
- package/dist/interface/entity/entity.d.ts +9 -0
- package/dist/interface/entity/entity.js +2 -0
- package/dist/interface/entity/entity.js.map +1 -0
- package/dist/interface/entity/index.d.ts +8 -0
- package/dist/interface/entity/index.js +5 -0
- package/dist/interface/entity/index.js.map +1 -0
- package/dist/interface/finalizer/body.d.ts +50 -0
- package/dist/interface/finalizer/body.js +2 -0
- package/dist/interface/finalizer/body.js.map +1 -0
- package/dist/interface/finalizer/create.d.ts +43 -0
- package/dist/interface/finalizer/create.js +97 -0
- package/dist/interface/finalizer/create.js.map +1 -0
- package/dist/interface/finalizer/created.d.ts +16 -0
- package/dist/interface/finalizer/created.js +2 -0
- package/dist/interface/finalizer/created.js.map +1 -0
- package/dist/interface/finalizer/declaration.d.ts +38 -0
- package/dist/interface/finalizer/declaration.js +2 -0
- package/dist/interface/finalizer/declaration.js.map +1 -0
- package/dist/interface/finalizer/finalizer.d.ts +8 -0
- package/dist/interface/finalizer/finalizer.js +2 -0
- package/dist/interface/finalizer/finalizer.js.map +1 -0
- package/dist/interface/finalizer/index.d.ts +1 -0
- package/dist/interface/finalizer/index.js +2 -0
- package/dist/interface/finalizer/index.js.map +1 -0
- package/dist/interface/finalizer/name.d.ts +6 -0
- package/dist/interface/finalizer/name.js +2 -0
- package/dist/interface/finalizer/name.js.map +1 -0
- package/dist/interface/gpu/accessors.d.ts +14 -0
- package/dist/interface/gpu/accessors.js +70 -0
- package/dist/interface/gpu/accessors.js.map +1 -0
- package/dist/interface/gpu/gpu.d.ts +3 -0
- package/dist/interface/gpu/gpu.js +2 -0
- package/dist/interface/gpu/gpu.js.map +1 -0
- package/dist/interface/gpu/index.d.ts +2 -0
- package/dist/interface/gpu/index.js +3 -0
- package/dist/interface/gpu/index.js.map +1 -0
- package/dist/interface/gpu/layout.d.ts +5 -0
- package/dist/interface/gpu/layout.js +21 -0
- package/dist/interface/gpu/layout.js.map +1 -0
- package/dist/interface/gpu/record.d.ts +5 -0
- package/dist/interface/gpu/record.js +6 -0
- package/dist/interface/gpu/record.js.map +1 -0
- package/dist/interface/gpu/wgsl.d.ts +8 -0
- package/dist/interface/gpu/wgsl.js +20 -0
- package/dist/interface/gpu/wgsl.js.map +1 -0
- package/dist/interface/index.d.ts +19 -0
- package/dist/interface/index.js +14 -0
- package/dist/interface/index.js.map +1 -0
- package/dist/interface/indexes/create.d.ts +30 -0
- package/dist/interface/indexes/create.js +79 -0
- package/dist/interface/indexes/create.js.map +1 -0
- package/dist/interface/indexes/created.d.ts +7 -0
- package/dist/interface/indexes/created.js +2 -0
- package/dist/interface/indexes/created.js.map +1 -0
- package/dist/interface/indexes/declaration.d.ts +13 -0
- package/dist/interface/indexes/declaration.js +2 -0
- package/dist/interface/indexes/declaration.js.map +1 -0
- package/dist/interface/indexes/index-type.d.ts +12 -0
- package/dist/interface/indexes/index-type.js +2 -0
- package/dist/interface/indexes/index-type.js.map +1 -0
- package/dist/interface/indexes/index.d.ts +1 -0
- package/dist/interface/indexes/index.js +2 -0
- package/dist/interface/indexes/index.js.map +1 -0
- package/dist/interface/indexes/name.d.ts +5 -0
- package/dist/interface/indexes/name.js +2 -0
- package/dist/interface/indexes/name.js.map +1 -0
- package/dist/interface/math/f32/index.d.ts +2 -0
- package/dist/interface/math/f32/index.js +2 -0
- package/dist/interface/math/f32/index.js.map +1 -0
- package/dist/interface/math/f32/public.d.ts +1 -0
- package/dist/interface/math/f32/public.js +2 -0
- package/dist/interface/math/f32/public.js.map +1 -0
- package/dist/interface/math/f32/round-half-even.d.ts +2 -0
- package/dist/interface/math/f32/round-half-even.js +6 -0
- package/dist/interface/math/f32/round-half-even.js.map +1 -0
- package/dist/interface/math/f32/schema.d.ts +4 -0
- package/dist/interface/math/f32/schema.js +2 -0
- package/dist/interface/math/f32/schema.js.map +1 -0
- package/dist/interface/math/i32/index.d.ts +3 -0
- package/dist/interface/math/i32/index.js +2 -0
- package/dist/interface/math/i32/index.js.map +1 -0
- package/dist/interface/math/i32/public.d.ts +2 -0
- package/dist/interface/math/i32/public.js +3 -0
- package/dist/interface/math/i32/public.js.map +1 -0
- package/dist/interface/math/i32/schema.d.ts +5 -0
- package/dist/interface/math/i32/schema.js +2 -0
- package/dist/interface/math/i32/schema.js.map +1 -0
- package/dist/interface/math/i32/shift-right.d.ts +2 -0
- package/dist/interface/math/i32/shift-right.js +2 -0
- package/dist/interface/math/i32/shift-right.js.map +1 -0
- package/dist/interface/math/index.d.ts +8 -0
- package/dist/interface/math/index.js +9 -0
- package/dist/interface/math/index.js.map +1 -0
- package/dist/interface/math/intrinsic.d.ts +13 -0
- package/dist/interface/math/intrinsic.js +10 -0
- package/dist/interface/math/intrinsic.js.map +1 -0
- package/dist/interface/math/mat4x4/add.d.ts +2 -0
- package/dist/interface/math/mat4x4/add.js +8 -0
- package/dist/interface/math/mat4x4/add.js.map +1 -0
- package/dist/interface/math/mat4x4/determinant.d.ts +2 -0
- package/dist/interface/math/mat4x4/determinant.js +18 -0
- package/dist/interface/math/mat4x4/determinant.js.map +1 -0
- package/dist/interface/math/mat4x4/identity.d.ts +2 -0
- package/dist/interface/math/mat4x4/identity.js +7 -0
- package/dist/interface/math/mat4x4/identity.js.map +1 -0
- package/dist/interface/math/mat4x4/index.d.ts +24 -0
- package/dist/interface/math/mat4x4/index.js +24 -0
- package/dist/interface/math/mat4x4/index.js.map +1 -0
- package/dist/interface/math/mat4x4/inverse.d.ts +2 -0
- package/dist/interface/math/mat4x4/inverse.js +40 -0
- package/dist/interface/math/mat4x4/inverse.js.map +1 -0
- package/dist/interface/math/mat4x4/look-at.d.ts +3 -0
- package/dist/interface/math/mat4x4/look-at.js +22 -0
- package/dist/interface/math/mat4x4/look-at.js.map +1 -0
- package/dist/interface/math/mat4x4/multiply-vec3.d.ts +3 -0
- package/dist/interface/math/mat4x4/multiply-vec3.js +6 -0
- package/dist/interface/math/mat4x4/multiply-vec3.js.map +1 -0
- package/dist/interface/math/mat4x4/multiply-vec4.d.ts +3 -0
- package/dist/interface/math/mat4x4/multiply-vec4.js +8 -0
- package/dist/interface/math/mat4x4/multiply-vec4.js.map +1 -0
- package/dist/interface/math/mat4x4/multiply.d.ts +3 -0
- package/dist/interface/math/mat4x4/multiply.js +21 -0
- package/dist/interface/math/mat4x4/multiply.js.map +1 -0
- package/dist/interface/math/mat4x4/orthographic.d.ts +2 -0
- package/dist/interface/math/mat4x4/orthographic.js +12 -0
- package/dist/interface/math/mat4x4/orthographic.js.map +1 -0
- package/dist/interface/math/mat4x4/perspective.d.ts +2 -0
- package/dist/interface/math/mat4x4/perspective.js +22 -0
- package/dist/interface/math/mat4x4/perspective.js.map +1 -0
- package/dist/interface/math/mat4x4/public.d.ts +20 -0
- package/dist/interface/math/mat4x4/public.js +21 -0
- package/dist/interface/math/mat4x4/public.js.map +1 -0
- package/dist/interface/math/mat4x4/rotation-x.d.ts +2 -0
- package/dist/interface/math/mat4x4/rotation-x.js +11 -0
- package/dist/interface/math/mat4x4/rotation-x.js.map +1 -0
- package/dist/interface/math/mat4x4/rotation-y.d.ts +2 -0
- package/dist/interface/math/mat4x4/rotation-y.js +11 -0
- package/dist/interface/math/mat4x4/rotation-y.js.map +1 -0
- package/dist/interface/math/mat4x4/rotation-z.d.ts +2 -0
- package/dist/interface/math/mat4x4/rotation-z.js +11 -0
- package/dist/interface/math/mat4x4/rotation-z.js.map +1 -0
- package/dist/interface/math/mat4x4/scale.d.ts +2 -0
- package/dist/interface/math/mat4x4/scale.js +8 -0
- package/dist/interface/math/mat4x4/scale.js.map +1 -0
- package/dist/interface/math/mat4x4/scaling.d.ts +2 -0
- package/dist/interface/math/mat4x4/scaling.js +7 -0
- package/dist/interface/math/mat4x4/scaling.js.map +1 -0
- package/dist/interface/math/mat4x4/schema.d.ts +9 -0
- package/dist/interface/math/mat4x4/schema.js +3 -0
- package/dist/interface/math/mat4x4/schema.js.map +1 -0
- package/dist/interface/math/mat4x4/subtract.d.ts +2 -0
- package/dist/interface/math/mat4x4/subtract.js +8 -0
- package/dist/interface/math/mat4x4/subtract.js.map +1 -0
- package/dist/interface/math/mat4x4/translation.d.ts +2 -0
- package/dist/interface/math/mat4x4/translation.js +7 -0
- package/dist/interface/math/mat4x4/translation.js.map +1 -0
- package/dist/interface/math/mat4x4/transpose.d.ts +2 -0
- package/dist/interface/math/mat4x4/transpose.js +8 -0
- package/dist/interface/math/mat4x4/transpose.js.map +1 -0
- package/dist/interface/math/mat4x4/zero.d.ts +2 -0
- package/dist/interface/math/mat4x4/zero.js +7 -0
- package/dist/interface/math/mat4x4/zero.js.map +1 -0
- package/dist/interface/math/quat/add.d.ts +2 -0
- package/dist/interface/math/quat/add.js +8 -0
- package/dist/interface/math/quat/add.js.map +1 -0
- package/dist/interface/math/quat/align-to.d.ts +12 -0
- package/dist/interface/math/quat/align-to.js +42 -0
- package/dist/interface/math/quat/align-to.js.map +1 -0
- package/dist/interface/math/quat/conjugate.d.ts +2 -0
- package/dist/interface/math/quat/conjugate.js +2 -0
- package/dist/interface/math/quat/conjugate.js.map +1 -0
- package/dist/interface/math/quat/distance.d.ts +2 -0
- package/dist/interface/math/quat/distance.js +4 -0
- package/dist/interface/math/quat/distance.js.map +1 -0
- package/dist/interface/math/quat/dot.d.ts +2 -0
- package/dist/interface/math/quat/dot.js +3 -0
- package/dist/interface/math/quat/dot.js.map +1 -0
- package/dist/interface/math/quat/from-axis-angle.d.ts +3 -0
- package/dist/interface/math/quat/from-axis-angle.js +13 -0
- package/dist/interface/math/quat/from-axis-angle.js.map +1 -0
- package/dist/interface/math/quat/from-euler.d.ts +2 -0
- package/dist/interface/math/quat/from-euler.js +15 -0
- package/dist/interface/math/quat/from-euler.js.map +1 -0
- package/dist/interface/math/quat/identity.d.ts +2 -0
- package/dist/interface/math/quat/identity.js +2 -0
- package/dist/interface/math/quat/identity.js.map +1 -0
- package/dist/interface/math/quat/index.d.ts +2 -0
- package/dist/interface/math/quat/index.js +2 -0
- package/dist/interface/math/quat/index.js.map +1 -0
- package/dist/interface/math/quat/inverse.d.ts +2 -0
- package/dist/interface/math/quat/inverse.js +10 -0
- package/dist/interface/math/quat/inverse.js.map +1 -0
- package/dist/interface/math/quat/length-squared.d.ts +2 -0
- package/dist/interface/math/quat/length-squared.js +2 -0
- package/dist/interface/math/quat/length-squared.js.map +1 -0
- package/dist/interface/math/quat/length.d.ts +2 -0
- package/dist/interface/math/quat/length.js +3 -0
- package/dist/interface/math/quat/length.js.map +1 -0
- package/dist/interface/math/quat/lerp.d.ts +2 -0
- package/dist/interface/math/quat/lerp.js +7 -0
- package/dist/interface/math/quat/lerp.js.map +1 -0
- package/dist/interface/math/quat/look-at.d.ts +3 -0
- package/dist/interface/math/quat/look-at.js +49 -0
- package/dist/interface/math/quat/look-at.js.map +1 -0
- package/dist/interface/math/quat/multiply.d.ts +2 -0
- package/dist/interface/math/quat/multiply.js +7 -0
- package/dist/interface/math/quat/multiply.js.map +1 -0
- package/dist/interface/math/quat/negate.d.ts +2 -0
- package/dist/interface/math/quat/negate.js +3 -0
- package/dist/interface/math/quat/negate.js.map +1 -0
- package/dist/interface/math/quat/normalize.d.ts +2 -0
- package/dist/interface/math/quat/normalize.js +7 -0
- package/dist/interface/math/quat/normalize.js.map +1 -0
- package/dist/interface/math/quat/public.d.ts +24 -0
- package/dist/interface/math/quat/public.js +25 -0
- package/dist/interface/math/quat/public.js.map +1 -0
- package/dist/interface/math/quat/rotate-vec3.d.ts +3 -0
- package/dist/interface/math/quat/rotate-vec3.js +14 -0
- package/dist/interface/math/quat/rotate-vec3.js.map +1 -0
- package/dist/interface/math/quat/scale.d.ts +2 -0
- package/dist/interface/math/quat/scale.js +3 -0
- package/dist/interface/math/quat/scale.js.map +1 -0
- package/dist/interface/math/quat/schema.d.ts +9 -0
- package/dist/interface/math/quat/schema.js +3 -0
- package/dist/interface/math/quat/schema.js.map +1 -0
- package/dist/interface/math/quat/slerp.d.ts +2 -0
- package/dist/interface/math/quat/slerp.js +21 -0
- package/dist/interface/math/quat/slerp.js.map +1 -0
- package/dist/interface/math/quat/subtract.d.ts +2 -0
- package/dist/interface/math/quat/subtract.js +8 -0
- package/dist/interface/math/quat/subtract.js.map +1 -0
- package/dist/interface/math/quat/to-axis-angle.d.ts +6 -0
- package/dist/interface/math/quat/to-axis-angle.js +12 -0
- package/dist/interface/math/quat/to-axis-angle.js.map +1 -0
- package/dist/interface/math/quat/to-euler.d.ts +3 -0
- package/dist/interface/math/quat/to-euler.js +21 -0
- package/dist/interface/math/quat/to-euler.js.map +1 -0
- package/dist/interface/math/quat/to-mat4.d.ts +8 -0
- package/dist/interface/math/quat/to-mat4.js +24 -0
- package/dist/interface/math/quat/to-mat4.js.map +1 -0
- package/dist/interface/math/u32/count-leading-zeros.d.ts +2 -0
- package/dist/interface/math/u32/count-leading-zeros.js +3 -0
- package/dist/interface/math/u32/count-leading-zeros.js.map +1 -0
- package/dist/interface/math/u32/count-one-bits.d.ts +2 -0
- package/dist/interface/math/u32/count-one-bits.js +9 -0
- package/dist/interface/math/u32/count-one-bits.js.map +1 -0
- package/dist/interface/math/u32/count-trailing-zeros.d.ts +2 -0
- package/dist/interface/math/u32/count-trailing-zeros.js +6 -0
- package/dist/interface/math/u32/count-trailing-zeros.js.map +1 -0
- package/dist/interface/math/u32/index.d.ts +3 -0
- package/dist/interface/math/u32/index.js +2 -0
- package/dist/interface/math/u32/index.js.map +1 -0
- package/dist/interface/math/u32/public.d.ts +6 -0
- package/dist/interface/math/u32/public.js +7 -0
- package/dist/interface/math/u32/public.js.map +1 -0
- package/dist/interface/math/u32/reverse-bits.d.ts +2 -0
- package/dist/interface/math/u32/reverse-bits.js +10 -0
- package/dist/interface/math/u32/reverse-bits.js.map +1 -0
- package/dist/interface/math/u32/schema.d.ts +5 -0
- package/dist/interface/math/u32/schema.js +2 -0
- package/dist/interface/math/u32/schema.js.map +1 -0
- package/dist/interface/math/u32/shift-right.d.ts +2 -0
- package/dist/interface/math/u32/shift-right.js +2 -0
- package/dist/interface/math/u32/shift-right.js.map +1 -0
- package/dist/interface/math/vec2/f32/abs.d.ts +2 -0
- package/dist/interface/math/vec2/f32/abs.js +3 -0
- package/dist/interface/math/vec2/f32/abs.js.map +1 -0
- package/dist/interface/math/vec2/f32/acos.d.ts +2 -0
- package/dist/interface/math/vec2/f32/acos.js +3 -0
- package/dist/interface/math/vec2/f32/acos.js.map +1 -0
- package/dist/interface/math/vec2/f32/acosh.d.ts +2 -0
- package/dist/interface/math/vec2/f32/acosh.js +3 -0
- package/dist/interface/math/vec2/f32/acosh.js.map +1 -0
- package/dist/interface/math/vec2/f32/add.d.ts +2 -0
- package/dist/interface/math/vec2/f32/add.js +3 -0
- package/dist/interface/math/vec2/f32/add.js.map +1 -0
- package/dist/interface/math/vec2/f32/asin.d.ts +2 -0
- package/dist/interface/math/vec2/f32/asin.js +3 -0
- package/dist/interface/math/vec2/f32/asin.js.map +1 -0
- package/dist/interface/math/vec2/f32/asinh.d.ts +2 -0
- package/dist/interface/math/vec2/f32/asinh.js +3 -0
- package/dist/interface/math/vec2/f32/asinh.js.map +1 -0
- package/dist/interface/math/vec2/f32/atan.d.ts +2 -0
- package/dist/interface/math/vec2/f32/atan.js +3 -0
- package/dist/interface/math/vec2/f32/atan.js.map +1 -0
- package/dist/interface/math/vec2/f32/atanh.d.ts +2 -0
- package/dist/interface/math/vec2/f32/atanh.js +3 -0
- package/dist/interface/math/vec2/f32/atanh.js.map +1 -0
- package/dist/interface/math/vec2/f32/ceil.d.ts +2 -0
- package/dist/interface/math/vec2/f32/ceil.js +3 -0
- package/dist/interface/math/vec2/f32/ceil.js.map +1 -0
- package/dist/interface/math/vec2/f32/clamp.d.ts +2 -0
- package/dist/interface/math/vec2/f32/clamp.js +5 -0
- package/dist/interface/math/vec2/f32/clamp.js.map +1 -0
- package/dist/interface/math/vec2/f32/cos.d.ts +2 -0
- package/dist/interface/math/vec2/f32/cos.js +3 -0
- package/dist/interface/math/vec2/f32/cos.js.map +1 -0
- package/dist/interface/math/vec2/f32/cosh.d.ts +2 -0
- package/dist/interface/math/vec2/f32/cosh.js +3 -0
- package/dist/interface/math/vec2/f32/cosh.js.map +1 -0
- package/dist/interface/math/vec2/f32/distance.d.ts +2 -0
- package/dist/interface/math/vec2/f32/distance.js +5 -0
- package/dist/interface/math/vec2/f32/distance.js.map +1 -0
- package/dist/interface/math/vec2/f32/dot.d.ts +2 -0
- package/dist/interface/math/vec2/f32/dot.js +3 -0
- package/dist/interface/math/vec2/f32/dot.js.map +1 -0
- package/dist/interface/math/vec2/f32/equals.d.ts +2 -0
- package/dist/interface/math/vec2/f32/equals.js +2 -0
- package/dist/interface/math/vec2/f32/equals.js.map +1 -0
- package/dist/interface/math/vec2/f32/exp.d.ts +2 -0
- package/dist/interface/math/vec2/f32/exp.js +3 -0
- package/dist/interface/math/vec2/f32/exp.js.map +1 -0
- package/dist/interface/math/vec2/f32/exp2.d.ts +2 -0
- package/dist/interface/math/vec2/f32/exp2.js +3 -0
- package/dist/interface/math/vec2/f32/exp2.js.map +1 -0
- package/dist/interface/math/vec2/f32/f32.d.ts +2 -0
- package/dist/interface/math/vec2/f32/f32.js +2 -0
- package/dist/interface/math/vec2/f32/f32.js.map +1 -0
- package/dist/interface/math/vec2/f32/faceforward.d.ts +2 -0
- package/dist/interface/math/vec2/f32/faceforward.js +5 -0
- package/dist/interface/math/vec2/f32/faceforward.js.map +1 -0
- package/dist/interface/math/vec2/f32/floor.d.ts +2 -0
- package/dist/interface/math/vec2/f32/floor.js +3 -0
- package/dist/interface/math/vec2/f32/floor.js.map +1 -0
- package/dist/interface/math/vec2/f32/fract.d.ts +2 -0
- package/dist/interface/math/vec2/f32/fract.js +3 -0
- package/dist/interface/math/vec2/f32/fract.js.map +1 -0
- package/dist/interface/math/vec2/f32/length.d.ts +2 -0
- package/dist/interface/math/vec2/f32/length.js +3 -0
- package/dist/interface/math/vec2/f32/length.js.map +1 -0
- package/dist/interface/math/vec2/f32/log.d.ts +2 -0
- package/dist/interface/math/vec2/f32/log.js +3 -0
- package/dist/interface/math/vec2/f32/log.js.map +1 -0
- package/dist/interface/math/vec2/f32/log2.d.ts +2 -0
- package/dist/interface/math/vec2/f32/log2.js +3 -0
- package/dist/interface/math/vec2/f32/log2.js.map +1 -0
- package/dist/interface/math/vec2/f32/max.d.ts +2 -0
- package/dist/interface/math/vec2/f32/max.js +3 -0
- package/dist/interface/math/vec2/f32/max.js.map +1 -0
- package/dist/interface/math/vec2/f32/min.d.ts +2 -0
- package/dist/interface/math/vec2/f32/min.js +3 -0
- package/dist/interface/math/vec2/f32/min.js.map +1 -0
- package/dist/interface/math/vec2/f32/mix.d.ts +2 -0
- package/dist/interface/math/vec2/f32/mix.js +6 -0
- package/dist/interface/math/vec2/f32/mix.js.map +1 -0
- package/dist/interface/math/vec2/f32/mod.d.ts +2 -0
- package/dist/interface/math/vec2/f32/mod.js +2 -0
- package/dist/interface/math/vec2/f32/mod.js.map +1 -0
- package/dist/interface/math/vec2/f32/modf.d.ts +5 -0
- package/dist/interface/math/vec2/f32/modf.js +5 -0
- package/dist/interface/math/vec2/f32/modf.js.map +1 -0
- package/dist/interface/math/vec2/f32/negate.d.ts +2 -0
- package/dist/interface/math/vec2/f32/negate.js +3 -0
- package/dist/interface/math/vec2/f32/negate.js.map +1 -0
- package/dist/interface/math/vec2/f32/normalize.d.ts +2 -0
- package/dist/interface/math/vec2/f32/normalize.js +5 -0
- package/dist/interface/math/vec2/f32/normalize.js.map +1 -0
- package/dist/interface/math/vec2/f32/pow.d.ts +3 -0
- package/dist/interface/math/vec2/f32/pow.js +7 -0
- package/dist/interface/math/vec2/f32/pow.js.map +1 -0
- package/dist/interface/math/vec2/f32/public.d.ts +47 -0
- package/dist/interface/math/vec2/f32/public.js +48 -0
- package/dist/interface/math/vec2/f32/public.js.map +1 -0
- package/dist/interface/math/vec2/f32/reflect.d.ts +2 -0
- package/dist/interface/math/vec2/f32/reflect.js +9 -0
- package/dist/interface/math/vec2/f32/reflect.js.map +1 -0
- package/dist/interface/math/vec2/f32/refract.d.ts +2 -0
- package/dist/interface/math/vec2/f32/refract.js +14 -0
- package/dist/interface/math/vec2/f32/refract.js.map +1 -0
- package/dist/interface/math/vec2/f32/round.d.ts +2 -0
- package/dist/interface/math/vec2/f32/round.js +4 -0
- package/dist/interface/math/vec2/f32/round.js.map +1 -0
- package/dist/interface/math/vec2/f32/scale.d.ts +2 -0
- package/dist/interface/math/vec2/f32/scale.js +3 -0
- package/dist/interface/math/vec2/f32/scale.js.map +1 -0
- package/dist/interface/math/vec2/f32/schema.d.ts +9 -0
- package/dist/interface/math/vec2/f32/schema.js +3 -0
- package/dist/interface/math/vec2/f32/schema.js.map +1 -0
- package/dist/interface/math/vec2/f32/sign.d.ts +2 -0
- package/dist/interface/math/vec2/f32/sign.js +3 -0
- package/dist/interface/math/vec2/f32/sign.js.map +1 -0
- package/dist/interface/math/vec2/f32/sin.d.ts +2 -0
- package/dist/interface/math/vec2/f32/sin.js +3 -0
- package/dist/interface/math/vec2/f32/sin.js.map +1 -0
- package/dist/interface/math/vec2/f32/sinh.d.ts +2 -0
- package/dist/interface/math/vec2/f32/sinh.js +3 -0
- package/dist/interface/math/vec2/f32/sinh.js.map +1 -0
- package/dist/interface/math/vec2/f32/smoothstep.d.ts +2 -0
- package/dist/interface/math/vec2/f32/smoothstep.js +7 -0
- package/dist/interface/math/vec2/f32/smoothstep.js.map +1 -0
- package/dist/interface/math/vec2/f32/sqrt.d.ts +2 -0
- package/dist/interface/math/vec2/f32/sqrt.js +3 -0
- package/dist/interface/math/vec2/f32/sqrt.js.map +1 -0
- package/dist/interface/math/vec2/f32/step.d.ts +2 -0
- package/dist/interface/math/vec2/f32/step.js +6 -0
- package/dist/interface/math/vec2/f32/step.js.map +1 -0
- package/dist/interface/math/vec2/f32/subtract.d.ts +2 -0
- package/dist/interface/math/vec2/f32/subtract.js +3 -0
- package/dist/interface/math/vec2/f32/subtract.js.map +1 -0
- package/dist/interface/math/vec2/f32/tan.d.ts +2 -0
- package/dist/interface/math/vec2/f32/tan.js +3 -0
- package/dist/interface/math/vec2/f32/tan.js.map +1 -0
- package/dist/interface/math/vec2/f32/tanh.d.ts +2 -0
- package/dist/interface/math/vec2/f32/tanh.js +3 -0
- package/dist/interface/math/vec2/f32/tanh.js.map +1 -0
- package/dist/interface/math/vec2/f32/trunc.d.ts +2 -0
- package/dist/interface/math/vec2/f32/trunc.js +3 -0
- package/dist/interface/math/vec2/f32/trunc.js.map +1 -0
- package/dist/interface/math/vec2/f32/zero.d.ts +2 -0
- package/dist/interface/math/vec2/f32/zero.js +2 -0
- package/dist/interface/math/vec2/f32/zero.js.map +1 -0
- package/dist/interface/math/vec2/i32/abs.d.ts +2 -0
- package/dist/interface/math/vec2/i32/abs.js +3 -0
- package/dist/interface/math/vec2/i32/abs.js.map +1 -0
- package/dist/interface/math/vec2/i32/add.d.ts +2 -0
- package/dist/interface/math/vec2/i32/add.js +3 -0
- package/dist/interface/math/vec2/i32/add.js.map +1 -0
- package/dist/interface/math/vec2/i32/bitwise-and.d.ts +2 -0
- package/dist/interface/math/vec2/i32/bitwise-and.js +3 -0
- package/dist/interface/math/vec2/i32/bitwise-and.js.map +1 -0
- package/dist/interface/math/vec2/i32/bitwise-not.d.ts +2 -0
- package/dist/interface/math/vec2/i32/bitwise-not.js +3 -0
- package/dist/interface/math/vec2/i32/bitwise-not.js.map +1 -0
- package/dist/interface/math/vec2/i32/bitwise-or.d.ts +2 -0
- package/dist/interface/math/vec2/i32/bitwise-or.js +3 -0
- package/dist/interface/math/vec2/i32/bitwise-or.js.map +1 -0
- package/dist/interface/math/vec2/i32/bitwise-xor.d.ts +2 -0
- package/dist/interface/math/vec2/i32/bitwise-xor.js +3 -0
- package/dist/interface/math/vec2/i32/bitwise-xor.js.map +1 -0
- package/dist/interface/math/vec2/i32/clamp.d.ts +2 -0
- package/dist/interface/math/vec2/i32/clamp.js +5 -0
- package/dist/interface/math/vec2/i32/clamp.js.map +1 -0
- package/dist/interface/math/vec2/i32/count-leading-zeros.d.ts +2 -0
- package/dist/interface/math/vec2/i32/count-leading-zeros.js +7 -0
- package/dist/interface/math/vec2/i32/count-leading-zeros.js.map +1 -0
- package/dist/interface/math/vec2/i32/count-one-bits.d.ts +2 -0
- package/dist/interface/math/vec2/i32/count-one-bits.js +7 -0
- package/dist/interface/math/vec2/i32/count-one-bits.js.map +1 -0
- package/dist/interface/math/vec2/i32/count-trailing-zeros.d.ts +2 -0
- package/dist/interface/math/vec2/i32/count-trailing-zeros.js +7 -0
- package/dist/interface/math/vec2/i32/count-trailing-zeros.js.map +1 -0
- package/dist/interface/math/vec2/i32/equals.d.ts +2 -0
- package/dist/interface/math/vec2/i32/equals.js +2 -0
- package/dist/interface/math/vec2/i32/equals.js.map +1 -0
- package/dist/interface/math/vec2/i32/i32.d.ts +3 -0
- package/dist/interface/math/vec2/i32/i32.js +2 -0
- package/dist/interface/math/vec2/i32/i32.js.map +1 -0
- package/dist/interface/math/vec2/i32/max.d.ts +2 -0
- package/dist/interface/math/vec2/i32/max.js +3 -0
- package/dist/interface/math/vec2/i32/max.js.map +1 -0
- package/dist/interface/math/vec2/i32/min.d.ts +2 -0
- package/dist/interface/math/vec2/i32/min.js +3 -0
- package/dist/interface/math/vec2/i32/min.js.map +1 -0
- package/dist/interface/math/vec2/i32/negate.d.ts +2 -0
- package/dist/interface/math/vec2/i32/negate.js +3 -0
- package/dist/interface/math/vec2/i32/negate.js.map +1 -0
- package/dist/interface/math/vec2/i32/public.d.ts +21 -0
- package/dist/interface/math/vec2/i32/public.js +22 -0
- package/dist/interface/math/vec2/i32/public.js.map +1 -0
- package/dist/interface/math/vec2/i32/reverse-bits.d.ts +2 -0
- package/dist/interface/math/vec2/i32/reverse-bits.js +4 -0
- package/dist/interface/math/vec2/i32/reverse-bits.js.map +1 -0
- package/dist/interface/math/vec2/i32/scale.d.ts +3 -0
- package/dist/interface/math/vec2/i32/scale.js +3 -0
- package/dist/interface/math/vec2/i32/scale.js.map +1 -0
- package/dist/interface/math/vec2/i32/schema.d.ts +10 -0
- package/dist/interface/math/vec2/i32/schema.js +3 -0
- package/dist/interface/math/vec2/i32/schema.js.map +1 -0
- package/dist/interface/math/vec2/i32/shift-left.d.ts +2 -0
- package/dist/interface/math/vec2/i32/shift-left.js +2 -0
- package/dist/interface/math/vec2/i32/shift-left.js.map +1 -0
- package/dist/interface/math/vec2/i32/shift-right.d.ts +2 -0
- package/dist/interface/math/vec2/i32/shift-right.js +6 -0
- package/dist/interface/math/vec2/i32/shift-right.js.map +1 -0
- package/dist/interface/math/vec2/i32/subtract.d.ts +2 -0
- package/dist/interface/math/vec2/i32/subtract.js +3 -0
- package/dist/interface/math/vec2/i32/subtract.js.map +1 -0
- package/dist/interface/math/vec2/i32/zero.d.ts +2 -0
- package/dist/interface/math/vec2/i32/zero.js +2 -0
- package/dist/interface/math/vec2/i32/zero.js.map +1 -0
- package/dist/interface/math/vec2/index.d.ts +4 -0
- package/dist/interface/math/vec2/index.js +2 -0
- package/dist/interface/math/vec2/index.js.map +1 -0
- package/dist/interface/math/vec2/public.d.ts +4 -0
- package/dist/interface/math/vec2/public.js +5 -0
- package/dist/interface/math/vec2/public.js.map +1 -0
- package/dist/interface/math/vec2/u32/add.d.ts +2 -0
- package/dist/interface/math/vec2/u32/add.js +6 -0
- package/dist/interface/math/vec2/u32/add.js.map +1 -0
- package/dist/interface/math/vec2/u32/bitwise-and.d.ts +2 -0
- package/dist/interface/math/vec2/u32/bitwise-and.js +6 -0
- package/dist/interface/math/vec2/u32/bitwise-and.js.map +1 -0
- package/dist/interface/math/vec2/u32/bitwise-not.d.ts +2 -0
- package/dist/interface/math/vec2/u32/bitwise-not.js +3 -0
- package/dist/interface/math/vec2/u32/bitwise-not.js.map +1 -0
- package/dist/interface/math/vec2/u32/bitwise-or.d.ts +2 -0
- package/dist/interface/math/vec2/u32/bitwise-or.js +6 -0
- package/dist/interface/math/vec2/u32/bitwise-or.js.map +1 -0
- package/dist/interface/math/vec2/u32/bitwise-xor.d.ts +2 -0
- package/dist/interface/math/vec2/u32/bitwise-xor.js +6 -0
- package/dist/interface/math/vec2/u32/bitwise-xor.js.map +1 -0
- package/dist/interface/math/vec2/u32/clamp.d.ts +2 -0
- package/dist/interface/math/vec2/u32/clamp.js +5 -0
- package/dist/interface/math/vec2/u32/clamp.js.map +1 -0
- package/dist/interface/math/vec2/u32/count-leading-zeros.d.ts +2 -0
- package/dist/interface/math/vec2/u32/count-leading-zeros.js +7 -0
- package/dist/interface/math/vec2/u32/count-leading-zeros.js.map +1 -0
- package/dist/interface/math/vec2/u32/count-one-bits.d.ts +2 -0
- package/dist/interface/math/vec2/u32/count-one-bits.js +7 -0
- package/dist/interface/math/vec2/u32/count-one-bits.js.map +1 -0
- package/dist/interface/math/vec2/u32/count-trailing-zeros.d.ts +2 -0
- package/dist/interface/math/vec2/u32/count-trailing-zeros.js +7 -0
- package/dist/interface/math/vec2/u32/count-trailing-zeros.js.map +1 -0
- package/dist/interface/math/vec2/u32/equals.d.ts +2 -0
- package/dist/interface/math/vec2/u32/equals.js +2 -0
- package/dist/interface/math/vec2/u32/equals.js.map +1 -0
- package/dist/interface/math/vec2/u32/max.d.ts +2 -0
- package/dist/interface/math/vec2/u32/max.js +6 -0
- package/dist/interface/math/vec2/u32/max.js.map +1 -0
- package/dist/interface/math/vec2/u32/min.d.ts +2 -0
- package/dist/interface/math/vec2/u32/min.js +6 -0
- package/dist/interface/math/vec2/u32/min.js.map +1 -0
- package/dist/interface/math/vec2/u32/negate.d.ts +2 -0
- package/dist/interface/math/vec2/u32/negate.js +2 -0
- package/dist/interface/math/vec2/u32/negate.js.map +1 -0
- package/dist/interface/math/vec2/u32/public.d.ts +20 -0
- package/dist/interface/math/vec2/u32/public.js +21 -0
- package/dist/interface/math/vec2/u32/public.js.map +1 -0
- package/dist/interface/math/vec2/u32/reverse-bits.d.ts +2 -0
- package/dist/interface/math/vec2/u32/reverse-bits.js +7 -0
- package/dist/interface/math/vec2/u32/reverse-bits.js.map +1 -0
- package/dist/interface/math/vec2/u32/scale.d.ts +3 -0
- package/dist/interface/math/vec2/u32/scale.js +3 -0
- package/dist/interface/math/vec2/u32/scale.js.map +1 -0
- package/dist/interface/math/vec2/u32/schema.d.ts +10 -0
- package/dist/interface/math/vec2/u32/schema.js +3 -0
- package/dist/interface/math/vec2/u32/schema.js.map +1 -0
- package/dist/interface/math/vec2/u32/shift-left.d.ts +2 -0
- package/dist/interface/math/vec2/u32/shift-left.js +2 -0
- package/dist/interface/math/vec2/u32/shift-left.js.map +1 -0
- package/dist/interface/math/vec2/u32/shift-right.d.ts +2 -0
- package/dist/interface/math/vec2/u32/shift-right.js +6 -0
- package/dist/interface/math/vec2/u32/shift-right.js.map +1 -0
- package/dist/interface/math/vec2/u32/subtract.d.ts +2 -0
- package/dist/interface/math/vec2/u32/subtract.js +6 -0
- package/dist/interface/math/vec2/u32/subtract.js.map +1 -0
- package/dist/interface/math/vec2/u32/u32.d.ts +3 -0
- package/dist/interface/math/vec2/u32/u32.js +2 -0
- package/dist/interface/math/vec2/u32/u32.js.map +1 -0
- package/dist/interface/math/vec2/u32/zero.d.ts +2 -0
- package/dist/interface/math/vec2/u32/zero.js +2 -0
- package/dist/interface/math/vec2/u32/zero.js.map +1 -0
- package/dist/interface/math/vec3/f32/abs.d.ts +2 -0
- package/dist/interface/math/vec3/f32/abs.js +3 -0
- package/dist/interface/math/vec3/f32/abs.js.map +1 -0
- package/dist/interface/math/vec3/f32/acos.d.ts +2 -0
- package/dist/interface/math/vec3/f32/acos.js +3 -0
- package/dist/interface/math/vec3/f32/acos.js.map +1 -0
- package/dist/interface/math/vec3/f32/acosh.d.ts +2 -0
- package/dist/interface/math/vec3/f32/acosh.js +3 -0
- package/dist/interface/math/vec3/f32/acosh.js.map +1 -0
- package/dist/interface/math/vec3/f32/add.d.ts +2 -0
- package/dist/interface/math/vec3/f32/add.js +7 -0
- package/dist/interface/math/vec3/f32/add.js.map +1 -0
- package/dist/interface/math/vec3/f32/asin.d.ts +2 -0
- package/dist/interface/math/vec3/f32/asin.js +3 -0
- package/dist/interface/math/vec3/f32/asin.js.map +1 -0
- package/dist/interface/math/vec3/f32/asinh.d.ts +2 -0
- package/dist/interface/math/vec3/f32/asinh.js +3 -0
- package/dist/interface/math/vec3/f32/asinh.js.map +1 -0
- package/dist/interface/math/vec3/f32/atan.d.ts +2 -0
- package/dist/interface/math/vec3/f32/atan.js +3 -0
- package/dist/interface/math/vec3/f32/atan.js.map +1 -0
- package/dist/interface/math/vec3/f32/atanh.d.ts +2 -0
- package/dist/interface/math/vec3/f32/atanh.js +3 -0
- package/dist/interface/math/vec3/f32/atanh.js.map +1 -0
- package/dist/interface/math/vec3/f32/ceil.d.ts +2 -0
- package/dist/interface/math/vec3/f32/ceil.js +3 -0
- package/dist/interface/math/vec3/f32/ceil.js.map +1 -0
- package/dist/interface/math/vec3/f32/clamp.d.ts +2 -0
- package/dist/interface/math/vec3/f32/clamp.js +5 -0
- package/dist/interface/math/vec3/f32/clamp.js.map +1 -0
- package/dist/interface/math/vec3/f32/cos.d.ts +2 -0
- package/dist/interface/math/vec3/f32/cos.js +3 -0
- package/dist/interface/math/vec3/f32/cos.js.map +1 -0
- package/dist/interface/math/vec3/f32/cosh.d.ts +2 -0
- package/dist/interface/math/vec3/f32/cosh.js +3 -0
- package/dist/interface/math/vec3/f32/cosh.js.map +1 -0
- package/dist/interface/math/vec3/f32/cross.d.ts +2 -0
- package/dist/interface/math/vec3/f32/cross.js +7 -0
- package/dist/interface/math/vec3/f32/cross.js.map +1 -0
- package/dist/interface/math/vec3/f32/distance-squared.d.ts +2 -0
- package/dist/interface/math/vec3/f32/distance-squared.js +7 -0
- package/dist/interface/math/vec3/f32/distance-squared.js.map +1 -0
- package/dist/interface/math/vec3/f32/distance.d.ts +2 -0
- package/dist/interface/math/vec3/f32/distance.js +5 -0
- package/dist/interface/math/vec3/f32/distance.js.map +1 -0
- package/dist/interface/math/vec3/f32/dot.d.ts +2 -0
- package/dist/interface/math/vec3/f32/dot.js +3 -0
- package/dist/interface/math/vec3/f32/dot.js.map +1 -0
- package/dist/interface/math/vec3/f32/equals.d.ts +2 -0
- package/dist/interface/math/vec3/f32/equals.js +2 -0
- package/dist/interface/math/vec3/f32/equals.js.map +1 -0
- package/dist/interface/math/vec3/f32/exp.d.ts +2 -0
- package/dist/interface/math/vec3/f32/exp.js +3 -0
- package/dist/interface/math/vec3/f32/exp.js.map +1 -0
- package/dist/interface/math/vec3/f32/exp2.d.ts +2 -0
- package/dist/interface/math/vec3/f32/exp2.js +3 -0
- package/dist/interface/math/vec3/f32/exp2.js.map +1 -0
- package/dist/interface/math/vec3/f32/f32.d.ts +2 -0
- package/dist/interface/math/vec3/f32/f32.js +2 -0
- package/dist/interface/math/vec3/f32/f32.js.map +1 -0
- package/dist/interface/math/vec3/f32/faceforward.d.ts +2 -0
- package/dist/interface/math/vec3/f32/faceforward.js +5 -0
- package/dist/interface/math/vec3/f32/faceforward.js.map +1 -0
- package/dist/interface/math/vec3/f32/floor.d.ts +2 -0
- package/dist/interface/math/vec3/f32/floor.js +3 -0
- package/dist/interface/math/vec3/f32/floor.js.map +1 -0
- package/dist/interface/math/vec3/f32/fract.d.ts +2 -0
- package/dist/interface/math/vec3/f32/fract.js +7 -0
- package/dist/interface/math/vec3/f32/fract.js.map +1 -0
- package/dist/interface/math/vec3/f32/length-squared.d.ts +2 -0
- package/dist/interface/math/vec3/f32/length-squared.js +3 -0
- package/dist/interface/math/vec3/f32/length-squared.js.map +1 -0
- package/dist/interface/math/vec3/f32/length.d.ts +2 -0
- package/dist/interface/math/vec3/f32/length.js +3 -0
- package/dist/interface/math/vec3/f32/length.js.map +1 -0
- package/dist/interface/math/vec3/f32/log.d.ts +2 -0
- package/dist/interface/math/vec3/f32/log.js +3 -0
- package/dist/interface/math/vec3/f32/log.js.map +1 -0
- package/dist/interface/math/vec3/f32/log2.d.ts +2 -0
- package/dist/interface/math/vec3/f32/log2.js +3 -0
- package/dist/interface/math/vec3/f32/log2.js.map +1 -0
- package/dist/interface/math/vec3/f32/max.d.ts +2 -0
- package/dist/interface/math/vec3/f32/max.js +7 -0
- package/dist/interface/math/vec3/f32/max.js.map +1 -0
- package/dist/interface/math/vec3/f32/min.d.ts +2 -0
- package/dist/interface/math/vec3/f32/min.js +7 -0
- package/dist/interface/math/vec3/f32/min.js.map +1 -0
- package/dist/interface/math/vec3/f32/mix.d.ts +2 -0
- package/dist/interface/math/vec3/f32/mix.js +7 -0
- package/dist/interface/math/vec3/f32/mix.js.map +1 -0
- package/dist/interface/math/vec3/f32/mod.d.ts +2 -0
- package/dist/interface/math/vec3/f32/mod.js +6 -0
- package/dist/interface/math/vec3/f32/mod.js.map +1 -0
- package/dist/interface/math/vec3/f32/modf.d.ts +5 -0
- package/dist/interface/math/vec3/f32/modf.js +5 -0
- package/dist/interface/math/vec3/f32/modf.js.map +1 -0
- package/dist/interface/math/vec3/f32/multiply.d.ts +5 -0
- package/dist/interface/math/vec3/f32/multiply.js +10 -0
- package/dist/interface/math/vec3/f32/multiply.js.map +1 -0
- package/dist/interface/math/vec3/f32/negate.d.ts +2 -0
- package/dist/interface/math/vec3/f32/negate.js +3 -0
- package/dist/interface/math/vec3/f32/negate.js.map +1 -0
- package/dist/interface/math/vec3/f32/normalize.d.ts +2 -0
- package/dist/interface/math/vec3/f32/normalize.js +5 -0
- package/dist/interface/math/vec3/f32/normalize.js.map +1 -0
- package/dist/interface/math/vec3/f32/one.d.ts +2 -0
- package/dist/interface/math/vec3/f32/one.js +2 -0
- package/dist/interface/math/vec3/f32/one.js.map +1 -0
- package/dist/interface/math/vec3/f32/pow.d.ts +3 -0
- package/dist/interface/math/vec3/f32/pow.js +8 -0
- package/dist/interface/math/vec3/f32/pow.js.map +1 -0
- package/dist/interface/math/vec3/f32/public.d.ts +53 -0
- package/dist/interface/math/vec3/f32/public.js +54 -0
- package/dist/interface/math/vec3/f32/public.js.map +1 -0
- package/dist/interface/math/vec3/f32/random.d.ts +2 -0
- package/dist/interface/math/vec3/f32/random.js +4 -0
- package/dist/interface/math/vec3/f32/random.js.map +1 -0
- package/dist/interface/math/vec3/f32/reflect.d.ts +2 -0
- package/dist/interface/math/vec3/f32/reflect.js +9 -0
- package/dist/interface/math/vec3/f32/reflect.js.map +1 -0
- package/dist/interface/math/vec3/f32/refract.d.ts +2 -0
- package/dist/interface/math/vec3/f32/refract.js +14 -0
- package/dist/interface/math/vec3/f32/refract.js.map +1 -0
- package/dist/interface/math/vec3/f32/round.d.ts +2 -0
- package/dist/interface/math/vec3/f32/round.js +8 -0
- package/dist/interface/math/vec3/f32/round.js.map +1 -0
- package/dist/interface/math/vec3/f32/scale.d.ts +2 -0
- package/dist/interface/math/vec3/f32/scale.js +3 -0
- package/dist/interface/math/vec3/f32/scale.js.map +1 -0
- package/dist/interface/math/vec3/f32/schema.d.ts +9 -0
- package/dist/interface/math/vec3/f32/schema.js +3 -0
- package/dist/interface/math/vec3/f32/schema.js.map +1 -0
- package/dist/interface/math/vec3/f32/sign.d.ts +2 -0
- package/dist/interface/math/vec3/f32/sign.js +3 -0
- package/dist/interface/math/vec3/f32/sign.js.map +1 -0
- package/dist/interface/math/vec3/f32/sin.d.ts +2 -0
- package/dist/interface/math/vec3/f32/sin.js +3 -0
- package/dist/interface/math/vec3/f32/sin.js.map +1 -0
- package/dist/interface/math/vec3/f32/sinh.d.ts +2 -0
- package/dist/interface/math/vec3/f32/sinh.js +3 -0
- package/dist/interface/math/vec3/f32/sinh.js.map +1 -0
- package/dist/interface/math/vec3/f32/smoothstep.d.ts +2 -0
- package/dist/interface/math/vec3/f32/smoothstep.js +12 -0
- package/dist/interface/math/vec3/f32/smoothstep.js.map +1 -0
- package/dist/interface/math/vec3/f32/sqrt.d.ts +2 -0
- package/dist/interface/math/vec3/f32/sqrt.js +3 -0
- package/dist/interface/math/vec3/f32/sqrt.js.map +1 -0
- package/dist/interface/math/vec3/f32/step.d.ts +2 -0
- package/dist/interface/math/vec3/f32/step.js +7 -0
- package/dist/interface/math/vec3/f32/step.js.map +1 -0
- package/dist/interface/math/vec3/f32/subtract.d.ts +2 -0
- package/dist/interface/math/vec3/f32/subtract.js +7 -0
- package/dist/interface/math/vec3/f32/subtract.js.map +1 -0
- package/dist/interface/math/vec3/f32/tan.d.ts +2 -0
- package/dist/interface/math/vec3/f32/tan.js +3 -0
- package/dist/interface/math/vec3/f32/tan.js.map +1 -0
- package/dist/interface/math/vec3/f32/tanh.d.ts +2 -0
- package/dist/interface/math/vec3/f32/tanh.js +3 -0
- package/dist/interface/math/vec3/f32/tanh.js.map +1 -0
- package/dist/interface/math/vec3/f32/trunc.d.ts +2 -0
- package/dist/interface/math/vec3/f32/trunc.js +3 -0
- package/dist/interface/math/vec3/f32/trunc.js.map +1 -0
- package/dist/interface/math/vec3/f32/zero.d.ts +2 -0
- package/dist/interface/math/vec3/f32/zero.js +2 -0
- package/dist/interface/math/vec3/f32/zero.js.map +1 -0
- package/dist/interface/math/vec3/i32/abs.d.ts +2 -0
- package/dist/interface/math/vec3/i32/abs.js +7 -0
- package/dist/interface/math/vec3/i32/abs.js.map +1 -0
- package/dist/interface/math/vec3/i32/add.d.ts +2 -0
- package/dist/interface/math/vec3/i32/add.js +7 -0
- package/dist/interface/math/vec3/i32/add.js.map +1 -0
- package/dist/interface/math/vec3/i32/bitwise-and.d.ts +2 -0
- package/dist/interface/math/vec3/i32/bitwise-and.js +7 -0
- package/dist/interface/math/vec3/i32/bitwise-and.js.map +1 -0
- package/dist/interface/math/vec3/i32/bitwise-not.d.ts +2 -0
- package/dist/interface/math/vec3/i32/bitwise-not.js +3 -0
- package/dist/interface/math/vec3/i32/bitwise-not.js.map +1 -0
- package/dist/interface/math/vec3/i32/bitwise-or.d.ts +2 -0
- package/dist/interface/math/vec3/i32/bitwise-or.js +7 -0
- package/dist/interface/math/vec3/i32/bitwise-or.js.map +1 -0
- package/dist/interface/math/vec3/i32/bitwise-xor.d.ts +2 -0
- package/dist/interface/math/vec3/i32/bitwise-xor.js +7 -0
- package/dist/interface/math/vec3/i32/bitwise-xor.js.map +1 -0
- package/dist/interface/math/vec3/i32/clamp.d.ts +2 -0
- package/dist/interface/math/vec3/i32/clamp.js +5 -0
- package/dist/interface/math/vec3/i32/clamp.js.map +1 -0
- package/dist/interface/math/vec3/i32/count-leading-zeros.d.ts +2 -0
- package/dist/interface/math/vec3/i32/count-leading-zeros.js +8 -0
- package/dist/interface/math/vec3/i32/count-leading-zeros.js.map +1 -0
- package/dist/interface/math/vec3/i32/count-one-bits.d.ts +2 -0
- package/dist/interface/math/vec3/i32/count-one-bits.js +8 -0
- package/dist/interface/math/vec3/i32/count-one-bits.js.map +1 -0
- package/dist/interface/math/vec3/i32/count-trailing-zeros.d.ts +2 -0
- package/dist/interface/math/vec3/i32/count-trailing-zeros.js +8 -0
- package/dist/interface/math/vec3/i32/count-trailing-zeros.js.map +1 -0
- package/dist/interface/math/vec3/i32/equals.d.ts +2 -0
- package/dist/interface/math/vec3/i32/equals.js +2 -0
- package/dist/interface/math/vec3/i32/equals.js.map +1 -0
- package/dist/interface/math/vec3/i32/i32.d.ts +3 -0
- package/dist/interface/math/vec3/i32/i32.js +2 -0
- package/dist/interface/math/vec3/i32/i32.js.map +1 -0
- package/dist/interface/math/vec3/i32/max.d.ts +2 -0
- package/dist/interface/math/vec3/i32/max.js +7 -0
- package/dist/interface/math/vec3/i32/max.js.map +1 -0
- package/dist/interface/math/vec3/i32/min.d.ts +2 -0
- package/dist/interface/math/vec3/i32/min.js +7 -0
- package/dist/interface/math/vec3/i32/min.js.map +1 -0
- package/dist/interface/math/vec3/i32/multiply.d.ts +2 -0
- package/dist/interface/math/vec3/i32/multiply.js +7 -0
- package/dist/interface/math/vec3/i32/multiply.js.map +1 -0
- package/dist/interface/math/vec3/i32/negate.d.ts +2 -0
- package/dist/interface/math/vec3/i32/negate.js +7 -0
- package/dist/interface/math/vec3/i32/negate.js.map +1 -0
- package/dist/interface/math/vec3/i32/one.d.ts +2 -0
- package/dist/interface/math/vec3/i32/one.js +2 -0
- package/dist/interface/math/vec3/i32/one.js.map +1 -0
- package/dist/interface/math/vec3/i32/public.d.ts +23 -0
- package/dist/interface/math/vec3/i32/public.js +24 -0
- package/dist/interface/math/vec3/i32/public.js.map +1 -0
- package/dist/interface/math/vec3/i32/reverse-bits.d.ts +2 -0
- package/dist/interface/math/vec3/i32/reverse-bits.js +8 -0
- package/dist/interface/math/vec3/i32/reverse-bits.js.map +1 -0
- package/dist/interface/math/vec3/i32/scale.d.ts +3 -0
- package/dist/interface/math/vec3/i32/scale.js +7 -0
- package/dist/interface/math/vec3/i32/scale.js.map +1 -0
- package/dist/interface/math/vec3/i32/schema.d.ts +10 -0
- package/dist/interface/math/vec3/i32/schema.js +3 -0
- package/dist/interface/math/vec3/i32/schema.js.map +1 -0
- package/dist/interface/math/vec3/i32/shift-left.d.ts +2 -0
- package/dist/interface/math/vec3/i32/shift-left.js +2 -0
- package/dist/interface/math/vec3/i32/shift-left.js.map +1 -0
- package/dist/interface/math/vec3/i32/shift-right.d.ts +2 -0
- package/dist/interface/math/vec3/i32/shift-right.js +7 -0
- package/dist/interface/math/vec3/i32/shift-right.js.map +1 -0
- package/dist/interface/math/vec3/i32/subtract.d.ts +2 -0
- package/dist/interface/math/vec3/i32/subtract.js +7 -0
- package/dist/interface/math/vec3/i32/subtract.js.map +1 -0
- package/dist/interface/math/vec3/i32/zero.d.ts +2 -0
- package/dist/interface/math/vec3/i32/zero.js +2 -0
- package/dist/interface/math/vec3/i32/zero.js.map +1 -0
- package/dist/interface/math/vec3/index.d.ts +4 -0
- package/dist/interface/math/vec3/index.js +2 -0
- package/dist/interface/math/vec3/index.js.map +1 -0
- package/dist/interface/math/vec3/public.d.ts +4 -0
- package/dist/interface/math/vec3/public.js +5 -0
- package/dist/interface/math/vec3/public.js.map +1 -0
- package/dist/interface/math/vec3/u32/add.d.ts +2 -0
- package/dist/interface/math/vec3/u32/add.js +7 -0
- package/dist/interface/math/vec3/u32/add.js.map +1 -0
- package/dist/interface/math/vec3/u32/bitwise-and.d.ts +2 -0
- package/dist/interface/math/vec3/u32/bitwise-and.js +7 -0
- package/dist/interface/math/vec3/u32/bitwise-and.js.map +1 -0
- package/dist/interface/math/vec3/u32/bitwise-not.d.ts +2 -0
- package/dist/interface/math/vec3/u32/bitwise-not.js +3 -0
- package/dist/interface/math/vec3/u32/bitwise-not.js.map +1 -0
- package/dist/interface/math/vec3/u32/bitwise-or.d.ts +2 -0
- package/dist/interface/math/vec3/u32/bitwise-or.js +7 -0
- package/dist/interface/math/vec3/u32/bitwise-or.js.map +1 -0
- package/dist/interface/math/vec3/u32/bitwise-xor.d.ts +2 -0
- package/dist/interface/math/vec3/u32/bitwise-xor.js +7 -0
- package/dist/interface/math/vec3/u32/bitwise-xor.js.map +1 -0
- package/dist/interface/math/vec3/u32/clamp.d.ts +2 -0
- package/dist/interface/math/vec3/u32/clamp.js +5 -0
- package/dist/interface/math/vec3/u32/clamp.js.map +1 -0
- package/dist/interface/math/vec3/u32/count-leading-zeros.d.ts +2 -0
- package/dist/interface/math/vec3/u32/count-leading-zeros.js +8 -0
- package/dist/interface/math/vec3/u32/count-leading-zeros.js.map +1 -0
- package/dist/interface/math/vec3/u32/count-one-bits.d.ts +2 -0
- package/dist/interface/math/vec3/u32/count-one-bits.js +8 -0
- package/dist/interface/math/vec3/u32/count-one-bits.js.map +1 -0
- package/dist/interface/math/vec3/u32/count-trailing-zeros.d.ts +2 -0
- package/dist/interface/math/vec3/u32/count-trailing-zeros.js +8 -0
- package/dist/interface/math/vec3/u32/count-trailing-zeros.js.map +1 -0
- package/dist/interface/math/vec3/u32/equals.d.ts +2 -0
- package/dist/interface/math/vec3/u32/equals.js +2 -0
- package/dist/interface/math/vec3/u32/equals.js.map +1 -0
- package/dist/interface/math/vec3/u32/max.d.ts +2 -0
- package/dist/interface/math/vec3/u32/max.js +7 -0
- package/dist/interface/math/vec3/u32/max.js.map +1 -0
- package/dist/interface/math/vec3/u32/min.d.ts +2 -0
- package/dist/interface/math/vec3/u32/min.js +7 -0
- package/dist/interface/math/vec3/u32/min.js.map +1 -0
- package/dist/interface/math/vec3/u32/multiply.d.ts +2 -0
- package/dist/interface/math/vec3/u32/multiply.js +7 -0
- package/dist/interface/math/vec3/u32/multiply.js.map +1 -0
- package/dist/interface/math/vec3/u32/negate.d.ts +2 -0
- package/dist/interface/math/vec3/u32/negate.js +2 -0
- package/dist/interface/math/vec3/u32/negate.js.map +1 -0
- package/dist/interface/math/vec3/u32/one.d.ts +2 -0
- package/dist/interface/math/vec3/u32/one.js +2 -0
- package/dist/interface/math/vec3/u32/one.js.map +1 -0
- package/dist/interface/math/vec3/u32/public.d.ts +23 -0
- package/dist/interface/math/vec3/u32/public.js +24 -0
- package/dist/interface/math/vec3/u32/public.js.map +1 -0
- package/dist/interface/math/vec3/u32/reverse-bits.d.ts +2 -0
- package/dist/interface/math/vec3/u32/reverse-bits.js +8 -0
- package/dist/interface/math/vec3/u32/reverse-bits.js.map +1 -0
- package/dist/interface/math/vec3/u32/scale.d.ts +3 -0
- package/dist/interface/math/vec3/u32/scale.js +7 -0
- package/dist/interface/math/vec3/u32/scale.js.map +1 -0
- package/dist/interface/math/vec3/u32/schema.d.ts +10 -0
- package/dist/interface/math/vec3/u32/schema.js +3 -0
- package/dist/interface/math/vec3/u32/schema.js.map +1 -0
- package/dist/interface/math/vec3/u32/shift-left.d.ts +2 -0
- package/dist/interface/math/vec3/u32/shift-left.js +6 -0
- package/dist/interface/math/vec3/u32/shift-left.js.map +1 -0
- package/dist/interface/math/vec3/u32/shift-right.d.ts +2 -0
- package/dist/interface/math/vec3/u32/shift-right.js +7 -0
- package/dist/interface/math/vec3/u32/shift-right.js.map +1 -0
- package/dist/interface/math/vec3/u32/subtract.d.ts +2 -0
- package/dist/interface/math/vec3/u32/subtract.js +7 -0
- package/dist/interface/math/vec3/u32/subtract.js.map +1 -0
- package/dist/interface/math/vec3/u32/u32.d.ts +3 -0
- package/dist/interface/math/vec3/u32/u32.js +2 -0
- package/dist/interface/math/vec3/u32/u32.js.map +1 -0
- package/dist/interface/math/vec3/u32/volume.d.ts +2 -0
- package/dist/interface/math/vec3/u32/volume.js +2 -0
- package/dist/interface/math/vec3/u32/volume.js.map +1 -0
- package/dist/interface/math/vec3/u32/zero.d.ts +2 -0
- package/dist/interface/math/vec3/u32/zero.js +2 -0
- package/dist/interface/math/vec3/u32/zero.js.map +1 -0
- package/dist/interface/math/vec4/f32/abs.d.ts +2 -0
- package/dist/interface/math/vec4/f32/abs.js +3 -0
- package/dist/interface/math/vec4/f32/abs.js.map +1 -0
- package/dist/interface/math/vec4/f32/acos.d.ts +2 -0
- package/dist/interface/math/vec4/f32/acos.js +3 -0
- package/dist/interface/math/vec4/f32/acos.js.map +1 -0
- package/dist/interface/math/vec4/f32/acosh.d.ts +2 -0
- package/dist/interface/math/vec4/f32/acosh.js +3 -0
- package/dist/interface/math/vec4/f32/acosh.js.map +1 -0
- package/dist/interface/math/vec4/f32/add.d.ts +2 -0
- package/dist/interface/math/vec4/f32/add.js +8 -0
- package/dist/interface/math/vec4/f32/add.js.map +1 -0
- package/dist/interface/math/vec4/f32/asin.d.ts +2 -0
- package/dist/interface/math/vec4/f32/asin.js +3 -0
- package/dist/interface/math/vec4/f32/asin.js.map +1 -0
- package/dist/interface/math/vec4/f32/asinh.d.ts +2 -0
- package/dist/interface/math/vec4/f32/asinh.js +3 -0
- package/dist/interface/math/vec4/f32/asinh.js.map +1 -0
- package/dist/interface/math/vec4/f32/atan.d.ts +2 -0
- package/dist/interface/math/vec4/f32/atan.js +3 -0
- package/dist/interface/math/vec4/f32/atan.js.map +1 -0
- package/dist/interface/math/vec4/f32/atanh.d.ts +2 -0
- package/dist/interface/math/vec4/f32/atanh.js +3 -0
- package/dist/interface/math/vec4/f32/atanh.js.map +1 -0
- package/dist/interface/math/vec4/f32/ceil.d.ts +2 -0
- package/dist/interface/math/vec4/f32/ceil.js +3 -0
- package/dist/interface/math/vec4/f32/ceil.js.map +1 -0
- package/dist/interface/math/vec4/f32/clamp.d.ts +2 -0
- package/dist/interface/math/vec4/f32/clamp.js +5 -0
- package/dist/interface/math/vec4/f32/clamp.js.map +1 -0
- package/dist/interface/math/vec4/f32/cos.d.ts +2 -0
- package/dist/interface/math/vec4/f32/cos.js +3 -0
- package/dist/interface/math/vec4/f32/cos.js.map +1 -0
- package/dist/interface/math/vec4/f32/cosh.d.ts +2 -0
- package/dist/interface/math/vec4/f32/cosh.js +3 -0
- package/dist/interface/math/vec4/f32/cosh.js.map +1 -0
- package/dist/interface/math/vec4/f32/distance.d.ts +2 -0
- package/dist/interface/math/vec4/f32/distance.js +5 -0
- package/dist/interface/math/vec4/f32/distance.js.map +1 -0
- package/dist/interface/math/vec4/f32/dot.d.ts +2 -0
- package/dist/interface/math/vec4/f32/dot.js +3 -0
- package/dist/interface/math/vec4/f32/dot.js.map +1 -0
- package/dist/interface/math/vec4/f32/exp.d.ts +2 -0
- package/dist/interface/math/vec4/f32/exp.js +3 -0
- package/dist/interface/math/vec4/f32/exp.js.map +1 -0
- package/dist/interface/math/vec4/f32/exp2.d.ts +2 -0
- package/dist/interface/math/vec4/f32/exp2.js +3 -0
- package/dist/interface/math/vec4/f32/exp2.js.map +1 -0
- package/dist/interface/math/vec4/f32/f32.d.ts +2 -0
- package/dist/interface/math/vec4/f32/f32.js +2 -0
- package/dist/interface/math/vec4/f32/f32.js.map +1 -0
- package/dist/interface/math/vec4/f32/faceforward.d.ts +2 -0
- package/dist/interface/math/vec4/f32/faceforward.js +5 -0
- package/dist/interface/math/vec4/f32/faceforward.js.map +1 -0
- package/dist/interface/math/vec4/f32/floor.d.ts +2 -0
- package/dist/interface/math/vec4/f32/floor.js +3 -0
- package/dist/interface/math/vec4/f32/floor.js.map +1 -0
- package/dist/interface/math/vec4/f32/fract.d.ts +2 -0
- package/dist/interface/math/vec4/f32/fract.js +8 -0
- package/dist/interface/math/vec4/f32/fract.js.map +1 -0
- package/dist/interface/math/vec4/f32/length.d.ts +2 -0
- package/dist/interface/math/vec4/f32/length.js +3 -0
- package/dist/interface/math/vec4/f32/length.js.map +1 -0
- package/dist/interface/math/vec4/f32/log.d.ts +2 -0
- package/dist/interface/math/vec4/f32/log.js +3 -0
- package/dist/interface/math/vec4/f32/log.js.map +1 -0
- package/dist/interface/math/vec4/f32/log2.d.ts +2 -0
- package/dist/interface/math/vec4/f32/log2.js +3 -0
- package/dist/interface/math/vec4/f32/log2.js.map +1 -0
- package/dist/interface/math/vec4/f32/max.d.ts +2 -0
- package/dist/interface/math/vec4/f32/max.js +8 -0
- package/dist/interface/math/vec4/f32/max.js.map +1 -0
- package/dist/interface/math/vec4/f32/min.d.ts +2 -0
- package/dist/interface/math/vec4/f32/min.js +8 -0
- package/dist/interface/math/vec4/f32/min.js.map +1 -0
- package/dist/interface/math/vec4/f32/mix.d.ts +2 -0
- package/dist/interface/math/vec4/f32/mix.js +8 -0
- package/dist/interface/math/vec4/f32/mix.js.map +1 -0
- package/dist/interface/math/vec4/f32/mod.d.ts +2 -0
- package/dist/interface/math/vec4/f32/mod.js +7 -0
- package/dist/interface/math/vec4/f32/mod.js.map +1 -0
- package/dist/interface/math/vec4/f32/modf.d.ts +5 -0
- package/dist/interface/math/vec4/f32/modf.js +5 -0
- package/dist/interface/math/vec4/f32/modf.js.map +1 -0
- package/dist/interface/math/vec4/f32/multiply.d.ts +2 -0
- package/dist/interface/math/vec4/f32/multiply.js +8 -0
- package/dist/interface/math/vec4/f32/multiply.js.map +1 -0
- package/dist/interface/math/vec4/f32/negate.d.ts +2 -0
- package/dist/interface/math/vec4/f32/negate.js +3 -0
- package/dist/interface/math/vec4/f32/negate.js.map +1 -0
- package/dist/interface/math/vec4/f32/normalize.d.ts +2 -0
- package/dist/interface/math/vec4/f32/normalize.js +5 -0
- package/dist/interface/math/vec4/f32/normalize.js.map +1 -0
- package/dist/interface/math/vec4/f32/pow.d.ts +3 -0
- package/dist/interface/math/vec4/f32/pow.js +9 -0
- package/dist/interface/math/vec4/f32/pow.js.map +1 -0
- package/dist/interface/math/vec4/f32/public.d.ts +46 -0
- package/dist/interface/math/vec4/f32/public.js +47 -0
- package/dist/interface/math/vec4/f32/public.js.map +1 -0
- package/dist/interface/math/vec4/f32/reflect.d.ts +2 -0
- package/dist/interface/math/vec4/f32/reflect.js +9 -0
- package/dist/interface/math/vec4/f32/reflect.js.map +1 -0
- package/dist/interface/math/vec4/f32/refract.d.ts +2 -0
- package/dist/interface/math/vec4/f32/refract.js +14 -0
- package/dist/interface/math/vec4/f32/refract.js.map +1 -0
- package/dist/interface/math/vec4/f32/round.d.ts +2 -0
- package/dist/interface/math/vec4/f32/round.js +9 -0
- package/dist/interface/math/vec4/f32/round.js.map +1 -0
- package/dist/interface/math/vec4/f32/scale.d.ts +2 -0
- package/dist/interface/math/vec4/f32/scale.js +3 -0
- package/dist/interface/math/vec4/f32/scale.js.map +1 -0
- package/dist/interface/math/vec4/f32/schema.d.ts +9 -0
- package/dist/interface/math/vec4/f32/schema.js +3 -0
- package/dist/interface/math/vec4/f32/schema.js.map +1 -0
- package/dist/interface/math/vec4/f32/sign.d.ts +2 -0
- package/dist/interface/math/vec4/f32/sign.js +3 -0
- package/dist/interface/math/vec4/f32/sign.js.map +1 -0
- package/dist/interface/math/vec4/f32/sin.d.ts +2 -0
- package/dist/interface/math/vec4/f32/sin.js +3 -0
- package/dist/interface/math/vec4/f32/sin.js.map +1 -0
- package/dist/interface/math/vec4/f32/sinh.d.ts +2 -0
- package/dist/interface/math/vec4/f32/sinh.js +3 -0
- package/dist/interface/math/vec4/f32/sinh.js.map +1 -0
- package/dist/interface/math/vec4/f32/smoothstep.d.ts +2 -0
- package/dist/interface/math/vec4/f32/smoothstep.js +14 -0
- package/dist/interface/math/vec4/f32/smoothstep.js.map +1 -0
- package/dist/interface/math/vec4/f32/sqrt.d.ts +2 -0
- package/dist/interface/math/vec4/f32/sqrt.js +3 -0
- package/dist/interface/math/vec4/f32/sqrt.js.map +1 -0
- package/dist/interface/math/vec4/f32/step.d.ts +2 -0
- package/dist/interface/math/vec4/f32/step.js +8 -0
- package/dist/interface/math/vec4/f32/step.js.map +1 -0
- package/dist/interface/math/vec4/f32/subtract.d.ts +2 -0
- package/dist/interface/math/vec4/f32/subtract.js +8 -0
- package/dist/interface/math/vec4/f32/subtract.js.map +1 -0
- package/dist/interface/math/vec4/f32/tan.d.ts +2 -0
- package/dist/interface/math/vec4/f32/tan.js +3 -0
- package/dist/interface/math/vec4/f32/tan.js.map +1 -0
- package/dist/interface/math/vec4/f32/tanh.d.ts +2 -0
- package/dist/interface/math/vec4/f32/tanh.js +3 -0
- package/dist/interface/math/vec4/f32/tanh.js.map +1 -0
- package/dist/interface/math/vec4/f32/trunc.d.ts +2 -0
- package/dist/interface/math/vec4/f32/trunc.js +3 -0
- package/dist/interface/math/vec4/f32/trunc.js.map +1 -0
- package/dist/interface/math/vec4/i32/abs.d.ts +2 -0
- package/dist/interface/math/vec4/i32/abs.js +8 -0
- package/dist/interface/math/vec4/i32/abs.js.map +1 -0
- package/dist/interface/math/vec4/i32/add.d.ts +2 -0
- package/dist/interface/math/vec4/i32/add.js +8 -0
- package/dist/interface/math/vec4/i32/add.js.map +1 -0
- package/dist/interface/math/vec4/i32/bitwise-and.d.ts +2 -0
- package/dist/interface/math/vec4/i32/bitwise-and.js +8 -0
- package/dist/interface/math/vec4/i32/bitwise-and.js.map +1 -0
- package/dist/interface/math/vec4/i32/bitwise-not.d.ts +2 -0
- package/dist/interface/math/vec4/i32/bitwise-not.js +3 -0
- package/dist/interface/math/vec4/i32/bitwise-not.js.map +1 -0
- package/dist/interface/math/vec4/i32/bitwise-or.d.ts +2 -0
- package/dist/interface/math/vec4/i32/bitwise-or.js +8 -0
- package/dist/interface/math/vec4/i32/bitwise-or.js.map +1 -0
- package/dist/interface/math/vec4/i32/bitwise-xor.d.ts +2 -0
- package/dist/interface/math/vec4/i32/bitwise-xor.js +8 -0
- package/dist/interface/math/vec4/i32/bitwise-xor.js.map +1 -0
- package/dist/interface/math/vec4/i32/clamp.d.ts +2 -0
- package/dist/interface/math/vec4/i32/clamp.js +5 -0
- package/dist/interface/math/vec4/i32/clamp.js.map +1 -0
- package/dist/interface/math/vec4/i32/count-leading-zeros.d.ts +2 -0
- package/dist/interface/math/vec4/i32/count-leading-zeros.js +9 -0
- package/dist/interface/math/vec4/i32/count-leading-zeros.js.map +1 -0
- package/dist/interface/math/vec4/i32/count-one-bits.d.ts +2 -0
- package/dist/interface/math/vec4/i32/count-one-bits.js +9 -0
- package/dist/interface/math/vec4/i32/count-one-bits.js.map +1 -0
- package/dist/interface/math/vec4/i32/count-trailing-zeros.d.ts +2 -0
- package/dist/interface/math/vec4/i32/count-trailing-zeros.js +9 -0
- package/dist/interface/math/vec4/i32/count-trailing-zeros.js.map +1 -0
- package/dist/interface/math/vec4/i32/equals.d.ts +2 -0
- package/dist/interface/math/vec4/i32/equals.js +2 -0
- package/dist/interface/math/vec4/i32/equals.js.map +1 -0
- package/dist/interface/math/vec4/i32/i32.d.ts +3 -0
- package/dist/interface/math/vec4/i32/i32.js +2 -0
- package/dist/interface/math/vec4/i32/i32.js.map +1 -0
- package/dist/interface/math/vec4/i32/max.d.ts +2 -0
- package/dist/interface/math/vec4/i32/max.js +8 -0
- package/dist/interface/math/vec4/i32/max.js.map +1 -0
- package/dist/interface/math/vec4/i32/min.d.ts +2 -0
- package/dist/interface/math/vec4/i32/min.js +8 -0
- package/dist/interface/math/vec4/i32/min.js.map +1 -0
- package/dist/interface/math/vec4/i32/multiply.d.ts +2 -0
- package/dist/interface/math/vec4/i32/multiply.js +8 -0
- package/dist/interface/math/vec4/i32/multiply.js.map +1 -0
- package/dist/interface/math/vec4/i32/negate.d.ts +2 -0
- package/dist/interface/math/vec4/i32/negate.js +8 -0
- package/dist/interface/math/vec4/i32/negate.js.map +1 -0
- package/dist/interface/math/vec4/i32/one.d.ts +2 -0
- package/dist/interface/math/vec4/i32/one.js +2 -0
- package/dist/interface/math/vec4/i32/one.js.map +1 -0
- package/dist/interface/math/vec4/i32/public.d.ts +23 -0
- package/dist/interface/math/vec4/i32/public.js +24 -0
- package/dist/interface/math/vec4/i32/public.js.map +1 -0
- package/dist/interface/math/vec4/i32/reverse-bits.d.ts +2 -0
- package/dist/interface/math/vec4/i32/reverse-bits.js +9 -0
- package/dist/interface/math/vec4/i32/reverse-bits.js.map +1 -0
- package/dist/interface/math/vec4/i32/scale.d.ts +3 -0
- package/dist/interface/math/vec4/i32/scale.js +8 -0
- package/dist/interface/math/vec4/i32/scale.js.map +1 -0
- package/dist/interface/math/vec4/i32/schema.d.ts +10 -0
- package/dist/interface/math/vec4/i32/schema.js +3 -0
- package/dist/interface/math/vec4/i32/schema.js.map +1 -0
- package/dist/interface/math/vec4/i32/shift-left.d.ts +2 -0
- package/dist/interface/math/vec4/i32/shift-left.js +2 -0
- package/dist/interface/math/vec4/i32/shift-left.js.map +1 -0
- package/dist/interface/math/vec4/i32/shift-right.d.ts +2 -0
- package/dist/interface/math/vec4/i32/shift-right.js +8 -0
- package/dist/interface/math/vec4/i32/shift-right.js.map +1 -0
- package/dist/interface/math/vec4/i32/subtract.d.ts +2 -0
- package/dist/interface/math/vec4/i32/subtract.js +8 -0
- package/dist/interface/math/vec4/i32/subtract.js.map +1 -0
- package/dist/interface/math/vec4/i32/zero.d.ts +2 -0
- package/dist/interface/math/vec4/i32/zero.js +2 -0
- package/dist/interface/math/vec4/i32/zero.js.map +1 -0
- package/dist/interface/math/vec4/index.d.ts +4 -0
- package/dist/interface/math/vec4/index.js +2 -0
- package/dist/interface/math/vec4/index.js.map +1 -0
- package/dist/interface/math/vec4/public.d.ts +4 -0
- package/dist/interface/math/vec4/public.js +5 -0
- package/dist/interface/math/vec4/public.js.map +1 -0
- package/dist/interface/math/vec4/u32/add.d.ts +2 -0
- package/dist/interface/math/vec4/u32/add.js +8 -0
- package/dist/interface/math/vec4/u32/add.js.map +1 -0
- package/dist/interface/math/vec4/u32/bitwise-and.d.ts +2 -0
- package/dist/interface/math/vec4/u32/bitwise-and.js +8 -0
- package/dist/interface/math/vec4/u32/bitwise-and.js.map +1 -0
- package/dist/interface/math/vec4/u32/bitwise-not.d.ts +2 -0
- package/dist/interface/math/vec4/u32/bitwise-not.js +3 -0
- package/dist/interface/math/vec4/u32/bitwise-not.js.map +1 -0
- package/dist/interface/math/vec4/u32/bitwise-or.d.ts +2 -0
- package/dist/interface/math/vec4/u32/bitwise-or.js +8 -0
- package/dist/interface/math/vec4/u32/bitwise-or.js.map +1 -0
- package/dist/interface/math/vec4/u32/bitwise-xor.d.ts +2 -0
- package/dist/interface/math/vec4/u32/bitwise-xor.js +8 -0
- package/dist/interface/math/vec4/u32/bitwise-xor.js.map +1 -0
- package/dist/interface/math/vec4/u32/clamp.d.ts +2 -0
- package/dist/interface/math/vec4/u32/clamp.js +5 -0
- package/dist/interface/math/vec4/u32/clamp.js.map +1 -0
- package/dist/interface/math/vec4/u32/count-leading-zeros.d.ts +2 -0
- package/dist/interface/math/vec4/u32/count-leading-zeros.js +9 -0
- package/dist/interface/math/vec4/u32/count-leading-zeros.js.map +1 -0
- package/dist/interface/math/vec4/u32/count-one-bits.d.ts +2 -0
- package/dist/interface/math/vec4/u32/count-one-bits.js +9 -0
- package/dist/interface/math/vec4/u32/count-one-bits.js.map +1 -0
- package/dist/interface/math/vec4/u32/count-trailing-zeros.d.ts +2 -0
- package/dist/interface/math/vec4/u32/count-trailing-zeros.js +9 -0
- package/dist/interface/math/vec4/u32/count-trailing-zeros.js.map +1 -0
- package/dist/interface/math/vec4/u32/equals.d.ts +2 -0
- package/dist/interface/math/vec4/u32/equals.js +2 -0
- package/dist/interface/math/vec4/u32/equals.js.map +1 -0
- package/dist/interface/math/vec4/u32/max.d.ts +2 -0
- package/dist/interface/math/vec4/u32/max.js +8 -0
- package/dist/interface/math/vec4/u32/max.js.map +1 -0
- package/dist/interface/math/vec4/u32/min.d.ts +2 -0
- package/dist/interface/math/vec4/u32/min.js +8 -0
- package/dist/interface/math/vec4/u32/min.js.map +1 -0
- package/dist/interface/math/vec4/u32/multiply.d.ts +2 -0
- package/dist/interface/math/vec4/u32/multiply.js +8 -0
- package/dist/interface/math/vec4/u32/multiply.js.map +1 -0
- package/dist/interface/math/vec4/u32/negate.d.ts +2 -0
- package/dist/interface/math/vec4/u32/negate.js +2 -0
- package/dist/interface/math/vec4/u32/negate.js.map +1 -0
- package/dist/interface/math/vec4/u32/one.d.ts +2 -0
- package/dist/interface/math/vec4/u32/one.js +2 -0
- package/dist/interface/math/vec4/u32/one.js.map +1 -0
- package/dist/interface/math/vec4/u32/public.d.ts +22 -0
- package/dist/interface/math/vec4/u32/public.js +23 -0
- package/dist/interface/math/vec4/u32/public.js.map +1 -0
- package/dist/interface/math/vec4/u32/reverse-bits.d.ts +2 -0
- package/dist/interface/math/vec4/u32/reverse-bits.js +9 -0
- package/dist/interface/math/vec4/u32/reverse-bits.js.map +1 -0
- package/dist/interface/math/vec4/u32/scale.d.ts +3 -0
- package/dist/interface/math/vec4/u32/scale.js +8 -0
- package/dist/interface/math/vec4/u32/scale.js.map +1 -0
- package/dist/interface/math/vec4/u32/schema.d.ts +10 -0
- package/dist/interface/math/vec4/u32/schema.js +3 -0
- package/dist/interface/math/vec4/u32/schema.js.map +1 -0
- package/dist/interface/math/vec4/u32/shift-left.d.ts +2 -0
- package/dist/interface/math/vec4/u32/shift-left.js +7 -0
- package/dist/interface/math/vec4/u32/shift-left.js.map +1 -0
- package/dist/interface/math/vec4/u32/shift-right.d.ts +2 -0
- package/dist/interface/math/vec4/u32/shift-right.js +8 -0
- package/dist/interface/math/vec4/u32/shift-right.js.map +1 -0
- package/dist/interface/math/vec4/u32/subtract.d.ts +2 -0
- package/dist/interface/math/vec4/u32/subtract.js +8 -0
- package/dist/interface/math/vec4/u32/subtract.js.map +1 -0
- package/dist/interface/math/vec4/u32/u32.d.ts +3 -0
- package/dist/interface/math/vec4/u32/u32.js +2 -0
- package/dist/interface/math/vec4/u32/u32.js.map +1 -0
- package/dist/interface/math/vec4/u32/zero.d.ts +2 -0
- package/dist/interface/math/vec4/u32/zero.js +2 -0
- package/dist/interface/math/vec4/u32/zero.js.map +1 -0
- package/dist/interface/platform/platform.d.ts +28 -0
- package/dist/interface/platform/platform.js +2 -0
- package/dist/interface/platform/platform.js.map +1 -0
- package/dist/interface/registry/archetypes.d.ts +7 -0
- package/dist/interface/registry/archetypes.js +22 -0
- package/dist/interface/registry/archetypes.js.map +1 -0
- package/dist/interface/registry/declarations.d.ts +25 -0
- package/dist/interface/registry/declarations.js +107 -0
- package/dist/interface/registry/declarations.js.map +1 -0
- package/dist/interface/registry/finalizer-order.d.ts +6 -0
- package/dist/interface/registry/finalizer-order.js +66 -0
- package/dist/interface/registry/finalizer-order.js.map +1 -0
- package/dist/interface/registry/ids.d.ts +12 -0
- package/dist/interface/registry/ids.js +28 -0
- package/dist/interface/registry/ids.js.map +1 -0
- package/dist/interface/registry/index.d.ts +29 -0
- package/dist/interface/registry/index.js +16 -0
- package/dist/interface/registry/index.js.map +1 -0
- package/dist/interface/registry/indexes.d.ts +38 -0
- package/dist/interface/registry/indexes.js +63 -0
- package/dist/interface/registry/indexes.js.map +1 -0
- package/dist/interface/registry/items.d.ts +43 -0
- package/dist/interface/registry/items.js +108 -0
- package/dist/interface/registry/items.js.map +1 -0
- package/dist/interface/registry/layout.d.ts +59 -0
- package/dist/interface/registry/layout.js +312 -0
- package/dist/interface/registry/layout.js.map +1 -0
- package/dist/interface/registry/names.d.ts +38 -0
- package/dist/interface/registry/names.js +136 -0
- package/dist/interface/registry/names.js.map +1 -0
- package/dist/interface/registry/program.d.ts +36 -0
- package/dist/interface/registry/program.js +96 -0
- package/dist/interface/registry/program.js.map +1 -0
- package/dist/interface/registry/reduction.d.ts +5 -0
- package/dist/interface/registry/reduction.js +5 -0
- package/dist/interface/registry/reduction.js.map +1 -0
- package/dist/interface/registry/schedule.d.ts +32 -0
- package/dist/interface/registry/schedule.js +207 -0
- package/dist/interface/registry/schedule.js.map +1 -0
- package/dist/interface/registry/schemas.d.ts +13 -0
- package/dist/interface/registry/schemas.js +57 -0
- package/dist/interface/registry/schemas.js.map +1 -0
- package/dist/interface/registry/strata.d.ts +29 -0
- package/dist/interface/registry/strata.js +94 -0
- package/dist/interface/registry/strata.js.map +1 -0
- package/dist/interface/registry/threads.d.ts +34 -0
- package/dist/interface/registry/threads.js +52 -0
- package/dist/interface/registry/threads.js.map +1 -0
- package/dist/interface/registry/traits.d.ts +4 -0
- package/dist/interface/registry/traits.js +10 -0
- package/dist/interface/registry/traits.js.map +1 -0
- package/dist/interface/registry/written.d.ts +4 -0
- package/dist/interface/registry/written.js +13 -0
- package/dist/interface/registry/written.js.map +1 -0
- package/dist/interface/report/components.d.ts +38 -0
- package/dist/interface/report/components.js +48 -0
- package/dist/interface/report/components.js.map +1 -0
- package/dist/interface/report/failure.d.ts +29 -0
- package/dist/interface/report/failure.js +2 -0
- package/dist/interface/report/failure.js.map +1 -0
- package/dist/interface/report/index.d.ts +5 -0
- package/dist/interface/report/index.js +6 -0
- package/dist/interface/report/index.js.map +1 -0
- package/dist/interface/report/report.d.ts +12 -0
- package/dist/interface/report/report.js +2 -0
- package/dist/interface/report/report.js.map +1 -0
- package/dist/interface/resource/condition.d.ts +8 -0
- package/dist/interface/resource/condition.js +2 -0
- package/dist/interface/resource/condition.js.map +1 -0
- package/dist/interface/resource/declaration.d.ts +31 -0
- package/dist/interface/resource/declaration.js +2 -0
- package/dist/interface/resource/declaration.js.map +1 -0
- package/dist/interface/resource/index.d.ts +3 -0
- package/dist/interface/resource/index.js +2 -0
- package/dist/interface/resource/index.js.map +1 -0
- package/dist/interface/resource/key.d.ts +2 -0
- package/dist/interface/resource/key.js +2 -0
- package/dist/interface/resource/key.js.map +1 -0
- package/dist/interface/resource/reduction.d.ts +14 -0
- package/dist/interface/resource/reduction.js +2 -0
- package/dist/interface/resource/reduction.js.map +1 -0
- package/dist/interface/resource/register.d.ts +13 -0
- package/dist/interface/resource/register.js +6 -0
- package/dist/interface/resource/register.js.map +1 -0
- package/dist/interface/resource/resource.d.ts +2 -0
- package/dist/interface/resource/resource.js +2 -0
- package/dist/interface/resource/resource.js.map +1 -0
- package/dist/interface/resource/types.d.ts +3 -0
- package/dist/interface/resource/types.js +2 -0
- package/dist/interface/resource/types.js.map +1 -0
- package/dist/interface/resource/value.d.ts +21 -0
- package/dist/interface/resource/value.js +2 -0
- package/dist/interface/resource/value.js.map +1 -0
- package/dist/interface/resource/written.d.ts +3 -0
- package/dist/interface/resource/written.js +2 -0
- package/dist/interface/resource/written.js.map +1 -0
- package/dist/interface/resources/always.d.ts +9 -0
- package/dist/interface/resources/always.js +5 -0
- package/dist/interface/resources/always.js.map +1 -0
- package/dist/interface/resources/cadence.d.ts +21 -0
- package/dist/interface/resources/cadence.js +17 -0
- package/dist/interface/resources/cadence.js.map +1 -0
- package/dist/interface/resources/clock.d.ts +16 -0
- package/dist/interface/resources/clock.js +10 -0
- package/dist/interface/resources/clock.js.map +1 -0
- package/dist/interface/resources/gpu-device.d.ts +13 -0
- package/dist/interface/resources/gpu-device.js +9 -0
- package/dist/interface/resources/gpu-device.js.map +1 -0
- package/dist/interface/resources/index.d.ts +6 -0
- package/dist/interface/resources/index.js +7 -0
- package/dist/interface/resources/index.js.map +1 -0
- package/dist/interface/resources/wake.d.ts +13 -0
- package/dist/interface/resources/wake.js +8 -0
- package/dist/interface/resources/wake.js.map +1 -0
- package/dist/interface/resources/workers.d.ts +9 -0
- package/dist/interface/resources/workers.js +5 -0
- package/dist/interface/resources/workers.js.map +1 -0
- package/dist/interface/rule/create.d.ts +9 -0
- package/dist/interface/rule/create.js +25 -0
- package/dist/interface/rule/create.js.map +1 -0
- package/dist/interface/rule/created.d.ts +7 -0
- package/dist/interface/rule/created.js +2 -0
- package/dist/interface/rule/created.js.map +1 -0
- package/dist/interface/rule/declaration.d.ts +13 -0
- package/dist/interface/rule/declaration.js +2 -0
- package/dist/interface/rule/declaration.js.map +1 -0
- package/dist/interface/rule/index.d.ts +1 -0
- package/dist/interface/rule/index.js +2 -0
- package/dist/interface/rule/index.js.map +1 -0
- package/dist/interface/rule/name.d.ts +6 -0
- package/dist/interface/rule/name.js +2 -0
- package/dist/interface/rule/name.js.map +1 -0
- package/dist/interface/rule/rule.d.ts +2 -0
- package/dist/interface/rule/rule.js +2 -0
- package/dist/interface/rule/rule.js.map +1 -0
- package/dist/interface/schema/is-data.d.ts +19 -0
- package/dist/interface/schema/is-data.js +2 -0
- package/dist/interface/schema/is-data.js.map +1 -0
- package/dist/interface/schema/is-struct.d.ts +28 -0
- package/dist/interface/schema/is-struct.js +2 -0
- package/dist/interface/schema/is-struct.js.map +1 -0
- package/dist/interface/schema/schema.d.ts +151 -0
- package/dist/interface/schema/schema.js +2 -0
- package/dist/interface/schema/schema.js.map +1 -0
- package/dist/interface/system/access.d.ts +71 -0
- package/dist/interface/system/access.js +2 -0
- package/dist/interface/system/access.js.map +1 -0
- package/dist/interface/system/body.d.ts +56 -0
- package/dist/interface/system/body.js +2 -0
- package/dist/interface/system/body.js.map +1 -0
- package/dist/interface/system/check.d.ts +14 -0
- package/dist/interface/system/check.js +256 -0
- package/dist/interface/system/check.js.map +1 -0
- package/dist/interface/system/commands.d.ts +25 -0
- package/dist/interface/system/commands.js +2 -0
- package/dist/interface/system/commands.js.map +1 -0
- package/dist/interface/system/composite-declaration.d.ts +13 -0
- package/dist/interface/system/composite-declaration.js +2 -0
- package/dist/interface/system/composite-declaration.js.map +1 -0
- package/dist/interface/system/composite.d.ts +8 -0
- package/dist/interface/system/composite.js +2 -0
- package/dist/interface/system/composite.js.map +1 -0
- package/dist/interface/system/create.d.ts +212 -0
- package/dist/interface/system/create.js +29 -0
- package/dist/interface/system/create.js.map +1 -0
- package/dist/interface/system/declaration.d.ts +71 -0
- package/dist/interface/system/declaration.js +2 -0
- package/dist/interface/system/declaration.js.map +1 -0
- package/dist/interface/system/definition.d.ts +4 -0
- package/dist/interface/system/definition.js +2 -0
- package/dist/interface/system/definition.js.map +1 -0
- package/dist/interface/system/index.d.ts +3 -0
- package/dist/interface/system/index.js +3 -0
- package/dist/interface/system/index.js.map +1 -0
- package/dist/interface/system/input.d.ts +28 -0
- package/dist/interface/system/input.js +2 -0
- package/dist/interface/system/input.js.map +1 -0
- package/dist/interface/system/leaf.d.ts +12 -0
- package/dist/interface/system/leaf.js +2 -0
- package/dist/interface/system/leaf.js.map +1 -0
- package/dist/interface/system/name.d.ts +6 -0
- package/dist/interface/system/name.js +2 -0
- package/dist/interface/system/name.js.map +1 -0
- package/dist/interface/system/property.d.ts +4 -0
- package/dist/interface/system/property.js +2 -0
- package/dist/interface/system/property.js.map +1 -0
- package/dist/interface/system/render.d.ts +65 -0
- package/dist/interface/system/render.js +32 -0
- package/dist/interface/system/render.js.map +1 -0
- package/dist/interface/system/struct.d.ts +11 -0
- package/dist/interface/system/struct.js +2 -0
- package/dist/interface/system/struct.js.map +1 -0
- package/dist/interface/system/system.d.ts +10 -0
- package/dist/interface/system/system.js +2 -0
- package/dist/interface/system/system.js.map +1 -0
- package/dist/interface/system/threads.d.ts +46 -0
- package/dist/interface/system/threads.js +2 -0
- package/dist/interface/system/threads.js.map +1 -0
- package/dist/interface/system/values.d.ts +73 -0
- package/dist/interface/system/values.js +2 -0
- package/dist/interface/system/values.js.map +1 -0
- package/dist/interface/thread/of.d.ts +9 -0
- package/dist/interface/thread/of.js +2 -0
- package/dist/interface/thread/of.js.map +1 -0
- package/dist/interface/thread/thread.d.ts +12 -0
- package/dist/interface/thread/thread.js +2 -0
- package/dist/interface/thread/thread.js.map +1 -0
- package/dist/interface/trait/index.d.ts +1 -0
- package/dist/interface/trait/index.js +2 -0
- package/dist/interface/trait/index.js.map +1 -0
- package/dist/interface/trait/key.d.ts +4 -0
- package/dist/interface/trait/key.js +2 -0
- package/dist/interface/trait/key.js.map +1 -0
- package/dist/interface/trait/register.d.ts +7 -0
- package/dist/interface/trait/register.js +8 -0
- package/dist/interface/trait/register.js.map +1 -0
- package/dist/interface/trait/required.d.ts +10 -0
- package/dist/interface/trait/required.js +2 -0
- package/dist/interface/trait/required.js.map +1 -0
- package/dist/interface/trait/symbol-keys.d.ts +16 -0
- package/dist/interface/trait/symbol-keys.js +2 -0
- package/dist/interface/trait/symbol-keys.js.map +1 -0
- package/dist/interface/trait/trait.d.ts +2 -0
- package/dist/interface/trait/trait.js +2 -0
- package/dist/interface/trait/trait.js.map +1 -0
- package/dist/interface/trait/types.d.ts +56 -0
- package/dist/interface/trait/types.js +2 -0
- package/dist/interface/trait/types.js.map +1 -0
- package/dist/interface/world/create.d.ts +15 -0
- package/dist/interface/world/create.js +2 -0
- package/dist/interface/world/create.js.map +1 -0
- package/dist/interface/world/filter.d.ts +8 -0
- package/dist/interface/world/filter.js +2 -0
- package/dist/interface/world/filter.js.map +1 -0
- package/dist/interface/world/index.d.ts +1 -0
- package/dist/interface/world/index.js +2 -0
- package/dist/interface/world/index.js.map +1 -0
- package/dist/interface/world/join.d.ts +11 -0
- package/dist/interface/world/join.js +2 -0
- package/dist/interface/world/join.js.map +1 -0
- package/dist/interface/world/world.d.ts +59 -0
- package/dist/interface/world/world.js +2 -0
- package/dist/interface/world/world.js.map +1 -0
- package/package.json +66 -3
- package/src/exports.test.ts +171 -0
- package/src/guide/01-resources.test.ts +44 -0
- package/src/guide/02-entities.test.ts +57 -0
- package/src/guide/03-systems.test.ts +87 -0
- package/src/guide/04-ticks.test.ts +73 -0
- package/src/guide/05-scheduling.test.ts +60 -0
- package/src/guide/06-sync-points.test.ts +59 -0
- package/src/guide/07-change-filters.test.ts +87 -0
- package/src/guide/08-input.test.ts +47 -0
- package/src/guide/09-rules.test.ts +57 -0
- package/src/guide/10-finalizers.test.ts +64 -0
- package/src/guide/11-traits.test.ts +58 -0
- package/src/guide/11-traits.type-test.ts +27 -0
- package/src/guide/13-indexes.test.ts +95 -0
- package/src/guide/CLAUDE.md +34 -0
- package/src/guide/guide.md +551 -0
- package/src/implementation/compiler/access.ts +143 -0
- package/src/implementation/compiler/assign.ts +167 -0
- package/src/implementation/compiler/bind.ts +87 -0
- package/src/implementation/compiler/body-access.ts +332 -0
- package/src/implementation/compiler/booleans.ts +38 -0
- package/src/implementation/compiler/branches.ts +45 -0
- package/src/implementation/compiler/calls.ts +384 -0
- package/src/implementation/compiler/columns.ts +46 -0
- package/src/implementation/compiler/compile-kernel.ts +139 -0
- package/src/implementation/compiler/data.ts +94 -0
- package/src/implementation/compiler/estree.ts +63 -0
- package/src/implementation/compiler/exact.ts +77 -0
- package/src/implementation/compiler/expression.ts +124 -0
- package/src/implementation/compiler/failure.ts +37 -0
- package/src/implementation/compiler/hygiene.test.ts +73 -0
- package/src/implementation/compiler/identify.test.ts +155 -0
- package/src/implementation/compiler/identify.ts +155 -0
- package/src/implementation/compiler/index.ts +1 -0
- package/src/implementation/compiler/ir.ts +101 -0
- package/src/implementation/compiler/kernel-id.ts +33 -0
- package/src/implementation/compiler/key.ts +32 -0
- package/src/implementation/compiler/link.test.ts +70 -0
- package/src/implementation/compiler/link.ts +202 -0
- package/src/implementation/compiler/lists.ts +202 -0
- package/src/implementation/compiler/lookups.ts +120 -0
- package/src/implementation/compiler/math.ts +9 -0
- package/src/implementation/compiler/module-scope.ts +140 -0
- package/src/implementation/compiler/module-value.ts +121 -0
- package/src/implementation/compiler/out.ts +6 -0
- package/src/implementation/compiler/paths.ts +43 -0
- package/src/implementation/compiler/plugin.test.ts +375 -0
- package/src/implementation/compiler/plugin.ts +223 -0
- package/src/implementation/compiler/print.ts +104 -0
- package/src/implementation/compiler/program.ts +232 -0
- package/src/implementation/compiler/scalar.ts +46 -0
- package/src/implementation/compiler/scope.ts +27 -0
- package/src/implementation/compiler/serialize.ts +10 -0
- package/src/implementation/compiler/signature.ts +170 -0
- package/src/implementation/compiler/snapshot.ts +34 -0
- package/src/implementation/compiler/source-map.test.ts +40 -0
- package/src/implementation/compiler/source-map.ts +134 -0
- package/src/implementation/compiler/spawns.ts +114 -0
- package/src/implementation/compiler/stamps.ts +24 -0
- package/src/implementation/compiler/statement.ts +102 -0
- package/src/implementation/compiler/subset.md +82 -0
- package/src/implementation/compiler/terminal.ts +49 -0
- package/src/implementation/compiler/transform.test.ts +1421 -0
- package/src/implementation/compiler/transform.ts +239 -0
- package/src/implementation/compiler/unit.ts +114 -0
- package/src/implementation/compiler/value.ts +60 -0
- package/src/implementation/index.ts +2 -0
- package/src/implementation/world/activate.ts +127 -0
- package/src/implementation/world/archetype.ts +387 -0
- package/src/implementation/world/arrays.test.ts +24 -0
- package/src/implementation/world/arrays.ts +43 -0
- package/src/implementation/world/async-loading.test.ts +101 -0
- package/src/implementation/world/attach-kernel.test.ts +9 -0
- package/src/implementation/world/attach-kernel.ts +24 -0
- package/src/implementation/world/batches.test.ts +129 -0
- package/src/implementation/world/batches.ts +126 -0
- package/src/implementation/world/buffer.ts +145 -0
- package/src/implementation/world/builtins.test.ts +92 -0
- package/src/implementation/world/cascade.ts +144 -0
- package/src/implementation/world/cells.ts +24 -0
- package/src/implementation/world/changes-finalizers.test.ts +40 -0
- package/src/implementation/world/check-kernel.ts +86 -0
- package/src/implementation/world/claims.test.ts +41 -0
- package/src/implementation/world/claims.ts +50 -0
- package/src/implementation/world/closure.test.ts +39 -0
- package/src/implementation/world/closure.ts +40 -0
- package/src/implementation/world/command-ring.ts +474 -0
- package/src/implementation/world/command-rings.cases.ts +45 -0
- package/src/implementation/world/command-rings.fixture.ts +189 -0
- package/src/implementation/world/commands.test.ts +344 -0
- package/src/implementation/world/commands.ts +78 -0
- package/src/implementation/world/composite-input.test.ts +37 -0
- package/src/implementation/world/conditions.test.ts +124 -0
- package/src/implementation/world/create.test.ts +383 -0
- package/src/implementation/world/create.ts +825 -0
- package/src/implementation/world/directories.ts +86 -0
- package/src/implementation/world/directory.test.ts +54 -0
- package/src/implementation/world/dispatch.cases.ts +32 -0
- package/src/implementation/world/dispatch.fixture.ts +172 -0
- package/src/implementation/world/entities.ts +189 -0
- package/src/implementation/world/entity-lookup-workers.cases.ts +18 -0
- package/src/implementation/world/entity-lookup-workers.fixture.ts +109 -0
- package/src/implementation/world/entity-lookups.browser.test.ts +57 -0
- package/src/implementation/world/entity-lookups.test-helper.ts +201 -0
- package/src/implementation/world/entity-lookups.test.ts +112 -0
- package/src/implementation/world/execute.ts +609 -0
- package/src/implementation/world/failures.ts +14 -0
- package/src/implementation/world/finalizers.test.ts +318 -0
- package/src/implementation/world/finalizers.ts +419 -0
- package/src/implementation/world/fixtures.test-helper.ts +19 -0
- package/src/implementation/world/generated-code.md +140 -0
- package/src/implementation/world/gpu.browser.test.ts +693 -0
- package/src/implementation/world/gpu.ts +393 -0
- package/src/implementation/world/holders.ts +68 -0
- package/src/implementation/world/ids.test.ts +68 -0
- package/src/implementation/world/imported-lists.test-helper.ts +22 -0
- package/src/implementation/world/imported-lists.test.ts +45 -0
- package/src/implementation/world/index-build-csp.test.ts +59 -0
- package/src/implementation/world/index-build.cases.ts +20 -0
- package/src/implementation/world/index-build.fixture.ts +125 -0
- package/src/implementation/world/index-build.ts +458 -0
- package/src/implementation/world/index-changed.test.ts +242 -0
- package/src/implementation/world/index-hash.ts +478 -0
- package/src/implementation/world/index-joined.test.ts +293 -0
- package/src/implementation/world/index-kernels.test.ts +204 -0
- package/src/implementation/world/index-keyless.test.ts +278 -0
- package/src/implementation/world/index-keys.ts +271 -0
- package/src/implementation/world/index-lookups-csp.test.ts +44 -0
- package/src/implementation/world/index-lookups.ts +623 -0
- package/src/implementation/world/index-order.test.ts +154 -0
- package/src/implementation/world/index-order.ts +182 -0
- package/src/implementation/world/index-readers.ts +324 -0
- package/src/implementation/world/index-sorted.test.ts +75 -0
- package/src/implementation/world/index-sorted.ts +651 -0
- package/src/implementation/world/index-workers.cases.ts +17 -0
- package/src/implementation/world/index-workers.fixture.ts +191 -0
- package/src/implementation/world/indexes.test.ts +731 -0
- package/src/implementation/world/indexes.ts +1209 -0
- package/src/implementation/world/input.ts +14 -0
- package/src/implementation/world/intrinsics-coverage.test.ts +25 -0
- package/src/implementation/world/intrinsics.browser.test.ts +584 -0
- package/src/implementation/world/intrinsics.ts +40 -0
- package/src/implementation/world/join.test.ts +170 -0
- package/src/implementation/world/join.ts +676 -0
- package/src/implementation/world/join.type-test.ts +27 -0
- package/src/implementation/world/joined-observer.ts +809 -0
- package/src/implementation/world/joining-worker.fixture.ts +69 -0
- package/src/implementation/world/joining.cases.ts +52 -0
- package/src/implementation/world/joining.fixture.ts +138 -0
- package/src/implementation/world/joining.test-helper.ts +92 -0
- package/src/implementation/world/joining.ts +309 -0
- package/src/implementation/world/journal.ts +36 -0
- package/src/implementation/world/kernel-imports-sparks.test-helper.ts +17 -0
- package/src/implementation/world/kernel-imports-steer.test-helper.ts +9 -0
- package/src/implementation/world/kernel-imports.test.ts +73 -0
- package/src/implementation/world/kernel-indexes.ts +165 -0
- package/src/implementation/world/kernel-lookup.test-helper.ts +30 -0
- package/src/implementation/world/kernel-path.test-helper.ts +20 -0
- package/src/implementation/world/kernel-spawns.test.ts +159 -0
- package/src/implementation/world/kernel.ts +244 -0
- package/src/implementation/world/kernels-csp.test.ts +42 -0
- package/src/implementation/world/kernels.test.ts +78 -0
- package/src/implementation/world/kernels.ts +329 -0
- package/src/implementation/world/layout-directory.browser.test.ts +205 -0
- package/src/implementation/world/layout-directory.cases.ts +37 -0
- package/src/implementation/world/layout-directory.fixture.ts +186 -0
- package/src/implementation/world/layout-directory.ts +230 -0
- package/src/implementation/world/lifetime.cases.ts +18 -0
- package/src/implementation/world/lifetime.fixture.ts +77 -0
- package/src/implementation/world/lifetime.test-helper.ts +78 -0
- package/src/implementation/world/lifetime.test.ts +87 -0
- package/src/implementation/world/lists.ts +152 -0
- package/src/implementation/world/lookup-keys.ts +48 -0
- package/src/implementation/world/loop.test.ts +182 -0
- package/src/implementation/world/loop.ts +295 -0
- package/src/implementation/world/memory.test.ts +41 -0
- package/src/implementation/world/memory.ts +89 -0
- package/src/implementation/world/mirror.ts +603 -0
- package/src/implementation/world/move-log.test.ts +326 -0
- package/src/implementation/world/move-log.ts +215 -0
- package/src/implementation/world/names.test.ts +80 -0
- package/src/implementation/world/observe-cases.browser.test.ts +97 -0
- package/src/implementation/world/observe-cases.test.ts +798 -0
- package/src/implementation/world/observe-factories.test.ts +303 -0
- package/src/implementation/world/observe-joined-cases.test.ts +232 -0
- package/src/implementation/world/observe-ticks-cases.test.ts +213 -0
- package/src/implementation/world/observe.test-helper.ts +13 -0
- package/src/implementation/world/observed-workers.cases.ts +12 -0
- package/src/implementation/world/observed-workers.fixture.ts +55 -0
- package/src/implementation/world/observer-contained-worker.fixture.ts +40 -0
- package/src/implementation/world/observer-contained.browser.test.ts +4 -0
- package/src/implementation/world/observer-contained.cases.ts +16 -0
- package/src/implementation/world/observer-contained.fixture.ts +125 -0
- package/src/implementation/world/observer-contained.test-helper.ts +43 -0
- package/src/implementation/world/observer-contained.test.ts +96 -0
- package/src/implementation/world/observer-joined-worker.fixture.ts +80 -0
- package/src/implementation/world/observer-joined.cases.ts +28 -0
- package/src/implementation/world/observer-joined.fixture.ts +286 -0
- package/src/implementation/world/observer-joined.test-helper.ts +180 -0
- package/src/implementation/world/observer-joined.test.ts +350 -0
- package/src/implementation/world/observer.browser.test.ts +73 -0
- package/src/implementation/world/observer.test.ts +301 -0
- package/src/implementation/world/observer.ts +139 -0
- package/src/implementation/world/order.ts +351 -0
- package/src/implementation/world/perf.md +356 -0
- package/src/implementation/world/plan.md +81 -0
- package/src/implementation/world/plan.ts +71 -0
- package/src/implementation/world/platforms.test-helper.ts +67 -0
- package/src/implementation/world/pool-size.cases.ts +23 -0
- package/src/implementation/world/pool-size.fixture.ts +66 -0
- package/src/implementation/world/pool.cases.ts +30 -0
- package/src/implementation/world/pool.fixture.ts +54 -0
- package/src/implementation/world/pool.ts +323 -0
- package/src/implementation/world/port.ts +141 -0
- package/src/implementation/world/ports.cases.ts +37 -0
- package/src/implementation/world/ports.fixture.ts +107 -0
- package/src/implementation/world/ports.type-test.ts +14 -0
- package/src/implementation/world/prepared-lookup.ts +95 -0
- package/src/implementation/world/prepared-spawn.ts +161 -0
- package/src/implementation/world/program.ts +13 -0
- package/src/implementation/world/protocol.ts +127 -0
- package/src/implementation/world/publish.ts +28 -0
- package/src/implementation/world/ranges.ts +44 -0
- package/src/implementation/world/reads.test-helper.ts +29 -0
- package/src/implementation/world/reductions.cases.ts +22 -0
- package/src/implementation/world/reductions.fixture.ts +65 -0
- package/src/implementation/world/reductions.test.ts +279 -0
- package/src/implementation/world/reductions.ts +105 -0
- package/src/implementation/world/reevaluation.test-helper.ts +16 -0
- package/src/implementation/world/reevaluation.test.ts +32 -0
- package/src/implementation/world/register.ts +412 -0
- package/src/implementation/world/remote-finalizers-worker.fixture.ts +44 -0
- package/src/implementation/world/remote-finalizers.cases.ts +24 -0
- package/src/implementation/world/remote-finalizers.fixture.ts +140 -0
- package/src/implementation/world/remote-finalizers.test-helper.ts +160 -0
- package/src/implementation/world/remote-finalizers.test.ts +188 -0
- package/src/implementation/world/remote-objects-worker.fixture.ts +20 -0
- package/src/implementation/world/remote-objects.cases.ts +16 -0
- package/src/implementation/world/remote-objects.fixture.ts +59 -0
- package/src/implementation/world/remote-objects.test-helper.ts +107 -0
- package/src/implementation/world/remote-systems.ts +627 -0
- package/src/implementation/world/remote.test.ts +186 -0
- package/src/implementation/world/remote.ts +125 -0
- package/src/implementation/world/removal-worker.fixture.ts +20 -0
- package/src/implementation/world/removal.cases.ts +16 -0
- package/src/implementation/world/removal.fixture.ts +95 -0
- package/src/implementation/world/remove-joined.test.ts +181 -0
- package/src/implementation/world/remove.test-helper.ts +84 -0
- package/src/implementation/world/remove.test.ts +194 -0
- package/src/implementation/world/reports.test-helper.ts +117 -0
- package/src/implementation/world/reports.test.ts +167 -0
- package/src/implementation/world/reports.ts +203 -0
- package/src/implementation/world/resources.ts +67 -0
- package/src/implementation/world/rows.test.ts +78 -0
- package/src/implementation/world/rows.ts +515 -0
- package/src/implementation/world/rules.test.ts +243 -0
- package/src/implementation/world/runner.ts +1073 -0
- package/src/implementation/world/schedule.test.ts +124 -0
- package/src/implementation/world/semantics.test.ts +100 -0
- package/src/implementation/world/share.test.ts +17 -0
- package/src/implementation/world/sharing.ts +588 -0
- package/src/implementation/world/staging.ts +196 -0
- package/src/implementation/world/state.ts +521 -0
- package/src/implementation/world/stop-lists.ts +308 -0
- package/src/implementation/world/strings.test.ts +200 -0
- package/src/implementation/world/strings.ts +246 -0
- package/src/implementation/world/structure.ts +70 -0
- package/src/implementation/world/synchronize.test.ts +54 -0
- package/src/implementation/world/synchronize.ts +762 -0
- package/src/implementation/world/tail-blocks.ts +74 -0
- package/src/implementation/world/tails-worker.fixture.ts +66 -0
- package/src/implementation/world/tails.cases.ts +44 -0
- package/src/implementation/world/tails.fixture.ts +254 -0
- package/src/implementation/world/tails.test-helper.ts +166 -0
- package/src/implementation/world/tails.test.ts +114 -0
- package/src/implementation/world/tails.ts +477 -0
- package/src/implementation/world/target.test.ts +73 -0
- package/src/implementation/world/terminal.ts +13 -0
- package/src/implementation/world/thread-directory.ts +210 -0
- package/src/implementation/world/thread-finalizers.ts +318 -0
- package/src/implementation/world/thread-indexes.ts +90 -0
- package/src/implementation/world/thread-observer.ts +234 -0
- package/src/implementation/world/thread-systems-worker.fixture.ts +70 -0
- package/src/implementation/world/thread-systems.cases.ts +41 -0
- package/src/implementation/world/thread-systems.fixture.ts +205 -0
- package/src/implementation/world/thread-systems.test-helper.ts +325 -0
- package/src/implementation/world/thread-systems.test.ts +120 -0
- package/src/implementation/world/thread-systems.ts +1200 -0
- package/src/implementation/world/thread-tasks.ts +75 -0
- package/src/implementation/world/threads.browser.test.ts +46 -0
- package/src/implementation/world/threads.test.ts +73 -0
- package/src/implementation/world/ticks.browser.test.ts +44 -0
- package/src/implementation/world/ticks.test.ts +34 -0
- package/src/implementation/world/traits.test.ts +66 -0
- package/src/implementation/world/transfers-worker.fixture.ts +114 -0
- package/src/implementation/world/transfers.cases.ts +30 -0
- package/src/implementation/world/transfers.fixture.ts +147 -0
- package/src/implementation/world/transfers.test-helper.ts +111 -0
- package/src/implementation/world/transfers.test.ts +157 -0
- package/src/implementation/world/transfers.ts +104 -0
- package/src/implementation/world/up-tree.test.ts +152 -0
- package/src/implementation/world/up-workers.cases.ts +13 -0
- package/src/implementation/world/up-workers.fixture.ts +67 -0
- package/src/implementation/world/up.browser.test.ts +78 -0
- package/src/implementation/world/up.test.ts +284 -0
- package/src/implementation/world/up.ts +684 -0
- package/src/implementation/world/wasm-kernels.test.ts +269 -0
- package/src/implementation/world/wasm.test.ts +381 -0
- package/src/implementation/world/wasm.ts +2093 -0
- package/src/implementation/world/wgsl.test.ts +41 -0
- package/src/implementation/world/wgsl.ts +464 -0
- package/src/implementation/world/worker-platform.ts +105 -0
- package/src/implementation/world/worker.ts +560 -0
- package/src/implementation/world/workers.cases.ts +59 -0
- package/src/implementation/world/workers.fixture.ts +261 -0
- package/src/implementation/world/world-host.fixture.ts +10 -0
- package/src/index.ts +16 -0
- package/src/interface/CLAUDE.md +33 -0
- package/src/interface/archetype/archetype.ts +3 -0
- package/src/interface/archetype/archetype.type-test.ts +37 -0
- package/src/interface/archetype/create.test.ts +40 -0
- package/src/interface/archetype/create.ts +12 -0
- package/src/interface/archetype/index.ts +1 -0
- package/src/interface/archetype/values-of.ts +16 -0
- package/src/interface/component/component.ts +4 -0
- package/src/interface/component/declaration.ts +67 -0
- package/src/interface/component/declaration.type-test.ts +87 -0
- package/src/interface/component/index.ts +3 -0
- package/src/interface/component/key.ts +3 -0
- package/src/interface/component/key.type-test.ts +31 -0
- package/src/interface/component/register.test.ts +124 -0
- package/src/interface/component/register.ts +28 -0
- package/src/interface/component/types.ts +6 -0
- package/src/interface/component/value.ts +34 -0
- package/src/interface/component/values.ts +5 -0
- package/src/interface/entity/entity.ts +9 -0
- package/src/interface/entity/index.ts +8 -0
- package/src/interface/finalizer/body.ts +51 -0
- package/src/interface/finalizer/create.test.ts +148 -0
- package/src/interface/finalizer/create.ts +128 -0
- package/src/interface/finalizer/created.ts +21 -0
- package/src/interface/finalizer/declaration.ts +29 -0
- package/src/interface/finalizer/finalizer.ts +7 -0
- package/src/interface/finalizer/index.ts +1 -0
- package/src/interface/finalizer/name.ts +6 -0
- package/src/interface/gpu/accessors.ts +72 -0
- package/src/interface/gpu/gpu.ts +4 -0
- package/src/interface/gpu/gpu.type-test.ts +27 -0
- package/src/interface/gpu/index.ts +2 -0
- package/src/interface/gpu/layout.ts +22 -0
- package/src/interface/gpu/record.ts +5 -0
- package/src/interface/gpu/wgsl.ts +20 -0
- package/src/interface/index.ts +19 -0
- package/src/interface/index.type-test.ts +55 -0
- package/src/interface/indexes/create.test.ts +145 -0
- package/src/interface/indexes/create.ts +80 -0
- package/src/interface/indexes/created.ts +4 -0
- package/src/interface/indexes/declaration.ts +11 -0
- package/src/interface/indexes/index-type.ts +12 -0
- package/src/interface/indexes/index.ts +1 -0
- package/src/interface/indexes/index.type-test.ts +293 -0
- package/src/interface/indexes/name.ts +5 -0
- package/src/interface/math/f32/index.ts +3 -0
- package/src/interface/math/f32/public.ts +1 -0
- package/src/interface/math/f32/round-half-even.ts +5 -0
- package/src/interface/math/f32/schema.ts +3 -0
- package/src/interface/math/i32/index.ts +4 -0
- package/src/interface/math/i32/public.ts +2 -0
- package/src/interface/math/i32/schema.ts +3 -0
- package/src/interface/math/i32/shift-right.ts +3 -0
- package/src/interface/math/index.ts +8 -0
- package/src/interface/math/intrinsic.ts +18 -0
- package/src/interface/math/mat4x4/add.ts +9 -0
- package/src/interface/math/mat4x4/determinant.ts +26 -0
- package/src/interface/math/mat4x4/identity.ts +8 -0
- package/src/interface/math/mat4x4/index.ts +26 -0
- package/src/interface/math/mat4x4/inverse.ts +49 -0
- package/src/interface/math/mat4x4/look-at.test.ts +13 -0
- package/src/interface/math/mat4x4/look-at.ts +26 -0
- package/src/interface/math/mat4x4/multiply-vec3.ts +8 -0
- package/src/interface/math/mat4x4/multiply-vec4.ts +10 -0
- package/src/interface/math/mat4x4/multiply.ts +22 -0
- package/src/interface/math/mat4x4/orthographic.ts +20 -0
- package/src/interface/math/mat4x4/perspective.ts +20 -0
- package/src/interface/math/mat4x4/public.ts +20 -0
- package/src/interface/math/mat4x4/rotation-x.ts +12 -0
- package/src/interface/math/mat4x4/rotation-y.ts +12 -0
- package/src/interface/math/mat4x4/rotation-z.ts +12 -0
- package/src/interface/math/mat4x4/rotation.test.ts +16 -0
- package/src/interface/math/mat4x4/scale.ts +9 -0
- package/src/interface/math/mat4x4/scaling.ts +8 -0
- package/src/interface/math/mat4x4/schema.ts +4 -0
- package/src/interface/math/mat4x4/subtract.ts +9 -0
- package/src/interface/math/mat4x4/translation.ts +8 -0
- package/src/interface/math/mat4x4/transpose.ts +9 -0
- package/src/interface/math/mat4x4/zero.ts +8 -0
- package/src/interface/math/math.type-test.ts +20 -0
- package/src/interface/math/quat/add.ts +9 -0
- package/src/interface/math/quat/align-to.ts +44 -0
- package/src/interface/math/quat/conjugate.ts +3 -0
- package/src/interface/math/quat/distance.ts +5 -0
- package/src/interface/math/quat/dot.ts +5 -0
- package/src/interface/math/quat/from-axis-angle.ts +14 -0
- package/src/interface/math/quat/from-euler.ts +17 -0
- package/src/interface/math/quat/identity.ts +3 -0
- package/src/interface/math/quat/index.ts +3 -0
- package/src/interface/math/quat/inverse.ts +10 -0
- package/src/interface/math/quat/length-squared.ts +3 -0
- package/src/interface/math/quat/length.ts +4 -0
- package/src/interface/math/quat/lerp.ts +8 -0
- package/src/interface/math/quat/look-at.ts +52 -0
- package/src/interface/math/quat/multiply.ts +8 -0
- package/src/interface/math/quat/negate.ts +4 -0
- package/src/interface/math/quat/normalize.ts +8 -0
- package/src/interface/math/quat/public.ts +24 -0
- package/src/interface/math/quat/rotate-vec3.ts +16 -0
- package/src/interface/math/quat/scale.ts +4 -0
- package/src/interface/math/quat/schema.ts +4 -0
- package/src/interface/math/quat/slerp.ts +26 -0
- package/src/interface/math/quat/subtract.ts +9 -0
- package/src/interface/math/quat/to-axis-angle.ts +14 -0
- package/src/interface/math/quat/to-euler.ts +25 -0
- package/src/interface/math/quat/to-mat4.ts +27 -0
- package/src/interface/math/semantics.test.ts +50 -0
- package/src/interface/math/u32/count-leading-zeros.ts +4 -0
- package/src/interface/math/u32/count-one-bits.ts +10 -0
- package/src/interface/math/u32/count-trailing-zeros.ts +7 -0
- package/src/interface/math/u32/index.ts +4 -0
- package/src/interface/math/u32/public.ts +6 -0
- package/src/interface/math/u32/reverse-bits.ts +11 -0
- package/src/interface/math/u32/schema.ts +3 -0
- package/src/interface/math/u32/shift-right.ts +3 -0
- package/src/interface/math/vec2/f32/abs.ts +4 -0
- package/src/interface/math/vec2/f32/acos.ts +4 -0
- package/src/interface/math/vec2/f32/acosh.ts +4 -0
- package/src/interface/math/vec2/f32/add.ts +4 -0
- package/src/interface/math/vec2/f32/asin.ts +4 -0
- package/src/interface/math/vec2/f32/asinh.ts +4 -0
- package/src/interface/math/vec2/f32/atan.ts +4 -0
- package/src/interface/math/vec2/f32/atanh.ts +4 -0
- package/src/interface/math/vec2/f32/ceil.ts +4 -0
- package/src/interface/math/vec2/f32/clamp.ts +6 -0
- package/src/interface/math/vec2/f32/cos.ts +4 -0
- package/src/interface/math/vec2/f32/cosh.ts +4 -0
- package/src/interface/math/vec2/f32/distance.ts +6 -0
- package/src/interface/math/vec2/f32/dot.ts +4 -0
- package/src/interface/math/vec2/f32/equals.ts +3 -0
- package/src/interface/math/vec2/f32/exp.ts +4 -0
- package/src/interface/math/vec2/f32/exp2.ts +4 -0
- package/src/interface/math/vec2/f32/f32.ts +3 -0
- package/src/interface/math/vec2/f32/faceforward.ts +7 -0
- package/src/interface/math/vec2/f32/floor.ts +4 -0
- package/src/interface/math/vec2/f32/fract.ts +4 -0
- package/src/interface/math/vec2/f32/length.ts +4 -0
- package/src/interface/math/vec2/f32/log.ts +4 -0
- package/src/interface/math/vec2/f32/log2.ts +4 -0
- package/src/interface/math/vec2/f32/max.ts +4 -0
- package/src/interface/math/vec2/f32/min.ts +4 -0
- package/src/interface/math/vec2/f32/mix.ts +7 -0
- package/src/interface/math/vec2/f32/mod.ts +3 -0
- package/src/interface/math/vec2/f32/modf.ts +7 -0
- package/src/interface/math/vec2/f32/negate.ts +4 -0
- package/src/interface/math/vec2/f32/normalize.ts +6 -0
- package/src/interface/math/vec2/f32/pow.ts +8 -0
- package/src/interface/math/vec2/f32/public.ts +47 -0
- package/src/interface/math/vec2/f32/reflect.ts +10 -0
- package/src/interface/math/vec2/f32/refract.ts +15 -0
- package/src/interface/math/vec2/f32/round.ts +5 -0
- package/src/interface/math/vec2/f32/scale.ts +4 -0
- package/src/interface/math/vec2/f32/schema.ts +4 -0
- package/src/interface/math/vec2/f32/sign.ts +4 -0
- package/src/interface/math/vec2/f32/sin.ts +4 -0
- package/src/interface/math/vec2/f32/sinh.ts +4 -0
- package/src/interface/math/vec2/f32/smoothstep.ts +8 -0
- package/src/interface/math/vec2/f32/sqrt.ts +4 -0
- package/src/interface/math/vec2/f32/step.ts +7 -0
- package/src/interface/math/vec2/f32/subtract.ts +4 -0
- package/src/interface/math/vec2/f32/tan.ts +4 -0
- package/src/interface/math/vec2/f32/tanh.ts +4 -0
- package/src/interface/math/vec2/f32/trunc.ts +4 -0
- package/src/interface/math/vec2/f32/zero.ts +3 -0
- package/src/interface/math/vec2/i32/abs.ts +4 -0
- package/src/interface/math/vec2/i32/add.ts +4 -0
- package/src/interface/math/vec2/i32/bitwise-and.ts +4 -0
- package/src/interface/math/vec2/i32/bitwise-not.ts +4 -0
- package/src/interface/math/vec2/i32/bitwise-or.ts +4 -0
- package/src/interface/math/vec2/i32/bitwise-xor.ts +4 -0
- package/src/interface/math/vec2/i32/clamp.ts +6 -0
- package/src/interface/math/vec2/i32/count-leading-zeros.ts +8 -0
- package/src/interface/math/vec2/i32/count-one-bits.ts +8 -0
- package/src/interface/math/vec2/i32/count-trailing-zeros.ts +8 -0
- package/src/interface/math/vec2/i32/equals.ts +3 -0
- package/src/interface/math/vec2/i32/i32.ts +4 -0
- package/src/interface/math/vec2/i32/max.ts +4 -0
- package/src/interface/math/vec2/i32/min.ts +4 -0
- package/src/interface/math/vec2/i32/negate.ts +4 -0
- package/src/interface/math/vec2/i32/public.ts +21 -0
- package/src/interface/math/vec2/i32/reverse-bits.ts +5 -0
- package/src/interface/math/vec2/i32/scale.ts +5 -0
- package/src/interface/math/vec2/i32/schema.ts +4 -0
- package/src/interface/math/vec2/i32/shift-left.ts +3 -0
- package/src/interface/math/vec2/i32/shift-right.ts +7 -0
- package/src/interface/math/vec2/i32/subtract.ts +4 -0
- package/src/interface/math/vec2/i32/zero.ts +3 -0
- package/src/interface/math/vec2/index.ts +6 -0
- package/src/interface/math/vec2/public.ts +4 -0
- package/src/interface/math/vec2/u32/add.ts +7 -0
- package/src/interface/math/vec2/u32/bitwise-and.ts +7 -0
- package/src/interface/math/vec2/u32/bitwise-not.ts +4 -0
- package/src/interface/math/vec2/u32/bitwise-or.ts +7 -0
- package/src/interface/math/vec2/u32/bitwise-xor.ts +7 -0
- package/src/interface/math/vec2/u32/clamp.ts +6 -0
- package/src/interface/math/vec2/u32/count-leading-zeros.ts +8 -0
- package/src/interface/math/vec2/u32/count-one-bits.ts +8 -0
- package/src/interface/math/vec2/u32/count-trailing-zeros.ts +8 -0
- package/src/interface/math/vec2/u32/equals.ts +3 -0
- package/src/interface/math/vec2/u32/max.ts +7 -0
- package/src/interface/math/vec2/u32/min.ts +7 -0
- package/src/interface/math/vec2/u32/negate.ts +3 -0
- package/src/interface/math/vec2/u32/public.ts +20 -0
- package/src/interface/math/vec2/u32/reverse-bits.ts +8 -0
- package/src/interface/math/vec2/u32/scale.ts +5 -0
- package/src/interface/math/vec2/u32/schema.ts +4 -0
- package/src/interface/math/vec2/u32/shift-left.ts +3 -0
- package/src/interface/math/vec2/u32/shift-right.ts +7 -0
- package/src/interface/math/vec2/u32/subtract.ts +7 -0
- package/src/interface/math/vec2/u32/u32.ts +4 -0
- package/src/interface/math/vec2/u32/zero.ts +3 -0
- package/src/interface/math/vec3/f32/abs.ts +4 -0
- package/src/interface/math/vec3/f32/acos.ts +4 -0
- package/src/interface/math/vec3/f32/acosh.ts +4 -0
- package/src/interface/math/vec3/f32/add.ts +8 -0
- package/src/interface/math/vec3/f32/asin.ts +4 -0
- package/src/interface/math/vec3/f32/asinh.ts +4 -0
- package/src/interface/math/vec3/f32/atan.ts +4 -0
- package/src/interface/math/vec3/f32/atanh.ts +4 -0
- package/src/interface/math/vec3/f32/ceil.ts +4 -0
- package/src/interface/math/vec3/f32/clamp.ts +6 -0
- package/src/interface/math/vec3/f32/cos.ts +4 -0
- package/src/interface/math/vec3/f32/cosh.ts +4 -0
- package/src/interface/math/vec3/f32/cross.ts +8 -0
- package/src/interface/math/vec3/f32/distance-squared.ts +8 -0
- package/src/interface/math/vec3/f32/distance.ts +6 -0
- package/src/interface/math/vec3/f32/dot.ts +5 -0
- package/src/interface/math/vec3/f32/equals.ts +3 -0
- package/src/interface/math/vec3/f32/exp.ts +4 -0
- package/src/interface/math/vec3/f32/exp2.ts +4 -0
- package/src/interface/math/vec3/f32/f32.ts +3 -0
- package/src/interface/math/vec3/f32/faceforward.ts +7 -0
- package/src/interface/math/vec3/f32/floor.ts +4 -0
- package/src/interface/math/vec3/f32/fract.ts +8 -0
- package/src/interface/math/vec3/f32/length-squared.ts +4 -0
- package/src/interface/math/vec3/f32/length.ts +4 -0
- package/src/interface/math/vec3/f32/log.ts +4 -0
- package/src/interface/math/vec3/f32/log2.ts +4 -0
- package/src/interface/math/vec3/f32/max.ts +8 -0
- package/src/interface/math/vec3/f32/min.ts +8 -0
- package/src/interface/math/vec3/f32/mix.ts +8 -0
- package/src/interface/math/vec3/f32/mod.ts +7 -0
- package/src/interface/math/vec3/f32/modf.ts +7 -0
- package/src/interface/math/vec3/f32/multiply.ts +11 -0
- package/src/interface/math/vec3/f32/negate.ts +4 -0
- package/src/interface/math/vec3/f32/normalize.ts +6 -0
- package/src/interface/math/vec3/f32/one.ts +3 -0
- package/src/interface/math/vec3/f32/pow.ts +9 -0
- package/src/interface/math/vec3/f32/public.ts +53 -0
- package/src/interface/math/vec3/f32/random.ts +5 -0
- package/src/interface/math/vec3/f32/reflect.ts +10 -0
- package/src/interface/math/vec3/f32/refract.ts +15 -0
- package/src/interface/math/vec3/f32/round.ts +9 -0
- package/src/interface/math/vec3/f32/scale.ts +4 -0
- package/src/interface/math/vec3/f32/schema.ts +4 -0
- package/src/interface/math/vec3/f32/sign.ts +4 -0
- package/src/interface/math/vec3/f32/sin.ts +4 -0
- package/src/interface/math/vec3/f32/sinh.ts +4 -0
- package/src/interface/math/vec3/f32/smoothstep.ts +13 -0
- package/src/interface/math/vec3/f32/sqrt.ts +4 -0
- package/src/interface/math/vec3/f32/step.ts +8 -0
- package/src/interface/math/vec3/f32/subtract.ts +8 -0
- package/src/interface/math/vec3/f32/tan.ts +4 -0
- package/src/interface/math/vec3/f32/tanh.ts +4 -0
- package/src/interface/math/vec3/f32/trunc.ts +4 -0
- package/src/interface/math/vec3/f32/zero.ts +3 -0
- package/src/interface/math/vec3/i32/abs.ts +8 -0
- package/src/interface/math/vec3/i32/add.ts +8 -0
- package/src/interface/math/vec3/i32/bitwise-and.ts +8 -0
- package/src/interface/math/vec3/i32/bitwise-not.ts +4 -0
- package/src/interface/math/vec3/i32/bitwise-or.ts +8 -0
- package/src/interface/math/vec3/i32/bitwise-xor.ts +8 -0
- package/src/interface/math/vec3/i32/clamp.ts +6 -0
- package/src/interface/math/vec3/i32/count-leading-zeros.ts +9 -0
- package/src/interface/math/vec3/i32/count-one-bits.ts +9 -0
- package/src/interface/math/vec3/i32/count-trailing-zeros.ts +9 -0
- package/src/interface/math/vec3/i32/equals.ts +3 -0
- package/src/interface/math/vec3/i32/i32.ts +4 -0
- package/src/interface/math/vec3/i32/max.ts +8 -0
- package/src/interface/math/vec3/i32/min.ts +8 -0
- package/src/interface/math/vec3/i32/multiply.ts +8 -0
- package/src/interface/math/vec3/i32/negate.ts +8 -0
- package/src/interface/math/vec3/i32/one.ts +3 -0
- package/src/interface/math/vec3/i32/public.ts +23 -0
- package/src/interface/math/vec3/i32/reverse-bits.ts +9 -0
- package/src/interface/math/vec3/i32/scale.ts +9 -0
- package/src/interface/math/vec3/i32/schema.ts +4 -0
- package/src/interface/math/vec3/i32/shift-left.ts +3 -0
- package/src/interface/math/vec3/i32/shift-right.ts +8 -0
- package/src/interface/math/vec3/i32/subtract.ts +8 -0
- package/src/interface/math/vec3/i32/zero.ts +3 -0
- package/src/interface/math/vec3/index.ts +6 -0
- package/src/interface/math/vec3/public.ts +4 -0
- package/src/interface/math/vec3/u32/add.ts +8 -0
- package/src/interface/math/vec3/u32/bitwise-and.ts +8 -0
- package/src/interface/math/vec3/u32/bitwise-not.ts +4 -0
- package/src/interface/math/vec3/u32/bitwise-or.ts +8 -0
- package/src/interface/math/vec3/u32/bitwise-xor.ts +8 -0
- package/src/interface/math/vec3/u32/clamp.ts +6 -0
- package/src/interface/math/vec3/u32/count-leading-zeros.ts +9 -0
- package/src/interface/math/vec3/u32/count-one-bits.ts +9 -0
- package/src/interface/math/vec3/u32/count-trailing-zeros.ts +9 -0
- package/src/interface/math/vec3/u32/equals.ts +3 -0
- package/src/interface/math/vec3/u32/max.ts +8 -0
- package/src/interface/math/vec3/u32/min.ts +8 -0
- package/src/interface/math/vec3/u32/multiply.ts +8 -0
- package/src/interface/math/vec3/u32/negate.ts +3 -0
- package/src/interface/math/vec3/u32/one.ts +3 -0
- package/src/interface/math/vec3/u32/public.ts +23 -0
- package/src/interface/math/vec3/u32/reverse-bits.ts +9 -0
- package/src/interface/math/vec3/u32/scale.ts +9 -0
- package/src/interface/math/vec3/u32/schema.ts +4 -0
- package/src/interface/math/vec3/u32/shift-left.ts +7 -0
- package/src/interface/math/vec3/u32/shift-right.ts +8 -0
- package/src/interface/math/vec3/u32/subtract.ts +8 -0
- package/src/interface/math/vec3/u32/u32.ts +4 -0
- package/src/interface/math/vec3/u32/volume.ts +3 -0
- package/src/interface/math/vec3/u32/zero.ts +3 -0
- package/src/interface/math/vec4/f32/abs.ts +4 -0
- package/src/interface/math/vec4/f32/acos.ts +4 -0
- package/src/interface/math/vec4/f32/acosh.ts +4 -0
- package/src/interface/math/vec4/f32/add.ts +9 -0
- package/src/interface/math/vec4/f32/asin.ts +4 -0
- package/src/interface/math/vec4/f32/asinh.ts +4 -0
- package/src/interface/math/vec4/f32/atan.ts +4 -0
- package/src/interface/math/vec4/f32/atanh.ts +4 -0
- package/src/interface/math/vec4/f32/ceil.ts +4 -0
- package/src/interface/math/vec4/f32/clamp.ts +6 -0
- package/src/interface/math/vec4/f32/cos.ts +4 -0
- package/src/interface/math/vec4/f32/cosh.ts +4 -0
- package/src/interface/math/vec4/f32/distance.ts +6 -0
- package/src/interface/math/vec4/f32/dot.ts +5 -0
- package/src/interface/math/vec4/f32/exp.ts +4 -0
- package/src/interface/math/vec4/f32/exp2.ts +4 -0
- package/src/interface/math/vec4/f32/f32.ts +3 -0
- package/src/interface/math/vec4/f32/faceforward.ts +7 -0
- package/src/interface/math/vec4/f32/floor.ts +4 -0
- package/src/interface/math/vec4/f32/fract.ts +9 -0
- package/src/interface/math/vec4/f32/length.ts +4 -0
- package/src/interface/math/vec4/f32/log.ts +4 -0
- package/src/interface/math/vec4/f32/log2.ts +4 -0
- package/src/interface/math/vec4/f32/max.ts +9 -0
- package/src/interface/math/vec4/f32/min.ts +9 -0
- package/src/interface/math/vec4/f32/mix.ts +9 -0
- package/src/interface/math/vec4/f32/mod.ts +8 -0
- package/src/interface/math/vec4/f32/modf.ts +7 -0
- package/src/interface/math/vec4/f32/multiply.ts +9 -0
- package/src/interface/math/vec4/f32/negate.ts +4 -0
- package/src/interface/math/vec4/f32/normalize.ts +6 -0
- package/src/interface/math/vec4/f32/pow.ts +10 -0
- package/src/interface/math/vec4/f32/public.ts +46 -0
- package/src/interface/math/vec4/f32/reflect.ts +10 -0
- package/src/interface/math/vec4/f32/refract.ts +15 -0
- package/src/interface/math/vec4/f32/round.ts +10 -0
- package/src/interface/math/vec4/f32/scale.ts +4 -0
- package/src/interface/math/vec4/f32/schema.ts +4 -0
- package/src/interface/math/vec4/f32/sign.ts +4 -0
- package/src/interface/math/vec4/f32/sin.ts +4 -0
- package/src/interface/math/vec4/f32/sinh.ts +4 -0
- package/src/interface/math/vec4/f32/smoothstep.ts +15 -0
- package/src/interface/math/vec4/f32/sqrt.ts +4 -0
- package/src/interface/math/vec4/f32/step.ts +9 -0
- package/src/interface/math/vec4/f32/subtract.ts +9 -0
- package/src/interface/math/vec4/f32/tan.ts +4 -0
- package/src/interface/math/vec4/f32/tanh.ts +4 -0
- package/src/interface/math/vec4/f32/trunc.ts +4 -0
- package/src/interface/math/vec4/i32/abs.ts +9 -0
- package/src/interface/math/vec4/i32/add.ts +9 -0
- package/src/interface/math/vec4/i32/bitwise-and.ts +9 -0
- package/src/interface/math/vec4/i32/bitwise-not.ts +4 -0
- package/src/interface/math/vec4/i32/bitwise-or.ts +9 -0
- package/src/interface/math/vec4/i32/bitwise-xor.ts +9 -0
- package/src/interface/math/vec4/i32/clamp.ts +6 -0
- package/src/interface/math/vec4/i32/count-leading-zeros.ts +10 -0
- package/src/interface/math/vec4/i32/count-one-bits.ts +10 -0
- package/src/interface/math/vec4/i32/count-trailing-zeros.ts +10 -0
- package/src/interface/math/vec4/i32/equals.ts +4 -0
- package/src/interface/math/vec4/i32/i32.ts +4 -0
- package/src/interface/math/vec4/i32/max.ts +9 -0
- package/src/interface/math/vec4/i32/min.ts +9 -0
- package/src/interface/math/vec4/i32/multiply.ts +9 -0
- package/src/interface/math/vec4/i32/negate.ts +9 -0
- package/src/interface/math/vec4/i32/one.ts +3 -0
- package/src/interface/math/vec4/i32/public.ts +23 -0
- package/src/interface/math/vec4/i32/reverse-bits.ts +10 -0
- package/src/interface/math/vec4/i32/scale.ts +10 -0
- package/src/interface/math/vec4/i32/schema.ts +4 -0
- package/src/interface/math/vec4/i32/shift-left.ts +3 -0
- package/src/interface/math/vec4/i32/shift-right.ts +9 -0
- package/src/interface/math/vec4/i32/subtract.ts +9 -0
- package/src/interface/math/vec4/i32/zero.ts +3 -0
- package/src/interface/math/vec4/index.ts +6 -0
- package/src/interface/math/vec4/public.ts +4 -0
- package/src/interface/math/vec4/u32/add.ts +9 -0
- package/src/interface/math/vec4/u32/bitwise-and.ts +9 -0
- package/src/interface/math/vec4/u32/bitwise-not.ts +4 -0
- package/src/interface/math/vec4/u32/bitwise-or.ts +9 -0
- package/src/interface/math/vec4/u32/bitwise-xor.ts +9 -0
- package/src/interface/math/vec4/u32/clamp.ts +6 -0
- package/src/interface/math/vec4/u32/count-leading-zeros.ts +10 -0
- package/src/interface/math/vec4/u32/count-one-bits.ts +10 -0
- package/src/interface/math/vec4/u32/count-trailing-zeros.ts +10 -0
- package/src/interface/math/vec4/u32/equals.ts +4 -0
- package/src/interface/math/vec4/u32/max.ts +9 -0
- package/src/interface/math/vec4/u32/min.ts +9 -0
- package/src/interface/math/vec4/u32/multiply.ts +9 -0
- package/src/interface/math/vec4/u32/negate.ts +3 -0
- package/src/interface/math/vec4/u32/one.ts +3 -0
- package/src/interface/math/vec4/u32/public.ts +22 -0
- package/src/interface/math/vec4/u32/reverse-bits.ts +10 -0
- package/src/interface/math/vec4/u32/scale.ts +10 -0
- package/src/interface/math/vec4/u32/schema.ts +4 -0
- package/src/interface/math/vec4/u32/shift-left.ts +8 -0
- package/src/interface/math/vec4/u32/shift-right.ts +9 -0
- package/src/interface/math/vec4/u32/subtract.ts +9 -0
- package/src/interface/math/vec4/u32/u32.ts +4 -0
- package/src/interface/math/vec4/u32/zero.ts +3 -0
- package/src/interface/platform/platform.ts +35 -0
- package/src/interface/registry/archetypes.ts +23 -0
- package/src/interface/registry/declarations.ts +102 -0
- package/src/interface/registry/finalizer-order.ts +52 -0
- package/src/interface/registry/ids.test-helper.ts +14 -0
- package/src/interface/registry/ids.test.ts +124 -0
- package/src/interface/registry/ids.ts +30 -0
- package/src/interface/registry/index.ts +29 -0
- package/src/interface/registry/indexes.ts +73 -0
- package/src/interface/registry/items.ts +125 -0
- package/src/interface/registry/layout.test.ts +86 -0
- package/src/interface/registry/layout.ts +364 -0
- package/src/interface/registry/names.test.ts +75 -0
- package/src/interface/registry/names.ts +154 -0
- package/src/interface/registry/program.ts +111 -0
- package/src/interface/registry/reduction.ts +7 -0
- package/src/interface/registry/schedule.ts +215 -0
- package/src/interface/registry/schemas.ts +61 -0
- package/src/interface/registry/strata.ts +93 -0
- package/src/interface/registry/threads.ts +73 -0
- package/src/interface/registry/traits.ts +12 -0
- package/src/interface/registry/written.ts +14 -0
- package/src/interface/report/components.ts +69 -0
- package/src/interface/report/failure.ts +26 -0
- package/src/interface/report/index.ts +8 -0
- package/src/interface/report/report.ts +11 -0
- package/src/interface/report/report.type-test.ts +63 -0
- package/src/interface/resource/condition.ts +8 -0
- package/src/interface/resource/declaration.ts +29 -0
- package/src/interface/resource/declaration.type-test.ts +89 -0
- package/src/interface/resource/index.ts +3 -0
- package/src/interface/resource/key.ts +3 -0
- package/src/interface/resource/reduction.ts +11 -0
- package/src/interface/resource/register.test.ts +107 -0
- package/src/interface/resource/register.ts +18 -0
- package/src/interface/resource/resource.ts +4 -0
- package/src/interface/resource/types.ts +3 -0
- package/src/interface/resource/value.ts +20 -0
- package/src/interface/resource/written.ts +4 -0
- package/src/interface/resources/always.ts +12 -0
- package/src/interface/resources/cadence.ts +27 -0
- package/src/interface/resources/clock.ts +17 -0
- package/src/interface/resources/gpu-device.ts +16 -0
- package/src/interface/resources/index.ts +6 -0
- package/src/interface/resources/wake.ts +15 -0
- package/src/interface/resources/workers.ts +12 -0
- package/src/interface/rule/create.ts +25 -0
- package/src/interface/rule/created.ts +4 -0
- package/src/interface/rule/declaration.ts +11 -0
- package/src/interface/rule/index.ts +1 -0
- package/src/interface/rule/name.ts +6 -0
- package/src/interface/rule/rule.ts +3 -0
- package/src/interface/rule/rule.type-test.ts +117 -0
- package/src/interface/schema/is-data.ts +25 -0
- package/src/interface/schema/is-struct.ts +24 -0
- package/src/interface/schema/schema.ts +168 -0
- package/src/interface/schema/schema.type-test.ts +153 -0
- package/src/interface/schema/schemas.type-test.ts +12 -0
- package/src/interface/system/access.ts +67 -0
- package/src/interface/system/body.ts +49 -0
- package/src/interface/system/check.ts +227 -0
- package/src/interface/system/commands.ts +26 -0
- package/src/interface/system/commands.type-test.ts +93 -0
- package/src/interface/system/composite-declaration.ts +14 -0
- package/src/interface/system/composite-input.type-test.ts +63 -0
- package/src/interface/system/composite.ts +5 -0
- package/src/interface/system/conditions.type-test.ts +68 -0
- package/src/interface/system/create.test.ts +230 -0
- package/src/interface/system/create.ts +181 -0
- package/src/interface/system/declaration.ts +65 -0
- package/src/interface/system/definition.ts +5 -0
- package/src/interface/system/index.ts +3 -0
- package/src/interface/system/input.ts +28 -0
- package/src/interface/system/leaf.ts +13 -0
- package/src/interface/system/name.ts +6 -0
- package/src/interface/system/property.ts +4 -0
- package/src/interface/system/render.ts +81 -0
- package/src/interface/system/struct.ts +9 -0
- package/src/interface/system/system.ts +9 -0
- package/src/interface/system/system.type-test.ts +460 -0
- package/src/interface/system/threads.ts +46 -0
- package/src/interface/system/threads.type-test.ts +114 -0
- package/src/interface/system/up.type-test.ts +80 -0
- package/src/interface/system/values.ts +70 -0
- package/src/interface/thread/of.ts +8 -0
- package/src/interface/thread/thread.ts +13 -0
- package/src/interface/thread/thread.type-test.ts +140 -0
- package/src/interface/trait/index.ts +1 -0
- package/src/interface/trait/key.ts +6 -0
- package/src/interface/trait/register.ts +9 -0
- package/src/interface/trait/required.ts +7 -0
- package/src/interface/trait/symbol-keys.ts +19 -0
- package/src/interface/trait/symbol-keys.type-test.ts +14 -0
- package/src/interface/trait/trait.ts +3 -0
- package/src/interface/trait/trait.type-test.ts +158 -0
- package/src/interface/trait/types.ts +56 -0
- package/src/interface/tsconfig.json +28 -0
- package/src/interface/world/create.ts +15 -0
- package/src/interface/world/filter.ts +9 -0
- package/src/interface/world/index.ts +2 -0
- package/src/interface/world/join.ts +10 -0
- package/src/interface/world/loop.type-test.ts +67 -0
- package/src/interface/world/share.type-test.ts +25 -0
- package/src/interface/world/world.ts +58 -0
- package/src/interface/world/world.type-test.ts +81 -0
- package/src/observe/compare.ts +86 -0
- package/src/observe/entity.ts +224 -0
- package/src/observe/index.ts +1 -0
- package/src/observe/members.ts +42 -0
- package/src/observe/observe.ts +24 -0
- package/src/observe/observe.type-test.ts +88 -0
- package/src/observe/plans.ts +272 -0
- package/src/observe/query.ts +26 -0
- package/src/observe/resource.ts +80 -0
- package/src/observe/select.ts +648 -0
- package/src/observe/to-promise.ts +22 -0
- package/src/observe/tsconfig.json +31 -0
- package/src/observe/values.ts +9 -0
- package/src/observe/world-state.ts +414 -0
- package/src/observe-imports.test.ts +48 -0
- package/src/perftest/benchmark.ts +106 -0
- package/src/perftest/benchmarks.ts +692 -0
- package/src/perftest/finalized.ts +122 -0
- package/src/perftest/flat.ts +67 -0
- package/src/perftest/growth.ts +55 -0
- package/src/perftest/handoff.ts +154 -0
- package/src/perftest/hierarchy.ts +132 -0
- package/src/perftest/indexes.ts +691 -0
- package/src/perftest/joined.ts +95 -0
- package/src/perftest/keys.ts +100 -0
- package/src/perftest/log.ts +126 -0
- package/src/perftest/loop.ts +49 -0
- package/src/perftest/observed-gpu.ts +58 -0
- package/src/perftest/observed.ts +298 -0
- package/src/perftest/observer.ts +57 -0
- package/src/perftest/particles.ts +76 -0
- package/src/perftest/placed.ts +177 -0
- package/src/perftest/reads.ts +210 -0
- package/src/perftest/remote.ts +364 -0
- package/src/perftest/run.ts +43 -0
- package/src/perftest/strings.ts +133 -0
- package/src/perftest/structural.ts +164 -0
- package/src/perftest/suite.perf-browser-test.ts +133 -0
- package/src/perftest/suite.perf-test.ts +7 -0
- package/src/perftest/suite.ts +232 -0
- package/src/perftest/systems.ts +134 -0
- package/src/perftest/tails.ts +306 -0
- package/src/perftest/transfers.ts +93 -0
- package/src/perftest/uploads.ts +82 -0
- package/src/perftest/values.ts +111 -0
- package/src/perftest/wake.ts +40 -0
- package/src/samples/particles/build.test.ts +23 -0
- package/src/samples/particles/gpu/main.ts +96 -0
- package/src/samples/particles/gpu/particles.ts +138 -0
- package/src/samples/particles/index.html +22 -0
- package/src/samples/particles/particles.test.ts +31 -0
- package/src/samples/particles/particles.ts +85 -0
- package/src/samples/particles/particles.type-test.ts +7 -0
- package/src/samples/todo/README.md +174 -0
- package/src/samples/todo/app/app.browser.test.ts +215 -0
- package/src/samples/todo/app/app.ts +30 -0
- package/src/samples/todo/app/log-failures.test.ts +28 -0
- package/src/samples/todo/app/log-failures.ts +7 -0
- package/src/samples/todo/app/main.ts +4 -0
- package/src/samples/todo/app/profile.perf-browser-test.ts +100 -0
- package/src/samples/todo/app/proportional.browser.test.ts +157 -0
- package/src/samples/todo/app/todo.perf-browser-test.ts +207 -0
- package/src/samples/todo/build.test.ts +23 -0
- package/src/samples/todo/features/completion/data.ts +5 -0
- package/src/samples/todo/features/completion/dom.browser.test.ts +53 -0
- package/src/samples/todo/features/completion/dom.ts +39 -0
- package/src/samples/todo/features/completion/elements/elements.browser.test.ts +68 -0
- package/src/samples/todo/features/completion/elements/todo-summary.ts +82 -0
- package/src/samples/todo/features/completion/elements/todo-toggle-all.ts +69 -0
- package/src/samples/todo/features/completion/events.ts +7 -0
- package/src/samples/todo/features/completion/feature.ts +13 -0
- package/src/samples/todo/features/completion/model.test.ts +40 -0
- package/src/samples/todo/features/completion/model.ts +21 -0
- package/src/samples/todo/features/filter/data.ts +16 -0
- package/src/samples/todo/features/filter/dom.browser.test.ts +84 -0
- package/src/samples/todo/features/filter/dom.ts +63 -0
- package/src/samples/todo/features/filter/elements/elements.browser.test.ts +43 -0
- package/src/samples/todo/features/filter/elements/todo-filters.ts +70 -0
- package/src/samples/todo/features/filter/events.ts +4 -0
- package/src/samples/todo/features/filter/feature.ts +12 -0
- package/src/samples/todo/features/filter/model.test.ts +18 -0
- package/src/samples/todo/features/filter/model.ts +10 -0
- package/src/samples/todo/features/generate/elements/elements.browser.test.ts +18 -0
- package/src/samples/todo/features/generate/elements/todo-generate.ts +36 -0
- package/src/samples/todo/features/generate/events.ts +4 -0
- package/src/samples/todo/features/generate/feature.ts +11 -0
- package/src/samples/todo/features/generate/model.test.ts +13 -0
- package/src/samples/todo/features/generate/model.ts +19 -0
- package/src/samples/todo/features/index.ts +4 -0
- package/src/samples/todo/features/todos/data.ts +31 -0
- package/src/samples/todo/features/todos/dom.browser.test.ts +205 -0
- package/src/samples/todo/features/todos/dom.ts +90 -0
- package/src/samples/todo/features/todos/elements/elements.browser.test.ts +211 -0
- package/src/samples/todo/features/todos/elements/todo-entry.ts +45 -0
- package/src/samples/todo/features/todos/elements/todo-list.ts +93 -0
- package/src/samples/todo/features/todos/elements/todo-row.ts +138 -0
- package/src/samples/todo/features/todos/events.ts +11 -0
- package/src/samples/todo/features/todos/feature.ts +14 -0
- package/src/samples/todo/features/todos/model.test.ts +77 -0
- package/src/samples/todo/features/todos/model.ts +80 -0
- package/src/samples/todo/features/todos/todos.test-helper.ts +34 -0
- package/src/samples/todo/imports.test.ts +113 -0
- package/src/samples/todo/index.html +51 -0
- package/src/samples/todo/shared/attach.browser.test.ts +73 -0
- package/src/samples/todo/shared/attach.ts +32 -0
- package/src/samples/todo/shared/connect.ts +21 -0
- package/src/samples/todo/shared/elements/define.ts +7 -0
- package/src/samples/todo/shared/elements/elements.test-helper.ts +28 -0
- package/src/samples/todo/shared/feature.ts +20 -0
- package/src/samples/todo/shared/ticks.test-helper.ts +25 -0
- package/src/samples/transfers/build.test.ts +22 -0
- package/src/samples/transfers/index.html +18 -0
- package/src/samples/transfers/loader.ts +42 -0
- package/src/samples/transfers/main.ts +46 -0
- package/src/samples/transfers/sprites.ts +96 -0
- package/src/samples/transfers/world.ts +11 -0
- package/src/world.test.ts +46 -0
- package/README.md +0 -3
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { Component } from "../../interface/component/component.js";
|
|
2
|
+
import { Entity } from "../../interface/entity/entity.js";
|
|
3
|
+
import { Resource } from "../../interface/resource/resource.js";
|
|
4
|
+
import { System } from "../../interface/system/system.js";
|
|
5
|
+
|
|
6
|
+
// Keys and systems every thread of the transfer tests imports: systems on thread "transfersTest", which a joined thread
|
|
7
|
+
// fills, and on the world's, taking Transferable values in their input, and `transfer` components holding them.
|
|
8
|
+
// An input field's schema `{ allOf: [] }` takes any value, typed `unknown`, which each body narrows.
|
|
9
|
+
|
|
10
|
+
export const anchor = Symbol("transfersTest/anchor");
|
|
11
|
+
export const order = Symbol("transfersTest/order");
|
|
12
|
+
export const port = Symbol("transfersTest/port");
|
|
13
|
+
export const bitmap = Symbol("transfersTest/bitmap");
|
|
14
|
+
export const portHere = Symbol("transfersTest/portHere");
|
|
15
|
+
export const bitmapHere = Symbol("transfersTest/bitmapHere");
|
|
16
|
+
export const parent = Symbol("transfersTest/parent");
|
|
17
|
+
export const depth = Symbol("transfersTest/depth");
|
|
18
|
+
declare module "@adobe/ecs" {
|
|
19
|
+
export interface Threads {
|
|
20
|
+
transfersTest: true;
|
|
21
|
+
}
|
|
22
|
+
export interface Components {
|
|
23
|
+
[port]: { type: MessagePort; thread: "transfersTest"; transfer: true };
|
|
24
|
+
[bitmap]: { type: ImageBitmap; thread: "transfersTest"; transfer: true };
|
|
25
|
+
[portHere]: { type: MessagePort; transfer: true };
|
|
26
|
+
[bitmapHere]: { type: ImageBitmap; transfer: true };
|
|
27
|
+
[parent]: { type: Entity; reference: "owner" };
|
|
28
|
+
[depth]: { type: number };
|
|
29
|
+
}
|
|
30
|
+
export interface Resources {
|
|
31
|
+
[anchor]: { type: { readonly text: string }; thread: "transfersTest" };
|
|
32
|
+
[order]: { type: number };
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/** An object resource of "transfersTest", which places the systems reading it there. */
|
|
36
|
+
Resource.register(anchor, { type: { type: "object", properties: { text: { type: "string" } }, default: { text: "anchor" } }, thread: "transfersTest" });
|
|
37
|
+
/** Counts the runs that read it, in the order they ran. */
|
|
38
|
+
Resource.register(order, { type: { type: "integer", default: 0 } });
|
|
39
|
+
Component.register(port, { thread: "transfersTest", transfer: true });
|
|
40
|
+
Component.register(bitmap, { thread: "transfersTest", transfer: true });
|
|
41
|
+
Component.register(portHere, { transfer: true });
|
|
42
|
+
Component.register(bitmapHere, { transfer: true });
|
|
43
|
+
Component.register(parent, { type: Entity.schema, reference: "owner" });
|
|
44
|
+
Component.register(depth, { type: { type: "number" } });
|
|
45
|
+
|
|
46
|
+
const any = { allOf: [] } as const;
|
|
47
|
+
|
|
48
|
+
/** What a system was given, on the thread it ran on: an ArrayBuffer's length and first byte, and the run's order. */
|
|
49
|
+
export type Stored = { readonly bytes: number; readonly first: number; readonly order: number; readonly value: unknown };
|
|
50
|
+
export const stored: Stored[] = [];
|
|
51
|
+
/** The values systems gave components, on the thread they ran on. */
|
|
52
|
+
export const kept: unknown[] = [];
|
|
53
|
+
|
|
54
|
+
const store = (value: unknown, resources: { [order]: number }): void => {
|
|
55
|
+
const bytes = value instanceof ArrayBuffer ? value.byteLength : -1;
|
|
56
|
+
stored.push({ bytes, first: bytes > 0 && value instanceof ArrayBuffer ? new Uint8Array(value)[0] : -1, order: resources[order]++, value });
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
/** On "transfersTest": records the buffer it's given. */
|
|
60
|
+
export const storeThere = System.create({ name: "transfersTest/storeThere", input: { type: "object", properties: { buffer: any } }, resources: { read: [anchor], write: [order] } }, ({ input, resources }) => {
|
|
61
|
+
if (resources[anchor].text === "anchor") store(input.buffer, resources);
|
|
62
|
+
});
|
|
63
|
+
/** On the world's thread: records the buffer it's given. */
|
|
64
|
+
export const storeHere = System.create({ name: "transfersTest/storeHere", input: { type: "object", properties: { buffer: any } }, resources: { write: [order] } }, ({ input, resources }) => {
|
|
65
|
+
store(input.buffer, resources);
|
|
66
|
+
});
|
|
67
|
+
/** On the world's thread: what a run from a joined thread saw of the order, by its value. */
|
|
68
|
+
export const marks: { readonly value: number; readonly order: number }[] = [];
|
|
69
|
+
export const mark = System.create({ name: "transfersTest/mark", input: { type: "object", properties: { value: { type: "number" } } }, resources: { write: [order] } }, ({ input, resources }) => {
|
|
70
|
+
marks.push({ value: input.value, order: resources[order]++ });
|
|
71
|
+
});
|
|
72
|
+
/** On "transfersTest": gives an entity the port or bitmap it's given. */
|
|
73
|
+
export const attachThere = System.create({
|
|
74
|
+
name: "transfersTest/attachThere", input: { type: "object", properties: { entity: Entity.schema, value: any } }, resources: { read: [anchor] },
|
|
75
|
+
}, ({ input, resources, commands }) => {
|
|
76
|
+
if (resources[anchor].text !== "anchor") return;
|
|
77
|
+
kept.push(input.value);
|
|
78
|
+
if (input.value instanceof MessagePort) commands.add(input.entity, port, input.value);
|
|
79
|
+
else if (typeof ImageBitmap === "function" && input.value instanceof ImageBitmap) commands.add(input.entity, bitmap, input.value);
|
|
80
|
+
});
|
|
81
|
+
/** On the world's thread: gives an entity the port or bitmap it's given. */
|
|
82
|
+
export const attachHere = System.create({ name: "transfersTest/attachHere", input: { type: "object", properties: { entity: Entity.schema, value: any } } }, ({ input, commands }) => {
|
|
83
|
+
kept.push(input.value);
|
|
84
|
+
if (input.value instanceof MessagePort) commands.add(input.entity, portHere, input.value);
|
|
85
|
+
else if (typeof ImageBitmap === "function" && input.value instanceof ImageBitmap) commands.add(input.entity, bitmapHere, input.value);
|
|
86
|
+
});
|
|
87
|
+
/** On "transfersTest": says hello through the port it's given, which only moving it there, not copying it, gives. */
|
|
88
|
+
export const greetThere = System.create({ name: "transfersTest/greetThere", input: { type: "object", properties: { port: any } }, resources: { read: [anchor] } }, ({ input, resources }) => {
|
|
89
|
+
if (input.port instanceof MessagePort) input.port.postMessage(resources[anchor].text);
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
/** On the world's thread: spawns an entity holding the port it's given. */
|
|
93
|
+
export const spawnHere = System.create({ name: "transfersTest/spawnHere", input: { type: "object", properties: { value: any } } }, ({ input, commands }) => {
|
|
94
|
+
if (input.value instanceof MessagePort) commands.spawn([portHere])({ [portHere]: input.value });
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* On "transfersTest", declaring `up`, which runs only on the world's thread: once a joined thread fills
|
|
99
|
+
* "transfersTest", it fails to register, so a run of it never runs.
|
|
100
|
+
*/
|
|
101
|
+
export const unregistered = System.create({
|
|
102
|
+
name: "transfersTest/unregistered", input: { type: "object", properties: { value: any } }, components: { read: [port], write: [depth] }, up: { through: parent, read: [depth] },
|
|
103
|
+
}, (row, { input, up }) => {
|
|
104
|
+
row[depth] = (up === null ? 0 : up[depth]) + (row[port] === input.value ? 1 : 0);
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
/** On the world's thread: nothing, a run of its own. */
|
|
108
|
+
export const idle = System.create({ name: "transfersTest/idle" }, () => {});
|
|
109
|
+
|
|
110
|
+
/** Every system the joined threads run or place, which they import so the world can place them there. */
|
|
111
|
+
export const transferSystems: readonly { readonly name: string }[] = [storeThere, storeHere, mark, attachThere, attachHere, spawnHere, greetThere, unregistered];
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import type { Observe } from "../../observe/index.js";
|
|
3
|
+
import { workers } from "../../interface/resources/workers.js";
|
|
4
|
+
import type { World } from "../../interface/world/world.js";
|
|
5
|
+
import { createWorld, join, type CreatedWorld } from "./create.js";
|
|
6
|
+
import { asEntity } from "./entities.js";
|
|
7
|
+
import { peersOf } from "./join.js";
|
|
8
|
+
import { attachHere, attachThere, greetThere, kept, mark, marks, spawnHere, storeHere, storeThere, stored, unregistered } from "./transfers.test-helper.js";
|
|
9
|
+
import { reportOf, runReported } from "./reports.test-helper.js";
|
|
10
|
+
|
|
11
|
+
// Transfers, with the world, the thread filling "transfersTest" and a thread filling none on this one, joined through
|
|
12
|
+
// MessageChannels: a run's Transferable input moves to the thread its system runs on.
|
|
13
|
+
|
|
14
|
+
const until = <T>(observe: Observe<T>, accept: (value: T) => boolean): Promise<T> => new Promise(resolve => {
|
|
15
|
+
let done = false;
|
|
16
|
+
const stop = observe(value => {
|
|
17
|
+
if (done || !accept(value)) return;
|
|
18
|
+
done = true;
|
|
19
|
+
queueMicrotask(() => stop());
|
|
20
|
+
resolve(value);
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
const later = (milliseconds = 0): Promise<void> => new Promise(resolve => setTimeout(resolve, milliseconds));
|
|
25
|
+
|
|
26
|
+
/** Resolves once `remote` has a channel to another joined thread. */
|
|
27
|
+
const peered = async (remote: World): Promise<void> => {
|
|
28
|
+
while ((peersOf.get(remote)?.() ?? 0) === 0) await later();
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
const sharedWith = (world: CreatedWorld, threads: readonly "transfersTest"[]): World => {
|
|
32
|
+
const channel = new MessageChannel();
|
|
33
|
+
world.share(channel.port1);
|
|
34
|
+
return join(channel.port2, { threads });
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
/** A world here, `filler` claiming "transfersTest", and `loader` claiming nothing, each with a channel to the other. */
|
|
38
|
+
const joined = async (): Promise<{ readonly world: CreatedWorld; readonly filler: World; readonly loader: World }> => {
|
|
39
|
+
stored.length = marks.length = kept.length = 0;
|
|
40
|
+
const world = createWorld({ [workers]: 0 });
|
|
41
|
+
const loader = sharedWith(world, []);
|
|
42
|
+
const filler = sharedWith(world, ["transfersTest"]);
|
|
43
|
+
await until(world.threads, threads => threads.length === 2 && threads.every(thread => thread.status === "joined"));
|
|
44
|
+
await peered(loader);
|
|
45
|
+
await peered(filler);
|
|
46
|
+
return { world, filler, loader };
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const bufferOf = (first: number, bytes = 1024): ArrayBuffer => {
|
|
50
|
+
const buffer = new ArrayBuffer(bytes);
|
|
51
|
+
new Uint8Array(buffer)[0] = first;
|
|
52
|
+
return buffer;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
/** Resolves once a port's other end closed, or with false after `milliseconds`. */
|
|
56
|
+
const closed = (port: MessagePort, milliseconds = 1000): Promise<boolean> => new Promise(resolve => {
|
|
57
|
+
port.addEventListener("close", () => resolve(true));
|
|
58
|
+
port.start();
|
|
59
|
+
setTimeout(() => resolve(false), milliseconds);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
const clean = { failures: [], skipped: [], dropped: 0, warnings: [] };
|
|
63
|
+
|
|
64
|
+
describe("transfers", () => {
|
|
65
|
+
it("move a run's Transferable input straight to the joined thread its system runs on, in call order with that thread's other runs", async () => {
|
|
66
|
+
const { world, filler, loader } = await joined();
|
|
67
|
+
const buffers = [bufferOf(1), bufferOf(2)];
|
|
68
|
+
const runs = [loader.run(storeThere, { buffer: buffers[0] }), loader.run(mark, { value: 1 }), loader.run(storeThere, { buffer: buffers[1] }), loader.run(mark, { value: 2 })];
|
|
69
|
+
// Moved, not copied: the loader's are detached as soon as it runs them.
|
|
70
|
+
expect(buffers.map(buffer => buffer.byteLength)).toEqual([0, 0]);
|
|
71
|
+
const reports = await Promise.all((await Promise.all(runs)).map(run => reportOf(world, run)));
|
|
72
|
+
expect(reports.map(report => report.warnings.map(warning => warning.kind))).toEqual([["blocking"], [], ["blocking"], []]);
|
|
73
|
+
expect(stored.map(({ bytes, first, order }) => [bytes, first, order])).toEqual([[1024, 1, 0], [1024, 2, 2]]);
|
|
74
|
+
expect(marks).toEqual([{ value: 1, order: 1 }, { value: 2, order: 3 }]);
|
|
75
|
+
await loader.dispose();
|
|
76
|
+
await filler.dispose();
|
|
77
|
+
await world.dispose();
|
|
78
|
+
});
|
|
79
|
+
it("move a MessagePort, which can't be copied, to the joined thread its system runs on, where it works", async () => {
|
|
80
|
+
const { world, filler, loader } = await joined();
|
|
81
|
+
const channel = new MessageChannel();
|
|
82
|
+
const greeted = new Promise<unknown>(resolve => {
|
|
83
|
+
channel.port2.onmessage = event => resolve(event.data);
|
|
84
|
+
});
|
|
85
|
+
expect((await reportOf(world, await loader.run(greetThere, { port: channel.port1 }))).failures).toEqual([]);
|
|
86
|
+
expect(await greeted).toBe("anchor");
|
|
87
|
+
channel.port2.close();
|
|
88
|
+
await loader.dispose();
|
|
89
|
+
await filler.dispose();
|
|
90
|
+
await world.dispose();
|
|
91
|
+
});
|
|
92
|
+
it("move one to the world's thread where its system runs there", async () => {
|
|
93
|
+
const { world, filler, loader } = await joined();
|
|
94
|
+
const buffer = bufferOf(3);
|
|
95
|
+
const ran = loader.run(storeHere, { buffer });
|
|
96
|
+
expect(buffer.byteLength).toBe(0);
|
|
97
|
+
expect(await reportOf(world, await ran)).toEqual(clean);
|
|
98
|
+
expect(stored.map(({ bytes, first }) => [bytes, first])).toEqual([[1024, 3]]);
|
|
99
|
+
await loader.dispose();
|
|
100
|
+
await filler.dispose();
|
|
101
|
+
await world.dispose();
|
|
102
|
+
});
|
|
103
|
+
it("keep one on the joined thread its system runs on, when it runs it", async () => {
|
|
104
|
+
const { world, filler, loader } = await joined();
|
|
105
|
+
const buffer = bufferOf(4);
|
|
106
|
+
await filler.run(storeThere, { buffer });
|
|
107
|
+
expect(stored.map(({ bytes, first, value }) => [bytes, first, value === buffer])).toEqual([[1024, 4, true]]);
|
|
108
|
+
await loader.dispose();
|
|
109
|
+
await filler.dispose();
|
|
110
|
+
await world.dispose();
|
|
111
|
+
});
|
|
112
|
+
it("reject a run whose input moved to a thread that left, the thread's later runs going on", async () => {
|
|
113
|
+
const { world, filler, loader } = await joined();
|
|
114
|
+
await filler.dispose();
|
|
115
|
+
const moved = loader.run(storeThere, { buffer: bufferOf(5) });
|
|
116
|
+
await expect(moved).rejects.toThrow("moved to a joined thread that's gone");
|
|
117
|
+
// Once the world has told it, its runs go to the world's thread, which runs the system now.
|
|
118
|
+
await later(10);
|
|
119
|
+
await loader.run(storeThere, { buffer: bufferOf(6) });
|
|
120
|
+
expect(stored.map(({ bytes, first }) => [bytes, first])).toEqual([[1024, 6]]);
|
|
121
|
+
await loader.dispose();
|
|
122
|
+
await world.dispose();
|
|
123
|
+
});
|
|
124
|
+
it("release a value whose command drops, on its thread", async () => {
|
|
125
|
+
const { world, filler, loader } = await joined();
|
|
126
|
+
const there = new MessageChannel();
|
|
127
|
+
const here = new MessageChannel();
|
|
128
|
+
const closes = [closed(there.port2), closed(here.port2)];
|
|
129
|
+
const dead = asEntity(123456);
|
|
130
|
+
expect((await reportOf(world, await loader.run(attachThere, { entity: dead, value: there.port1 }))).dropped).toBe(1);
|
|
131
|
+
expect((await reportOf(world, await loader.run(attachHere, { entity: dead, value: here.port1 }))).dropped).toBe(1);
|
|
132
|
+
expect(await Promise.all(closes)).toEqual([true, true]);
|
|
133
|
+
await loader.dispose();
|
|
134
|
+
await filler.dispose();
|
|
135
|
+
await world.dispose();
|
|
136
|
+
});
|
|
137
|
+
it("release what moved for a run that never ran there", async () => {
|
|
138
|
+
const { world, filler, loader } = await joined();
|
|
139
|
+
const channel = new MessageChannel();
|
|
140
|
+
const closing = closed(channel.port2);
|
|
141
|
+
await expect(loader.run(unregistered, { value: channel.port1 })).rejects.toThrow("declares up");
|
|
142
|
+
expect(await closing).toBe(true);
|
|
143
|
+
await loader.dispose();
|
|
144
|
+
await filler.dispose();
|
|
145
|
+
await world.dispose();
|
|
146
|
+
});
|
|
147
|
+
it("release a value whose command drops in a world no thread joined, and keep one whose command lands", async () => {
|
|
148
|
+
const world = createWorld({ [workers]: 0 });
|
|
149
|
+
const dropped = new MessageChannel();
|
|
150
|
+
const landed = new MessageChannel();
|
|
151
|
+
const closes = [closed(dropped.port2, 200), closed(landed.port2, 200)];
|
|
152
|
+
expect((await runReported(world, attachHere, { entity: asEntity(123456), value: dropped.port1 })).dropped).toBe(1);
|
|
153
|
+
expect((await runReported(world, spawnHere, { value: landed.port1 })).dropped).toBe(0);
|
|
154
|
+
expect(await Promise.all(closes)).toEqual([true, false]);
|
|
155
|
+
await world.dispose();
|
|
156
|
+
});
|
|
157
|
+
});
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import type { TaskChannel } from './remote-systems.js';
|
|
2
|
+
|
|
3
|
+
// Transfers (threads.md, "Transfers"): a run's input holding Transferable values moves them to the thread its system
|
|
4
|
+
// runs on, a value whose command drops is released there, and a run's input held on that thread until its task.
|
|
5
|
+
|
|
6
|
+
/** Global constructors of Transferable values, where the platform has them. */
|
|
7
|
+
const constructors: readonly string[] = [
|
|
8
|
+
"ArrayBuffer", "ImageBitmap", "OffscreenCanvas", "MessagePort", "VideoFrame", "AudioData",
|
|
9
|
+
"ReadableStream", "WritableStream", "TransformStream", "RTCDataChannel",
|
|
10
|
+
];
|
|
11
|
+
|
|
12
|
+
/** This platform's constructors of Transferable values, found once. */
|
|
13
|
+
let found: readonly Function[] | null = null;
|
|
14
|
+
const platformConstructors = (): readonly Function[] => found ??= constructors.flatMap(name => {
|
|
15
|
+
const constructor: unknown = Reflect.get(globalThis, name);
|
|
16
|
+
return typeof constructor === "function" ? [constructor] : [];
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
/** Whether `value` is Transferable on this platform: a `SharedArrayBuffer` isn't, as it's shared rather than moved. */
|
|
20
|
+
export const isTransferable = (value: unknown): value is object => {
|
|
21
|
+
if (typeof value !== "object" || value === null) return false;
|
|
22
|
+
for (const constructor of platformConstructors()) if (value instanceof constructor) return true;
|
|
23
|
+
return false;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const collect = (value: unknown, into: object[] | null): object[] | null => {
|
|
27
|
+
if (!isTransferable(value) || into?.includes(value) === true) return into;
|
|
28
|
+
(into ??= []).push(value);
|
|
29
|
+
return into;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* The Transferable values a run's input holds, each once: its fields', and the elements of fields that are arrays; null
|
|
34
|
+
* for none, which allocates nothing.
|
|
35
|
+
*/
|
|
36
|
+
export const transferablesOf = (input: unknown): object[] | null => {
|
|
37
|
+
if (typeof input !== "object" || input === null) return null;
|
|
38
|
+
let into: object[] | null = null;
|
|
39
|
+
for (const field of Object.keys(input)) {
|
|
40
|
+
const value: unknown = Reflect.get(input, field);
|
|
41
|
+
if (Array.isArray(value)) {
|
|
42
|
+
for (const element of value) if (typeof element === "object") into = collect(element, into);
|
|
43
|
+
}
|
|
44
|
+
else into = collect(value, into);
|
|
45
|
+
}
|
|
46
|
+
return into;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const ignore = (): void => {};
|
|
50
|
+
|
|
51
|
+
/** Calls a method of `value` by name, if it has one, ignoring what it throws or rejects with. */
|
|
52
|
+
const call = (value: object, method: string): void => {
|
|
53
|
+
const callable: unknown = Reflect.get(value, method);
|
|
54
|
+
if (typeof callable !== "function") return;
|
|
55
|
+
try {
|
|
56
|
+
const result: unknown = Reflect.apply(callable, value, []);
|
|
57
|
+
if (result instanceof Promise) result.catch(ignore);
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
// Released already, or locked: nothing more to release.
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Releases a Transferable value no component will hold: closes an `ImageBitmap`, `VideoFrame`, `AudioData`,
|
|
66
|
+
* `MessagePort` or `RTCDataChannel`, cancels a `ReadableStream`, aborts a `WritableStream`, and both for a
|
|
67
|
+
* `TransformStream`'s sides. An `ArrayBuffer`'s and an `OffscreenCanvas`'s memory is the collector's.
|
|
68
|
+
*/
|
|
69
|
+
export const releaseValue = (value: unknown): void => {
|
|
70
|
+
if (!isTransferable(value)) return;
|
|
71
|
+
const name = value.constructor?.name;
|
|
72
|
+
if (name === "ReadableStream") call(value, "cancel");
|
|
73
|
+
else if (name === "WritableStream") call(value, "abort");
|
|
74
|
+
else if (name === "TransformStream") {
|
|
75
|
+
const readable: unknown = Reflect.get(value, "readable");
|
|
76
|
+
const writable: unknown = Reflect.get(value, "writable");
|
|
77
|
+
if (typeof readable === "object" && readable !== null) call(readable, "cancel");
|
|
78
|
+
if (typeof writable === "object" && writable !== null) call(writable, "abort");
|
|
79
|
+
}
|
|
80
|
+
else call(value, "close");
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
/** Releases every Transferable value a run's input holds. */
|
|
84
|
+
export const releaseInput = (input: unknown): void => {
|
|
85
|
+
for (const value of transferablesOf(input) ?? []) releaseValue(value);
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* On the world's thread, a run's input held on the joined thread its system runs on, which moved it there: the joined
|
|
90
|
+
* thread that ran it, by number, the run's sequence there, the channel of the thread holding it, and whether a task
|
|
91
|
+
* there took it, so what none took is released once the run finishes.
|
|
92
|
+
*/
|
|
93
|
+
export type HeldInput = { readonly from: number; readonly sequence: number; readonly channel: TaskChannel; taken: boolean };
|
|
94
|
+
|
|
95
|
+
const held = new WeakSet<object>();
|
|
96
|
+
|
|
97
|
+
export const heldInput = (from: number, sequence: number, channel: TaskChannel): HeldInput => {
|
|
98
|
+
const input: HeldInput = { from, sequence, channel, taken: false };
|
|
99
|
+
held.add(input);
|
|
100
|
+
return input;
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
/** Whether a run's input is held on a joined thread. */
|
|
104
|
+
export const isHeld = (input: unknown): input is HeldInput => typeof input === "object" && input !== null && held.has(input);
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { expect, it } from "vitest";
|
|
2
|
+
import { Component } from "../../interface/component/component.js";
|
|
3
|
+
import { Entity } from "../../interface/entity/entity.js";
|
|
4
|
+
import { System } from "../../interface/system/system.js";
|
|
5
|
+
import type { World } from "../../interface/world/world.js";
|
|
6
|
+
import { readEach, select } from "./reads.test-helper.js";
|
|
7
|
+
import { createWorld } from "./create.js";
|
|
8
|
+
import { workers } from "../../interface/resources/workers.js";
|
|
9
|
+
|
|
10
|
+
const local = Symbol("upTreeTest/local");
|
|
11
|
+
const full = Symbol("upTreeTest/full");
|
|
12
|
+
const filtered = Symbol("upTreeTest/filtered");
|
|
13
|
+
const parent = Symbol("upTreeTest/parent");
|
|
14
|
+
const hidden = Symbol("upTreeTest/hidden");
|
|
15
|
+
|
|
16
|
+
declare module "@adobe/ecs" {
|
|
17
|
+
interface Components {
|
|
18
|
+
[local]: { type: number };
|
|
19
|
+
[full]: { type: number };
|
|
20
|
+
[filtered]: { type: number };
|
|
21
|
+
[parent]: { type: Entity; reference: "weak" };
|
|
22
|
+
[hidden]: { type: true };
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
Component.register(local, { type: { type: "number" } });
|
|
27
|
+
Component.register(full, { type: { type: "number" } });
|
|
28
|
+
Component.register(filtered, { type: { type: "number" } });
|
|
29
|
+
Component.register(parent, { type: Entity.schema, reference: "weak" });
|
|
30
|
+
Component.register(hidden, { type: { const: true } });
|
|
31
|
+
|
|
32
|
+
const propagateFull = System.create({
|
|
33
|
+
name: "upTreeTest/propagateFull",
|
|
34
|
+
kernel: "cpu",
|
|
35
|
+
components: { read: [local], write: [full], not: [hidden] },
|
|
36
|
+
up: { through: parent, read: [full] },
|
|
37
|
+
}, (row, { up }) => {
|
|
38
|
+
row[full] = (up === null ? 0 : up[full]) + row[local];
|
|
39
|
+
});
|
|
40
|
+
const propagateFiltered = System.create({
|
|
41
|
+
name: "upTreeTest/propagateFiltered",
|
|
42
|
+
kernel: "cpu",
|
|
43
|
+
components: { read: [local], write: [filtered], changed: [local], not: [hidden] },
|
|
44
|
+
up: { through: parent, read: [filtered] },
|
|
45
|
+
}, (row, { up }) => {
|
|
46
|
+
row[filtered] = (up === null ? 0 : up[filtered]) + row[local];
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
type Operation =
|
|
50
|
+
| { readonly kind: "spawn"; readonly local: number; readonly parent: Entity | null }
|
|
51
|
+
| { readonly kind: "despawn" | "hide" | "show" | "orphan"; readonly entity: Entity }
|
|
52
|
+
| { readonly kind: "reparent"; readonly entity: Entity; readonly to: Entity }
|
|
53
|
+
| { readonly kind: "set"; readonly entity: Entity; readonly local: number };
|
|
54
|
+
const operations: Operation[] = [];
|
|
55
|
+
const apply = System.create({ name: "upTreeTest/apply" }, ({ commands }) => {
|
|
56
|
+
for (const operation of operations.splice(0)) {
|
|
57
|
+
switch (operation.kind) {
|
|
58
|
+
case "spawn":
|
|
59
|
+
if (operation.parent === null) commands.spawn([local, full, filtered])({ [local]: operation.local, [full]: 0, [filtered]: 0 });
|
|
60
|
+
else commands.spawn([local, full, filtered, parent])({ [local]: operation.local, [full]: 0, [filtered]: 0, [parent]: operation.parent });
|
|
61
|
+
break;
|
|
62
|
+
case "despawn": commands.despawn(operation.entity); break;
|
|
63
|
+
case "hide": commands.add(operation.entity, hidden, true); break;
|
|
64
|
+
case "show": commands.remove(operation.entity, hidden); break;
|
|
65
|
+
case "orphan": commands.remove(operation.entity, parent); break;
|
|
66
|
+
case "reparent": commands.add(operation.entity, parent, operation.to); break;
|
|
67
|
+
case "set": commands.add(operation.entity, local, operation.local); break;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
/** A small deterministic generator, so a failure replays. */
|
|
73
|
+
const generator = (seed: number) => {
|
|
74
|
+
let state = seed;
|
|
75
|
+
return (limit: number): number => {
|
|
76
|
+
state = (state * 1103515245 + 12345) % 2 ** 31;
|
|
77
|
+
// The high bits: a power-of-two modulus leaves the low ones short cycles.
|
|
78
|
+
return Math.floor((state / 2 ** 31) * limit);
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
/** What each matched row outside a cycle should hold, from the world's current tree and the values it stores. */
|
|
83
|
+
const expected = async (ecs: World, key: typeof full | typeof filtered): Promise<Map<Entity, number>> => {
|
|
84
|
+
const entities = await select(ecs, { required: [local] });
|
|
85
|
+
const alive = new Set(entities);
|
|
86
|
+
const isHidden = new Set(await select(ecs, { required: [hidden] }));
|
|
87
|
+
// The walk reads only live entities, so one read of each component up front serves it.
|
|
88
|
+
const byEntity = <T>(values: readonly T[]): Map<Entity, T> => new Map(entities.map((entity, i) => [entity, values[i]]));
|
|
89
|
+
const parents = byEntity(await readEach(ecs, entities, parent));
|
|
90
|
+
const locals = byEntity(await readEach(ecs, entities, local));
|
|
91
|
+
const keys = byEntity(await readEach(ecs, entities, key));
|
|
92
|
+
const parentOf = (entity: Entity): Entity | null => {
|
|
93
|
+
const value = parents.get(entity);
|
|
94
|
+
return value !== undefined && value !== null && alive.has(value) ? value : null;
|
|
95
|
+
};
|
|
96
|
+
const matched = (entity: Entity): boolean => alive.has(entity) && !isHidden.has(entity);
|
|
97
|
+
const isCyclic = (entity: Entity): boolean => {
|
|
98
|
+
const seen = new Set<Entity>();
|
|
99
|
+
for (let current: Entity | null = entity; current !== null && matched(current); current = parentOf(current)) {
|
|
100
|
+
if (seen.has(current)) return true;
|
|
101
|
+
seen.add(current);
|
|
102
|
+
}
|
|
103
|
+
return false;
|
|
104
|
+
};
|
|
105
|
+
const values = new Map<Entity, number>();
|
|
106
|
+
const valueOf = (entity: Entity): number => {
|
|
107
|
+
if (!matched(entity) || isCyclic(entity)) return keys.get(entity) ?? 0;
|
|
108
|
+
const known = values.get(entity);
|
|
109
|
+
if (known !== undefined) return known;
|
|
110
|
+
const up = parentOf(entity);
|
|
111
|
+
const value = (up === null ? 0 : valueOf(up)) + (locals.get(entity) ?? 0);
|
|
112
|
+
values.set(entity, value);
|
|
113
|
+
return value;
|
|
114
|
+
};
|
|
115
|
+
const result = new Map<Entity, number>();
|
|
116
|
+
for (const entity of entities) if (matched(entity) && !isCyclic(entity)) result.set(entity, valueOf(entity));
|
|
117
|
+
return result;
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
const actual = async (ecs: World, key: typeof full | typeof filtered, rows: Iterable<Entity>): Promise<Map<Entity, number>> => {
|
|
121
|
+
const entities = [...rows];
|
|
122
|
+
const values = await readEach(ecs, entities, key);
|
|
123
|
+
return new Map(entities.map((entity, i) => [entity, values[i] ?? 0]));
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
it.each([true, false])("keeps its tree current across spawns, despawns, reparents, cycles and matching changes, with WASM %s", async wasm => {
|
|
127
|
+
await using ecs = createWorld({ [workers]: 0 }, { wasm });
|
|
128
|
+
const random = generator(7);
|
|
129
|
+
for (let k = 0; k < 30; k++) operations.push({ kind: "spawn", local: random(10), parent: null });
|
|
130
|
+
await ecs.run(apply);
|
|
131
|
+
for (let frame = 0; frame < 300; frame++) {
|
|
132
|
+
const entities = await select(ecs, { required: [local] });
|
|
133
|
+
const any = (): Entity => entities[random(entities.length)];
|
|
134
|
+
for (let k = 0; k < 4; k++) {
|
|
135
|
+
switch (random(8)) {
|
|
136
|
+
case 0: operations.push({ kind: "spawn", local: random(10), parent: random(4) === 0 ? null : any() }); break;
|
|
137
|
+
case 1: if (entities.length > 20) operations.push({ kind: "despawn", entity: any() }); break;
|
|
138
|
+
case 2: operations.push({ kind: random(2) === 0 ? "hide" : "show", entity: any() }); break;
|
|
139
|
+
case 3: operations.push({ kind: "orphan", entity: any() }); break;
|
|
140
|
+
case 4: case 5: operations.push({ kind: "reparent", entity: any(), to: any() }); break;
|
|
141
|
+
default: operations.push({ kind: "set", entity: any(), local: random(10) });
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
await ecs.run(apply);
|
|
145
|
+
await ecs.run(propagateFull);
|
|
146
|
+
await ecs.run(propagateFiltered);
|
|
147
|
+
for (const key of [full, filtered] as const) {
|
|
148
|
+
const want = await expected(ecs, key);
|
|
149
|
+
expect(await actual(ecs, key, want.keys()), `${String(key)}, frame ${frame}`).toEqual(want);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import type * as Fixture from "./up-workers.fixture.js";
|
|
3
|
+
|
|
4
|
+
/** `up` runs depth by depth across workers: the cases, over the fixture built for node or from source. */
|
|
5
|
+
export const upWorkersCases = (load: () => Promise<typeof Fixture>) => describe("up", () => {
|
|
6
|
+
it("runs depth by depth across workers, as on the main thread alone", async () => {
|
|
7
|
+
const fixture = await load();
|
|
8
|
+
const alone = await fixture.simulate(0, false);
|
|
9
|
+
const parallel = await fixture.simulate(2, true);
|
|
10
|
+
expect(parallel.values).toEqual(alone.values);
|
|
11
|
+
expect(parallel.windows).toBeGreaterThan(0);
|
|
12
|
+
});
|
|
13
|
+
});
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Component } from "../../interface/component/component.js";
|
|
2
|
+
import { Entity } from "../../interface/entity/entity.js";
|
|
3
|
+
import { System } from "../../interface/system/system.js";
|
|
4
|
+
import { workers } from "../../interface/resources/workers.js";
|
|
5
|
+
import { readEach, select } from "./reads.test-helper.js";
|
|
6
|
+
import { createWorld } from "./create.js";
|
|
7
|
+
import { countingWorkers } from "./platforms.test-helper.js";
|
|
8
|
+
|
|
9
|
+
/** Scenarios of `up` across workers, run built in node and from source in chromium. */
|
|
10
|
+
|
|
11
|
+
const local = Symbol("upWorkersTest/local");
|
|
12
|
+
const world = Symbol("upWorkersTest/world");
|
|
13
|
+
const parent = Symbol("upWorkersTest/parent");
|
|
14
|
+
|
|
15
|
+
declare module "@adobe/ecs" {
|
|
16
|
+
interface Components {
|
|
17
|
+
[local]: { type: number };
|
|
18
|
+
[world]: { type: number };
|
|
19
|
+
[parent]: { type: Entity; reference: "owner" };
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
Component.register(local, { type: { type: "number" } });
|
|
24
|
+
Component.register(world, { type: { type: "number" } });
|
|
25
|
+
Component.register(parent, { type: Entity.schema, reference: "owner" });
|
|
26
|
+
|
|
27
|
+
const propagate = System.create({
|
|
28
|
+
name: "upWorkersTest/propagate",
|
|
29
|
+
kernel: "cpu",
|
|
30
|
+
components: { read: [local], write: [world], changed: [local] },
|
|
31
|
+
up: { through: parent, read: [world] },
|
|
32
|
+
}, (row, { up }) => {
|
|
33
|
+
row[world] = (up === null ? 0 : up[world]) + row[local] * 2;
|
|
34
|
+
});
|
|
35
|
+
/** 100 trees, each a root with 40 levels of two children, ordered so storage order isn't depth order. */
|
|
36
|
+
const grow = System.create({ name: "upWorkersTest/grow" }, ({ commands }) => {
|
|
37
|
+
for (let tree = 0; tree < 100; tree++) {
|
|
38
|
+
let level = [commands.spawn([local, world])({ [local]: tree, [world]: 0 })];
|
|
39
|
+
for (let depth = 1; depth < 40; depth++) {
|
|
40
|
+
const at = level[depth % level.length];
|
|
41
|
+
level = [commands.spawn([local, world, parent])({ [local]: depth, [world]: 0, [parent]: at }), commands.spawn([local, world, parent])({ [local]: -depth, [world]: 0, [parent]: at })];
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
const nudge = System.create({ name: "upWorkersTest/nudge", components: { write: [local] } }, row => {
|
|
46
|
+
if (row[local] === 7) row[local] = 70;
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
/** Values after `propagate` runs around a nudge, sorted, and the windows opened on workers meanwhile. */
|
|
50
|
+
export const simulate = async (count: number, wasm: boolean): Promise<{ readonly values: readonly (number | null)[]; readonly windows: number }> => {
|
|
51
|
+
const counting = countingWorkers();
|
|
52
|
+
const ecs = createWorld({ [workers]: count }, { minimumChunk: 64, wasm, pool: counting.platform });
|
|
53
|
+
try {
|
|
54
|
+
await ecs.run(grow);
|
|
55
|
+
const before = counting.posted("window");
|
|
56
|
+
await ecs.run(propagate);
|
|
57
|
+
await ecs.run(nudge);
|
|
58
|
+
await ecs.run(propagate);
|
|
59
|
+
await ecs.run(propagate);
|
|
60
|
+
const windows = counting.posted("window") - before;
|
|
61
|
+
const values = (await readEach(ecs, await select(ecs, { required: [world] }), world)).sort((a, b) => (a ?? 0) - (b ?? 0));
|
|
62
|
+
return { values, windows };
|
|
63
|
+
}
|
|
64
|
+
finally {
|
|
65
|
+
await ecs.dispose();
|
|
66
|
+
}
|
|
67
|
+
};
|