@oasys/oecs 0.5.4 → 0.6.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/CHANGELOG.md +1223 -266
- package/README.md +217 -112
- package/dist/core/ecs/access_check.d.cts +29 -29
- package/dist/core/ecs/access_check.d.ts +29 -29
- package/dist/core/ecs/access_check.d.ts.map +1 -1
- package/dist/core/ecs/archetype.d.cts +217 -209
- package/dist/core/ecs/archetype.d.ts +217 -209
- package/dist/core/ecs/archetype.d.ts.map +1 -1
- package/dist/core/ecs/archetype_closure.d.cts +23 -0
- package/dist/core/ecs/archetype_closure.d.ts +23 -0
- package/dist/core/ecs/archetype_closure.d.ts.map +1 -0
- package/dist/core/ecs/archetype_graph.d.cts +33 -33
- package/dist/core/ecs/archetype_graph.d.ts +33 -33
- package/dist/core/ecs/archetype_graph.d.ts.map +1 -1
- package/dist/core/ecs/archetype_types.d.cts +55 -0
- package/dist/core/ecs/archetype_types.d.ts +55 -0
- package/dist/core/ecs/archetype_types.d.ts.map +1 -0
- package/dist/core/ecs/change_feed.d.cts +53 -0
- package/dist/core/ecs/change_feed.d.ts +53 -0
- package/dist/core/ecs/change_feed.d.ts.map +1 -0
- package/dist/core/ecs/changed_query.d.cts +36 -0
- package/dist/core/ecs/changed_query.d.ts +36 -0
- package/dist/core/ecs/changed_query.d.ts.map +1 -0
- package/dist/core/ecs/chunk_columns.d.cts +49 -0
- package/dist/core/ecs/chunk_columns.d.ts +49 -0
- package/dist/core/ecs/chunk_columns.d.ts.map +1 -0
- package/dist/core/ecs/command_log.d.cts +26 -26
- package/dist/core/ecs/command_log.d.ts +26 -26
- package/dist/core/ecs/command_log.d.ts.map +1 -1
- package/dist/core/ecs/component.d.cts +43 -42
- package/dist/core/ecs/component.d.ts +43 -42
- package/dist/core/ecs/component.d.ts.map +1 -1
- package/dist/core/ecs/component_registry.d.cts +53 -0
- package/dist/core/ecs/component_registry.d.ts +53 -0
- package/dist/core/ecs/component_registry.d.ts.map +1 -0
- package/dist/core/ecs/compute_backend.d.cts +18 -7
- package/dist/core/ecs/compute_backend.d.ts +18 -7
- package/dist/core/ecs/compute_backend.d.ts.map +1 -1
- package/dist/core/ecs/deferred_commands.d.cts +15 -14
- package/dist/core/ecs/deferred_commands.d.ts +15 -14
- package/dist/core/ecs/deferred_commands.d.ts.map +1 -1
- package/dist/core/ecs/dispatch_trace.d.cts +32 -31
- package/dist/core/ecs/dispatch_trace.d.ts +32 -31
- package/dist/core/ecs/dispatch_trace.d.ts.map +1 -1
- package/dist/core/ecs/ecs.d.cts +289 -270
- package/dist/core/ecs/ecs.d.ts +289 -270
- package/dist/core/ecs/ecs.d.ts.map +1 -1
- package/dist/core/ecs/ecs_memory.d.cts +134 -136
- package/dist/core/ecs/ecs_memory.d.ts +134 -136
- package/dist/core/ecs/ecs_memory.d.ts.map +1 -1
- package/dist/core/ecs/ecs_options.d.cts +89 -0
- package/dist/core/ecs/ecs_options.d.ts +89 -0
- package/dist/core/ecs/ecs_options.d.ts.map +1 -0
- package/dist/core/ecs/entity.d.cts +4 -4
- package/dist/core/ecs/entity.d.ts +4 -4
- package/dist/core/ecs/entity_allocator.d.cts +20 -18
- package/dist/core/ecs/entity_allocator.d.ts +20 -18
- package/dist/core/ecs/entity_allocator.d.ts.map +1 -1
- package/dist/core/ecs/event.d.cts +36 -22
- package/dist/core/ecs/event.d.ts +36 -22
- package/dist/core/ecs/event.d.ts.map +1 -1
- package/dist/core/ecs/facades.d.cts +12 -126
- package/dist/core/ecs/facades.d.ts +12 -126
- package/dist/core/ecs/facades.d.ts.map +1 -1
- package/dist/core/ecs/frame_stepper.d.cts +12 -12
- package/dist/core/ecs/frame_stepper.d.ts +12 -12
- package/dist/core/ecs/frame_stepper.d.ts.map +1 -1
- package/dist/core/ecs/frame_trace.d.cts +32 -32
- package/dist/core/ecs/frame_trace.d.ts +32 -32
- package/dist/core/ecs/frame_trace.d.ts.map +1 -1
- package/dist/core/ecs/host_commands.d.cts +103 -85
- package/dist/core/ecs/host_commands.d.ts +103 -85
- package/dist/core/ecs/host_commands.d.ts.map +1 -1
- package/dist/core/ecs/index.d.cts +21 -11
- package/dist/core/ecs/index.d.ts +21 -11
- package/dist/core/ecs/index.d.ts.map +1 -1
- package/dist/core/ecs/observer.d.cts +39 -120
- package/dist/core/ecs/observer.d.ts +39 -120
- package/dist/core/ecs/observer.d.ts.map +1 -1
- package/dist/core/ecs/phase.d.cts +79 -0
- package/dist/core/ecs/phase.d.ts +79 -0
- package/dist/core/ecs/phase.d.ts.map +1 -0
- package/dist/core/ecs/plugin.d.cts +125 -0
- package/dist/core/ecs/plugin.d.ts +125 -0
- package/dist/core/ecs/plugin.d.ts.map +1 -0
- package/dist/core/ecs/plugin_slots.d.cts +26 -0
- package/dist/core/ecs/plugin_slots.d.ts +26 -0
- package/dist/core/ecs/plugin_slots.d.ts.map +1 -0
- package/dist/core/ecs/query.d.cts +208 -578
- package/dist/core/ecs/query.d.ts +208 -578
- package/dist/core/ecs/query.d.ts.map +1 -1
- package/dist/core/ecs/query_cache.d.cts +130 -0
- package/dist/core/ecs/query_cache.d.ts +130 -0
- package/dist/core/ecs/query_cache.d.ts.map +1 -0
- package/dist/core/ecs/query_registry.d.cts +47 -0
- package/dist/core/ecs/query_registry.d.ts +47 -0
- package/dist/core/ecs/query_registry.d.ts.map +1 -0
- package/dist/core/ecs/query_terms.d.cts +126 -0
- package/dist/core/ecs/query_terms.d.ts +126 -0
- package/dist/core/ecs/query_terms.d.ts.map +1 -0
- package/dist/core/ecs/ref.d.cts +100 -39
- package/dist/core/ecs/ref.d.ts +100 -39
- package/dist/core/ecs/ref.d.ts.map +1 -1
- package/dist/core/ecs/relation.d.cts +101 -182
- package/dist/core/ecs/relation.d.ts +101 -182
- package/dist/core/ecs/relation.d.ts.map +1 -1
- package/dist/core/ecs/resource.d.cts +13 -13
- package/dist/core/ecs/resource.d.ts +13 -13
- package/dist/core/ecs/resource_registry.d.cts +5 -5
- package/dist/core/ecs/resource_registry.d.ts +5 -5
- package/dist/core/ecs/resource_registry.d.ts.map +1 -1
- package/dist/core/ecs/row_kinds.d.cts +24 -0
- package/dist/core/ecs/row_kinds.d.ts +24 -0
- package/dist/core/ecs/row_kinds.d.ts.map +1 -0
- package/dist/core/ecs/run_condition.d.cts +23 -23
- package/dist/core/ecs/run_condition.d.ts +23 -23
- package/dist/core/ecs/run_condition.d.ts.map +1 -1
- package/dist/core/ecs/schedule.d.cts +91 -120
- package/dist/core/ecs/schedule.d.ts +91 -120
- package/dist/core/ecs/schedule.d.ts.map +1 -1
- package/dist/core/ecs/schedule_plan.d.cts +33 -0
- package/dist/core/ecs/schedule_plan.d.ts +33 -0
- package/dist/core/ecs/schedule_plan.d.ts.map +1 -0
- package/dist/core/ecs/snapshot.d.cts +77 -0
- package/dist/core/ecs/snapshot.d.ts +77 -0
- package/dist/core/ecs/snapshot.d.ts.map +1 -0
- package/dist/core/ecs/snapshot_mount.d.cts +42 -0
- package/dist/core/ecs/snapshot_mount.d.ts +42 -0
- package/dist/core/ecs/snapshot_mount.d.ts.map +1 -0
- package/dist/core/ecs/sparse_store.d.cts +108 -51
- package/dist/core/ecs/sparse_store.d.ts +108 -51
- package/dist/core/ecs/sparse_store.d.ts.map +1 -1
- package/dist/core/ecs/store.d.cts +527 -473
- package/dist/core/ecs/store.d.ts +527 -473
- package/dist/core/ecs/store.d.ts.map +1 -1
- package/dist/core/ecs/store_layout_listener.d.cts +6 -6
- package/dist/core/ecs/store_layout_listener.d.ts +6 -6
- package/dist/core/ecs/store_types.d.cts +122 -0
- package/dist/core/ecs/store_types.d.ts +122 -0
- package/dist/core/ecs/store_types.d.ts.map +1 -0
- package/dist/core/ecs/system.d.cts +146 -61
- package/dist/core/ecs/system.d.ts +146 -61
- package/dist/core/ecs/system.d.ts.map +1 -1
- package/dist/core/ecs/system_context.d.cts +296 -0
- package/dist/core/ecs/system_context.d.ts +296 -0
- package/dist/core/ecs/system_context.d.ts.map +1 -0
- package/dist/core/ecs/system_set.d.cts +48 -0
- package/dist/core/ecs/system_set.d.ts +48 -0
- package/dist/core/ecs/system_set.d.ts.map +1 -0
- package/dist/core/ecs/utils/arrays.d.cts +15 -1
- package/dist/core/ecs/utils/arrays.d.ts +15 -1
- package/dist/core/ecs/utils/arrays.d.ts.map +1 -1
- package/dist/core/ecs/utils/error.d.cts +82 -6
- package/dist/core/ecs/utils/error.d.ts +82 -6
- package/dist/core/ecs/utils/error.d.ts.map +1 -1
- package/dist/core/ecs/utils/plugin_error.d.cts +10 -0
- package/dist/core/ecs/utils/plugin_error.d.ts +10 -0
- package/dist/core/ecs/utils/plugin_error.d.ts.map +1 -0
- package/dist/core/restore_errors.d.cts +30 -0
- package/dist/core/restore_errors.d.ts +30 -0
- package/dist/core/restore_errors.d.ts.map +1 -0
- package/dist/core/store/action_ring.d.cts +44 -44
- package/dist/core/store/action_ring.d.ts +44 -44
- package/dist/core/store/action_ring.d.ts.map +1 -1
- package/dist/core/store/allocator.d.cts +149 -95
- package/dist/core/store/allocator.d.ts +149 -95
- package/dist/core/store/allocator.d.ts.map +1 -1
- package/dist/core/store/buffer_backed_column.d.cts +17 -17
- package/dist/core/store/buffer_backed_column.d.ts +17 -17
- package/dist/core/store/buffer_backed_column.d.ts.map +1 -1
- package/dist/core/store/column_store.d.cts +124 -86
- package/dist/core/store/column_store.d.ts +124 -86
- package/dist/core/store/column_store.d.ts.map +1 -1
- package/dist/core/store/command_dispatch.d.cts +14 -15
- package/dist/core/store/command_dispatch.d.ts +14 -15
- package/dist/core/store/command_dispatch.d.ts.map +1 -1
- package/dist/core/store/command_ring.d.cts +36 -39
- package/dist/core/store/command_ring.d.ts +36 -39
- package/dist/core/store/command_ring.d.ts.map +1 -1
- package/dist/core/store/descriptor.d.cts +34 -17
- package/dist/core/store/descriptor.d.ts +34 -17
- package/dist/core/store/descriptor.d.ts.map +1 -1
- package/dist/core/store/entity_index.d.cts +34 -35
- package/dist/core/store/entity_index.d.ts +34 -35
- package/dist/core/store/entity_index.d.ts.map +1 -1
- package/dist/core/store/event_ring.d.cts +36 -38
- package/dist/core/store/event_ring.d.ts +36 -38
- package/dist/core/store/event_ring.d.ts.map +1 -1
- package/dist/core/store/extend.d.cts +13 -7
- package/dist/core/store/extend.d.ts +13 -7
- package/dist/core/store/extend.d.ts.map +1 -1
- package/dist/core/store/grow.d.cts +2 -2
- package/dist/core/store/grow.d.ts +2 -2
- package/dist/core/store/grow.d.ts.map +1 -1
- package/dist/core/store/header.d.cts +31 -27
- package/dist/core/store/header.d.ts +31 -27
- package/dist/core/store/header.d.ts.map +1 -1
- package/dist/core/store/index.d.cts +10 -10
- package/dist/core/store/index.d.ts +10 -10
- package/dist/core/store/index.d.ts.map +1 -1
- package/dist/core/store/layout_ops.d.cts +71 -62
- package/dist/core/store/layout_ops.d.ts +71 -62
- package/dist/core/store/layout_ops.d.ts.map +1 -1
- package/dist/core/store/region_table.d.cts +28 -21
- package/dist/core/store/region_table.d.ts +28 -21
- package/dist/core/store/region_table.d.ts.map +1 -1
- package/dist/core/store/snapshot.d.cts +31 -16
- package/dist/core/store/snapshot.d.ts +31 -16
- package/dist/core/store/snapshot.d.ts.map +1 -1
- package/dist/core/store/state_hash.d.cts +12 -12
- package/dist/core/store/state_hash.d.ts +12 -12
- package/dist/core/store/state_hash.d.ts.map +1 -1
- package/dist/core/store/store_regions.d.cts +10 -10
- package/dist/core/store/store_regions.d.ts +10 -10
- package/dist/core/store/store_regions.d.ts.map +1 -1
- package/dist/core/store/vendored_abi/abi.d.cts +27 -2
- package/dist/core/store/vendored_abi/abi.d.ts +27 -2
- package/dist/core/store/vendored_abi/abi.d.ts.map +1 -1
- package/dist/host_commands-B2KMx8O2.cjs +1 -0
- package/dist/host_commands-ClVPvhSa.cjs +2 -0
- package/dist/host_commands-CwxVQS1z.js +1524 -0
- package/dist/host_commands-nJvTy88E.js +1667 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +15 -10
- package/dist/index.d.ts +15 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.development.cjs +1 -1
- package/dist/index.development.js +5804 -5203
- package/dist/index.js +5323 -4764
- package/dist/internal.cjs +2 -2
- package/dist/internal.d.cts +5 -2
- package/dist/internal.d.ts +5 -2
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.development.cjs +1 -1
- package/dist/internal.development.js +70 -20
- package/dist/internal.js +138 -83
- package/dist/plugins/abi-D3V-QUSf.cjs +1 -0
- package/dist/plugins/abi-NP8pNxpd.js +42 -0
- package/dist/plugins/arrays-Dr_1hCjL.js +28 -0
- package/dist/plugins/arrays-Dt-Joc4i.cjs +1 -0
- package/dist/plugins/assertions-gtDVfbnQ.js +6 -0
- package/dist/plugins/assertions-z5GQd_bB.cjs +1 -0
- package/dist/{extensions → plugins}/editor/editor.d.cts +54 -54
- package/dist/{extensions → plugins}/editor/editor.d.ts +54 -54
- package/dist/plugins/editor/editor.d.ts.map +1 -0
- package/dist/{extensions → plugins}/editor/field_handle.d.cts +12 -12
- package/dist/{extensions → plugins}/editor/field_handle.d.ts +12 -12
- package/dist/plugins/editor/field_handle.d.ts.map +1 -0
- package/dist/plugins/editor/index.d.cts +22 -0
- package/dist/plugins/editor/index.d.ts +22 -0
- package/dist/plugins/editor/index.d.ts.map +1 -0
- package/dist/plugins/editor.cjs +1 -0
- package/dist/plugins/editor.d.cts +1 -0
- package/dist/plugins/editor.d.ts +1 -0
- package/dist/plugins/editor.development.cjs +1 -0
- package/dist/{extensions/editor/index.development.js → plugins/editor.development.js} +81 -64
- package/dist/{extensions/editor/index.js → plugins/editor.js} +81 -64
- package/dist/plugins/events/event_channel.d.cts +13 -0
- package/dist/plugins/events/event_channel.d.ts +13 -0
- package/dist/plugins/events/event_channel.d.ts.map +1 -0
- package/dist/plugins/events/event_registry.d.cts +22 -0
- package/dist/plugins/events/event_registry.d.ts +22 -0
- package/dist/plugins/events/event_registry.d.ts.map +1 -0
- package/dist/plugins/events/facade.d.cts +26 -0
- package/dist/plugins/events/facade.d.ts +26 -0
- package/dist/plugins/events/facade.d.ts.map +1 -0
- package/dist/plugins/events/index.d.cts +10 -0
- package/dist/plugins/events/index.d.ts +10 -0
- package/dist/plugins/events/index.d.ts.map +1 -0
- package/dist/plugins/events.cjs +1 -0
- package/dist/plugins/events.d.cts +1 -0
- package/dist/plugins/events.d.ts +1 -0
- package/dist/plugins/events.development.cjs +1 -0
- package/dist/plugins/events.development.js +174 -0
- package/dist/plugins/events.js +159 -0
- package/dist/plugins/observers/index.d.cts +23 -0
- package/dist/plugins/observers/index.d.ts +23 -0
- package/dist/plugins/observers/index.d.ts.map +1 -0
- package/dist/plugins/observers/observer_registry.d.cts +101 -0
- package/dist/plugins/observers/observer_registry.d.ts +101 -0
- package/dist/plugins/observers/observer_registry.d.ts.map +1 -0
- package/dist/plugins/observers.cjs +1 -0
- package/dist/plugins/observers.d.cts +1 -0
- package/dist/plugins/observers.d.ts +1 -0
- package/dist/plugins/observers.development.cjs +1 -0
- package/dist/plugins/observers.development.js +431 -0
- package/dist/plugins/observers.js +403 -0
- package/dist/plugins/relation_store-BsoegrZh.js +313 -0
- package/dist/plugins/relation_store-DQKSnxsm.cjs +1 -0
- package/dist/plugins/relation_store-RBhpcE28.cjs +1 -0
- package/dist/plugins/relation_store-RqW5Snx6.js +328 -0
- package/dist/plugins/relations/builtin_relations.d.cts +48 -0
- package/dist/plugins/relations/builtin_relations.d.ts +48 -0
- package/dist/plugins/relations/builtin_relations.d.ts.map +1 -0
- package/dist/plugins/relations/facade.d.cts +73 -0
- package/dist/plugins/relations/facade.d.ts +73 -0
- package/dist/plugins/relations/facade.d.ts.map +1 -0
- package/dist/plugins/relations/index.d.cts +11 -0
- package/dist/plugins/relations/index.d.ts +11 -0
- package/dist/plugins/relations/index.d.ts.map +1 -0
- package/dist/{core/ecs → plugins/relations}/relation_service.d.cts +85 -97
- package/dist/{core/ecs → plugins/relations}/relation_service.d.ts +85 -97
- package/dist/plugins/relations/relation_service.d.ts.map +1 -0
- package/dist/plugins/relations/relation_store.d.cts +177 -0
- package/dist/plugins/relations/relation_store.d.ts +177 -0
- package/dist/plugins/relations/relation_store.d.ts.map +1 -0
- package/dist/plugins/relations.cjs +1 -0
- package/dist/plugins/relations.d.cts +1 -0
- package/dist/plugins/relations.d.ts +1 -0
- package/dist/plugins/relations.development.cjs +1 -0
- package/dist/plugins/relations.development.js +603 -0
- package/dist/plugins/relations.js +553 -0
- package/dist/plugins/snapshots/index.d.cts +33 -0
- package/dist/plugins/snapshots/index.d.ts +33 -0
- package/dist/plugins/snapshots/index.d.ts.map +1 -0
- package/dist/plugins/snapshots/resume.d.cts +57 -0
- package/dist/plugins/snapshots/resume.d.ts +57 -0
- package/dist/plugins/snapshots/resume.d.ts.map +1 -0
- package/dist/plugins/snapshots/snapshot_service.d.cts +59 -0
- package/dist/plugins/snapshots/snapshot_service.d.ts +59 -0
- package/dist/plugins/snapshots/snapshot_service.d.ts.map +1 -0
- package/dist/plugins/snapshots.cjs +1 -0
- package/dist/plugins/snapshots.d.cts +1 -0
- package/dist/plugins/snapshots.d.ts +1 -0
- package/dist/plugins/snapshots.development.cjs +1 -0
- package/dist/plugins/snapshots.development.js +737 -0
- package/dist/plugins/snapshots.js +737 -0
- package/dist/plugins/solid/index.d.cts +8 -0
- package/dist/plugins/solid/index.d.ts +8 -0
- package/dist/plugins/solid/index.d.ts.map +1 -0
- package/dist/plugins/solid/solid.d.cts +97 -0
- package/dist/plugins/solid/solid.d.ts +97 -0
- package/dist/plugins/solid/solid.d.ts.map +1 -0
- package/dist/plugins/solid.cjs +1 -0
- package/dist/plugins/solid.d.cts +1 -0
- package/dist/plugins/solid.d.ts +1 -0
- package/dist/plugins/solid.development.cjs +1 -0
- package/dist/plugins/solid.development.js +319 -0
- package/dist/plugins/solid.js +319 -0
- package/dist/plugins/workers/index.d.cts +75 -0
- package/dist/plugins/workers/index.d.ts +75 -0
- package/dist/plugins/workers/index.d.ts.map +1 -0
- package/dist/plugins/workers/node_threads.d.cts +25 -0
- package/dist/plugins/workers/node_threads.d.ts +25 -0
- package/dist/plugins/workers/node_threads.d.ts.map +1 -0
- package/dist/plugins/workers/plan.d.cts +61 -0
- package/dist/plugins/workers/plan.d.ts +61 -0
- package/dist/plugins/workers/plan.d.ts.map +1 -0
- package/dist/plugins/workers/pool.d.cts +144 -0
- package/dist/plugins/workers/pool.d.ts +144 -0
- package/dist/plugins/workers/pool.d.ts.map +1 -0
- package/dist/plugins/workers/protocol.d.cts +112 -0
- package/dist/plugins/workers/protocol.d.ts +112 -0
- package/dist/plugins/workers/protocol.d.ts.map +1 -0
- package/dist/plugins/workers/worker_bind.d.cts +64 -0
- package/dist/plugins/workers/worker_bind.d.ts +64 -0
- package/dist/plugins/workers/worker_bind.d.ts.map +1 -0
- package/dist/plugins/workers/worker_loop.d.cts +14 -0
- package/dist/plugins/workers/worker_loop.d.ts +14 -0
- package/dist/plugins/workers/worker_loop.d.ts.map +1 -0
- package/dist/plugins/workers.cjs +1 -0
- package/dist/plugins/workers.d.cts +1 -0
- package/dist/plugins/workers.d.ts +1 -0
- package/dist/plugins/workers.development.cjs +1 -0
- package/dist/plugins/workers.development.js +596 -0
- package/dist/plugins/workers.js +474 -0
- package/dist/primitives.cjs +1 -1
- package/dist/primitives.d.cts +4 -4
- package/dist/primitives.d.ts +4 -4
- package/dist/primitives.development.cjs +1 -1
- package/dist/primitives.development.js +66 -22
- package/dist/primitives.js +66 -22
- package/dist/shared-BKl12xF1.js +132 -0
- package/dist/shared-Dk-pACZT.cjs +1 -0
- package/dist/shared.cjs +1 -1
- package/dist/shared.d.cts +7 -7
- package/dist/shared.d.ts +7 -7
- package/dist/shared.d.ts.map +1 -1
- package/dist/shared.development.cjs +1 -1
- package/dist/shared.development.js +4 -3
- package/dist/shared.js +4 -3
- package/dist/topological_sort-Cc_yXqPT.js +346 -0
- package/dist/topological_sort-vp1imU6D.cjs +1 -0
- package/dist/type_primitives/assertions.d.cts +12 -16
- package/dist/type_primitives/assertions.d.ts +12 -16
- package/dist/type_primitives/assertions.d.ts.map +1 -1
- package/dist/type_primitives/binary_heap/binary_heap.d.cts +2 -6
- package/dist/type_primitives/binary_heap/binary_heap.d.ts +2 -6
- package/dist/type_primitives/binary_heap/binary_heap.d.ts.map +1 -1
- package/dist/type_primitives/bitset/bitset.d.cts +7 -11
- package/dist/type_primitives/bitset/bitset.d.ts +7 -11
- package/dist/type_primitives/bitset/bitset.d.ts.map +1 -1
- package/dist/type_primitives/brand.d.cts +2 -7
- package/dist/type_primitives/brand.d.ts +2 -7
- package/dist/type_primitives/brand.d.ts.map +1 -1
- package/dist/type_primitives/error.d.cts +1 -2
- package/dist/type_primitives/error.d.ts +1 -2
- package/dist/type_primitives/error.d.ts.map +1 -1
- package/dist/type_primitives/index.d.cts +1 -1
- package/dist/type_primitives/index.d.ts +1 -1
- package/dist/type_primitives/sparse_map/sparse_map.d.cts +3 -7
- package/dist/type_primitives/sparse_map/sparse_map.d.ts +3 -7
- package/dist/type_primitives/sparse_map/sparse_map.d.ts.map +1 -1
- package/dist/type_primitives/sparse_set/sparse_set.d.cts +2 -6
- package/dist/type_primitives/sparse_set/sparse_set.d.ts +2 -6
- package/dist/type_primitives/sparse_set/sparse_set.d.ts.map +1 -1
- package/dist/type_primitives/topological_sort/topological_sort.d.cts +1 -5
- package/dist/type_primitives/topological_sort/topological_sort.d.ts +1 -5
- package/dist/type_primitives/topological_sort/topological_sort.d.ts.map +1 -1
- package/dist/type_primitives/typed_arrays/typed_arrays.d.cts +16 -15
- package/dist/type_primitives/typed_arrays/typed_arrays.d.ts +16 -15
- package/dist/type_primitives/typed_arrays/typed_arrays.d.ts.map +1 -1
- package/dist/utils/error.d.ts.map +1 -1
- package/dist/version.d.cts +3 -3
- package/dist/version.d.ts +3 -3
- package/dist/worker.cjs +1 -0
- package/dist/worker.d.cts +17 -0
- package/dist/worker.d.ts +17 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.development.cjs +1 -0
- package/dist/worker.development.js +253 -0
- package/dist/worker.js +253 -0
- package/package.json +363 -191
- package/dist/core/ecs/builtin_relations.d.cts +0 -43
- package/dist/core/ecs/builtin_relations.d.ts +0 -43
- package/dist/core/ecs/builtin_relations.d.ts.map +0 -1
- package/dist/core/ecs/event_registry.d.cts +0 -22
- package/dist/core/ecs/event_registry.d.ts +0 -22
- package/dist/core/ecs/event_registry.d.ts.map +0 -1
- package/dist/core/ecs/relation_service.d.ts.map +0 -1
- package/dist/core/ecs/resume.d.cts +0 -85
- package/dist/core/ecs/resume.d.ts +0 -85
- package/dist/core/ecs/resume.d.ts.map +0 -1
- package/dist/core/ecs/snapshot_service.d.cts +0 -94
- package/dist/core/ecs/snapshot_service.d.ts +0 -94
- package/dist/core/ecs/snapshot_service.d.ts.map +0 -1
- package/dist/extensions/editor/editor.d.ts.map +0 -1
- package/dist/extensions/editor/field_handle.d.ts.map +0 -1
- package/dist/extensions/editor/index.cjs +0 -1
- package/dist/extensions/editor/index.d.cts +0 -21
- package/dist/extensions/editor/index.d.ts +0 -21
- package/dist/extensions/editor/index.d.ts.map +0 -1
- package/dist/extensions/editor/index.development.cjs +0 -1
- package/dist/extensions/reactive/ecs_sync.d.cts +0 -214
- package/dist/extensions/reactive/ecs_sync.d.ts +0 -214
- package/dist/extensions/reactive/ecs_sync.d.ts.map +0 -1
- package/dist/extensions/reactive/index.cjs +0 -1
- package/dist/extensions/reactive/index.d.cts +0 -23
- package/dist/extensions/reactive/index.d.ts +0 -23
- package/dist/extensions/reactive/index.d.ts.map +0 -1
- package/dist/extensions/reactive/index.development.cjs +0 -1
- package/dist/extensions/reactive/index.development.js +0 -215
- package/dist/extensions/reactive/index.js +0 -215
- package/dist/extensions/solid/index.cjs +0 -1
- package/dist/extensions/solid/index.d.cts +0 -6
- package/dist/extensions/solid/index.d.ts +0 -6
- package/dist/extensions/solid/index.d.ts.map +0 -1
- package/dist/extensions/solid/index.development.cjs +0 -1
- package/dist/extensions/solid/index.development.js +0 -40
- package/dist/extensions/solid/index.js +0 -36
- package/dist/extensions/solid/kernel_solid.d.cts +0 -45
- package/dist/extensions/solid/kernel_solid.d.ts +0 -45
- package/dist/extensions/solid/kernel_solid.d.ts.map +0 -1
- package/dist/host_commands-BlR3oZ3x.js +0 -2406
- package/dist/host_commands-C2cpU3yC.cjs +0 -1
- package/dist/internal-BoxWl4dG.js +0 -2565
- package/dist/internal-CGBEwfeB.cjs +0 -2
- package/dist/interop-CT-REx0W.cjs +0 -1
- package/dist/interop-CcY6ASQc.js +0 -18
- package/dist/interop-DqxleBo7.js +0 -18
- package/dist/interop-T1HZ-Dpa.cjs +0 -1
- package/dist/kernel-Cz2Kxlwl.js +0 -240
- package/dist/kernel-DgyrLFjW.js +0 -227
- package/dist/kernel-sw7ScKWu.cjs +0 -1
- package/dist/kernel-yWV3XnAb.cjs +0 -1
- package/dist/reactive/array.d.cts +0 -24
- package/dist/reactive/array.d.ts +0 -24
- package/dist/reactive/array.d.ts.map +0 -1
- package/dist/reactive/index.cjs +0 -1
- package/dist/reactive/index.d.cts +0 -11
- package/dist/reactive/index.d.ts +0 -11
- package/dist/reactive/index.d.ts.map +0 -1
- package/dist/reactive/index.development.cjs +0 -1
- package/dist/reactive/index.development.js +0 -18
- package/dist/reactive/index.js +0 -18
- package/dist/reactive/interop.d.cts +0 -19
- package/dist/reactive/interop.d.ts +0 -19
- package/dist/reactive/interop.d.ts.map +0 -1
- package/dist/reactive/kernel.d.cts +0 -73
- package/dist/reactive/kernel.d.ts +0 -73
- package/dist/reactive/kernel.d.ts.map +0 -1
- package/dist/reactive/map.d.cts +0 -16
- package/dist/reactive/map.d.ts +0 -16
- package/dist/reactive/map.d.ts.map +0 -1
- package/dist/reactive/shallow.d.cts +0 -11
- package/dist/reactive/shallow.d.ts +0 -11
- package/dist/reactive/shallow.d.ts.map +0 -1
- package/dist/reactive/struct.d.cts +0 -10
- package/dist/reactive/struct.d.ts +0 -10
- package/dist/reactive/struct.d.ts.map +0 -1
- package/dist/shallow-Bs39EPh1.js +0 -150
- package/dist/shallow-C5YmTbtb.cjs +0 -1
- package/dist/shallow-CiFC70Dz.js +0 -159
- package/dist/shallow-DQ8aG51_.cjs +0 -1
- package/dist/shared-B4v0L1cw.js +0 -109
- package/dist/shared-DU78k0pU.cjs +0 -1
- package/dist/topological_sort-BDvEyb9W.cjs +0 -1
- package/dist/topological_sort-DK6EjpWa.js +0 -135
- package/dist/typed_arrays-D3NmwtCG.cjs +0 -1
- package/dist/typed_arrays-DIVwVy5_.js +0 -258
|
@@ -1,64 +1,68 @@
|
|
|
1
|
-
import { STORE_MAGIC, SIM_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS } from './vendored_abi/abi.cjs';
|
|
2
|
-
export { STORE_MAGIC, SIM_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS };
|
|
1
|
+
import { STORE_MAGIC, SIM_ABI_VERSION, LEGACY_ABSOLUTE_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS } from './vendored_abi/abi.cjs';
|
|
2
|
+
export { STORE_MAGIC, SIM_ABI_VERSION, LEGACY_ABSOLUTE_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS };
|
|
3
3
|
export interface StoreHeader {
|
|
4
|
-
/** Magic value `STORE_MAGIC
|
|
4
|
+
/** Magic value `STORE_MAGIC`. Used to detect a stale or foreign buffer
|
|
5
5
|
* before any other field is trusted. */
|
|
6
6
|
readonly magic: number;
|
|
7
|
-
/** ABI version
|
|
7
|
+
/** ABI version. Mismatch means the WASM and TS disagree on layout and
|
|
8
8
|
* the SAB must not be used. */
|
|
9
9
|
readonly simAbiVersion: number;
|
|
10
|
-
/** Monotonic
|
|
10
|
+
/** Monotonic. Incremented every time the host reallocates the SAB.
|
|
11
11
|
* Cached TypedArray views become stale on bump. */
|
|
12
12
|
readonly viewStamp: number;
|
|
13
|
-
/**
|
|
13
|
+
/** Store span in bytes, measured from the store base. The store writes
|
|
14
|
+
* only inside `[storeBase, storeBase + capacity)`. */
|
|
14
15
|
readonly capacity: number;
|
|
15
16
|
/** Number of archetype regions described by the layout descriptor. */
|
|
16
17
|
readonly archetypeCount: number;
|
|
17
|
-
/** Byte offset
|
|
18
|
+
/** Byte offset of the layout descriptor region, measured from the store
|
|
19
|
+
* base. */
|
|
18
20
|
readonly layoutDescriptorOff: number;
|
|
19
21
|
/** Byte offset of the WASM→TS command ring header. */
|
|
20
22
|
readonly commandRingOff: number;
|
|
21
23
|
/** Byte offset of the TS→WASM action ring header. */
|
|
22
24
|
readonly actionRingOff: number;
|
|
23
25
|
/** Byte offset of the entity-index region (entityId → archetype_id,
|
|
24
|
-
* row, generation lookup). 0 means absent
|
|
26
|
+
* row, generation lookup). 0 means absent, fixtures and bare-SAB
|
|
25
27
|
* tests that don't need the index see the v1 layout (the engine's
|
|
26
28
|
* `Store` always allocates one). */
|
|
27
29
|
readonly entityIndexOff: number;
|
|
28
30
|
/** Byte offset of the event ring region (ECS signal payloads shared
|
|
29
|
-
* with
|
|
31
|
+
* with a compute backend). 0 means absent. */
|
|
30
32
|
readonly eventRingOff: number;
|
|
31
|
-
/** Byte offset of the region-table directory
|
|
33
|
+
/** Byte offset of the region-table directory, a `RegionTableEntry[]`
|
|
32
34
|
* (`(region_id, byte_offset, byte_length)` triples) holding one entry
|
|
33
35
|
* per consumer-declared region. 0 means no consumer regions were
|
|
34
|
-
* declared. The engine treats `region_id` as opaque
|
|
35
|
-
* its region with `findRegionOffset(view,
|
|
36
|
-
*
|
|
37
|
-
* offset fields
|
|
38
|
-
*
|
|
36
|
+
* declared. The engine treats `region_id` as opaque. A consumer resolves
|
|
37
|
+
* its region with `findRegionOffset(view, id)` in TS, or with the
|
|
38
|
+
* matching module-side lookup. Replaces the five consumer-named
|
|
39
|
+
* offset fields the SAB header used to hard-code. This de-games the SAB
|
|
40
|
+
* substrate. */
|
|
39
41
|
readonly regionTableOff: number;
|
|
40
42
|
/** Number of `RegionTableEntry` records at `region_table_off`. */
|
|
41
43
|
readonly regionTableCount: number;
|
|
42
|
-
/** Byte offset of the sim-bindings region
|
|
43
|
-
* `(component_id, field_id)`
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* by passing `bindingsRegionBytes` to `createColumnStore`; 0 = absent (a
|
|
50
|
-
* pure-TS game pays nothing for this region). The size is a runtime input,
|
|
51
|
-
* not an engine ABI constant. (v5 / "SAB-is-the-interface".) */
|
|
44
|
+
/** Byte offset of the sim-bindings region, an opaque block of `u16`
|
|
45
|
+
* `(component_id, field_id)` ids. The consumer owns the layout, and the host
|
|
46
|
+
* writes the block once per layout. A WASM per-system export reads its ids
|
|
47
|
+
* from here instead of taking them as call args. Present only when the
|
|
48
|
+
* consumer opts into a WASM backend by passing `bindingsRegionBytes` to
|
|
49
|
+
* `createColumnStore`. 0 = absent, so a pure-TS world pays nothing for this
|
|
50
|
+
* region. The size is a runtime input, not an engine ABI constant. */
|
|
52
51
|
readonly bindingsOff: number;
|
|
53
52
|
}
|
|
53
|
+
/** Write the header at offset 0 of `view`. The caller passes a `DataView`
|
|
54
|
+
* whose start is the store base, so every offset the header carries stays
|
|
55
|
+
* relative to that base. */
|
|
54
56
|
export declare function writeStoreHeader(view: DataView, h: StoreHeader): void;
|
|
57
|
+
/** Read the header at offset 0 of `view`. Pass a `DataView` whose start is the
|
|
58
|
+
* store base. */
|
|
55
59
|
export declare function readStoreHeader(view: DataView): StoreHeader;
|
|
56
60
|
/** Increment `view_stamp` in place after a host-side SAB reallocation. The
|
|
57
61
|
* monotonic counter is the trigger for cached-view invalidation on the TS
|
|
58
62
|
* side and for re-pointing in WASM. */
|
|
59
63
|
export declare function bumpViewStamp(view: DataView): number;
|
|
60
|
-
/** True iff the buffer's first four bytes are `STORE_MAGIC`
|
|
64
|
+
/** True iff the buffer's first four bytes are `STORE_MAGIC` and the ABI
|
|
61
65
|
* version matches the current build. Used by both TS and WASM as a
|
|
62
66
|
* pre-flight before treating any other field as meaningful. */
|
|
63
|
-
export declare function
|
|
67
|
+
export declare function isValidStoreHeader(view: DataView): boolean;
|
|
64
68
|
//# sourceMappingURL=header.d.ts.map
|
|
@@ -1,64 +1,68 @@
|
|
|
1
|
-
import { STORE_MAGIC, SIM_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS } from './vendored_abi/abi.js';
|
|
2
|
-
export { STORE_MAGIC, SIM_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS };
|
|
1
|
+
import { STORE_MAGIC, SIM_ABI_VERSION, LEGACY_ABSOLUTE_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS } from './vendored_abi/abi.js';
|
|
2
|
+
export { STORE_MAGIC, SIM_ABI_VERSION, LEGACY_ABSOLUTE_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS };
|
|
3
3
|
export interface StoreHeader {
|
|
4
|
-
/** Magic value `STORE_MAGIC
|
|
4
|
+
/** Magic value `STORE_MAGIC`. Used to detect a stale or foreign buffer
|
|
5
5
|
* before any other field is trusted. */
|
|
6
6
|
readonly magic: number;
|
|
7
|
-
/** ABI version
|
|
7
|
+
/** ABI version. Mismatch means the WASM and TS disagree on layout and
|
|
8
8
|
* the SAB must not be used. */
|
|
9
9
|
readonly simAbiVersion: number;
|
|
10
|
-
/** Monotonic
|
|
10
|
+
/** Monotonic. Incremented every time the host reallocates the SAB.
|
|
11
11
|
* Cached TypedArray views become stale on bump. */
|
|
12
12
|
readonly viewStamp: number;
|
|
13
|
-
/**
|
|
13
|
+
/** Store span in bytes, measured from the store base. The store writes
|
|
14
|
+
* only inside `[storeBase, storeBase + capacity)`. */
|
|
14
15
|
readonly capacity: number;
|
|
15
16
|
/** Number of archetype regions described by the layout descriptor. */
|
|
16
17
|
readonly archetypeCount: number;
|
|
17
|
-
/** Byte offset
|
|
18
|
+
/** Byte offset of the layout descriptor region, measured from the store
|
|
19
|
+
* base. */
|
|
18
20
|
readonly layoutDescriptorOff: number;
|
|
19
21
|
/** Byte offset of the WASM→TS command ring header. */
|
|
20
22
|
readonly commandRingOff: number;
|
|
21
23
|
/** Byte offset of the TS→WASM action ring header. */
|
|
22
24
|
readonly actionRingOff: number;
|
|
23
25
|
/** Byte offset of the entity-index region (entityId → archetype_id,
|
|
24
|
-
* row, generation lookup). 0 means absent
|
|
26
|
+
* row, generation lookup). 0 means absent, fixtures and bare-SAB
|
|
25
27
|
* tests that don't need the index see the v1 layout (the engine's
|
|
26
28
|
* `Store` always allocates one). */
|
|
27
29
|
readonly entityIndexOff: number;
|
|
28
30
|
/** Byte offset of the event ring region (ECS signal payloads shared
|
|
29
|
-
* with
|
|
31
|
+
* with a compute backend). 0 means absent. */
|
|
30
32
|
readonly eventRingOff: number;
|
|
31
|
-
/** Byte offset of the region-table directory
|
|
33
|
+
/** Byte offset of the region-table directory, a `RegionTableEntry[]`
|
|
32
34
|
* (`(region_id, byte_offset, byte_length)` triples) holding one entry
|
|
33
35
|
* per consumer-declared region. 0 means no consumer regions were
|
|
34
|
-
* declared. The engine treats `region_id` as opaque
|
|
35
|
-
* its region with `findRegionOffset(view,
|
|
36
|
-
*
|
|
37
|
-
* offset fields
|
|
38
|
-
*
|
|
36
|
+
* declared. The engine treats `region_id` as opaque. A consumer resolves
|
|
37
|
+
* its region with `findRegionOffset(view, id)` in TS, or with the
|
|
38
|
+
* matching module-side lookup. Replaces the five consumer-named
|
|
39
|
+
* offset fields the SAB header used to hard-code. This de-games the SAB
|
|
40
|
+
* substrate. */
|
|
39
41
|
readonly regionTableOff: number;
|
|
40
42
|
/** Number of `RegionTableEntry` records at `region_table_off`. */
|
|
41
43
|
readonly regionTableCount: number;
|
|
42
|
-
/** Byte offset of the sim-bindings region
|
|
43
|
-
* `(component_id, field_id)`
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* by passing `bindingsRegionBytes` to `createColumnStore`; 0 = absent (a
|
|
50
|
-
* pure-TS game pays nothing for this region). The size is a runtime input,
|
|
51
|
-
* not an engine ABI constant. (v5 / "SAB-is-the-interface".) */
|
|
44
|
+
/** Byte offset of the sim-bindings region, an opaque block of `u16`
|
|
45
|
+
* `(component_id, field_id)` ids. The consumer owns the layout, and the host
|
|
46
|
+
* writes the block once per layout. A WASM per-system export reads its ids
|
|
47
|
+
* from here instead of taking them as call args. Present only when the
|
|
48
|
+
* consumer opts into a WASM backend by passing `bindingsRegionBytes` to
|
|
49
|
+
* `createColumnStore`. 0 = absent, so a pure-TS world pays nothing for this
|
|
50
|
+
* region. The size is a runtime input, not an engine ABI constant. */
|
|
52
51
|
readonly bindingsOff: number;
|
|
53
52
|
}
|
|
53
|
+
/** Write the header at offset 0 of `view`. The caller passes a `DataView`
|
|
54
|
+
* whose start is the store base, so every offset the header carries stays
|
|
55
|
+
* relative to that base. */
|
|
54
56
|
export declare function writeStoreHeader(view: DataView, h: StoreHeader): void;
|
|
57
|
+
/** Read the header at offset 0 of `view`. Pass a `DataView` whose start is the
|
|
58
|
+
* store base. */
|
|
55
59
|
export declare function readStoreHeader(view: DataView): StoreHeader;
|
|
56
60
|
/** Increment `view_stamp` in place after a host-side SAB reallocation. The
|
|
57
61
|
* monotonic counter is the trigger for cached-view invalidation on the TS
|
|
58
62
|
* side and for re-pointing in WASM. */
|
|
59
63
|
export declare function bumpViewStamp(view: DataView): number;
|
|
60
|
-
/** True iff the buffer's first four bytes are `STORE_MAGIC`
|
|
64
|
+
/** True iff the buffer's first four bytes are `STORE_MAGIC` and the ABI
|
|
61
65
|
* version matches the current build. Used by both TS and WASM as a
|
|
62
66
|
* pre-flight before treating any other field as meaningful. */
|
|
63
|
-
export declare function
|
|
67
|
+
export declare function isValidStoreHeader(view: DataView): boolean;
|
|
64
68
|
//# sourceMappingURL=header.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/core/store/header.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/core/store/header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8EG;AAmBH,OAAO,EACN,WAAW,EACX,eAAe,EACf,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,WAAW,EACX,eAAe,EACf,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,CAAC;AAEF,MAAM,WAAW,WAAW;IAC3B;4CACwC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;mCAC+B;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;uDACmD;IACnD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;0DACsD;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sEAAsE;IACtE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;eACW;IACX,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,sDAAsD;IACtD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,qDAAqD;IACrD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;wCAGoC;IACpC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;kDAC8C;IAC9C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B;;;;;;;oBAOgB;IAChB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,kEAAkE;IAClE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC;;;;;;0EAMsE;IACtE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC7B;AAED;;4BAE4B;AAC5B,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAcrE;AAED;iBACiB;AACjB,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,CAgB3D;AAED;;uCAEuC;AACvC,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAIpD;AAED;;+DAE+D;AAC/D,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAK1D"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export { STORE_MAGIC, SIM_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS, type StoreHeader, writeStoreHeader, readStoreHeader, bumpViewStamp,
|
|
2
|
-
export { type StoreRegionSpec, type RegionTableEntry, type ColumnStoreRegionHandle, RegionRegistryError, regionTableBytes,
|
|
3
|
-
export { TYPE_TAG, type TypeTagValue, TYPE_TAG_STRIDE, TYPED_ARRAY_TAG_TO_TYPE_TAG, COLUMN_DESCRIPTOR_BYTES, COLUMN_DESCRIPTOR_OFFSETS, type ColumnDescriptor, writeColumnDescriptor, readColumnDescriptor, ARCHETYPE_DESCRIPTOR_HEADER_BYTES, ARCHETYPE_DESCRIPTOR_OFFSETS, COMPONENT_MASK_WORDS, STORE_DESCRIPTOR_COMPONENT_LIMIT, type ArchetypeDescriptor, archetypeDescriptorBytes, writeArchetypeDescriptor, readArchetypeDescriptor, writeLayoutDescriptorRegion, readLayoutDescriptorRegion, layoutDescriptorRegionBytes } from './descriptor.cjs';
|
|
4
|
-
export { type ColumnSpec, type ArchetypeSpec, type ColumnView, type ArchetypeViews, type ColumnStore, type AnyTypedArray, type CreateColumnStoreOptions, alignUp,
|
|
5
|
-
export { EVENT_OP_EMPTY, EVENT_RING_HEADER_BYTES, EVENT_RING_SLOT_BYTES, EVENT_RING_HEADER_OFFSETS, EventRingError, drainEventRing, eventRingBytes, initEventRing, pendingEventCount, popEvent, pushEvent,
|
|
6
|
-
export { ENTITY_INDEX_HEADER_BYTES, ENTITY_INDEX_BYTES_PER_SLOT, ENTITY_INDEX_HEADER_OFFSETS, EntityIndexError,
|
|
7
|
-
export { COMMAND_OP_EMPTY, COMMAND_RING_HEADER_BYTES, COMMAND_RING_SLOT_BYTES, COMMAND_RING_HEADER_OFFSETS, CommandRingError, commandRingBytes, drainCommandRing, initCommandRing, pendingCommandCount, popCommand, pushCommand,
|
|
1
|
+
export { STORE_MAGIC, SIM_ABI_VERSION, LEGACY_ABSOLUTE_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS, type StoreHeader, writeStoreHeader, readStoreHeader, bumpViewStamp, isValidStoreHeader } from './header.cjs';
|
|
2
|
+
export { type StoreRegionSpec, type RegionTableEntry, type ColumnStoreRegionHandle, RegionRegistryError, regionTableBytes, assertRegionSpecs, writeRegionTableEntry, readRegionTableEntry, writeRegionTable, readRegionTable, readHeaderRegionTable, findRegionOffset, findRegionEntry } from './region_table.cjs';
|
|
3
|
+
export { TYPE_TAG, type TypeTagValue, TYPE_TAG_STRIDE, TYPED_ARRAY_TAG_TO_TYPE_TAG, COLUMN_DESCRIPTOR_BYTES, COLUMN_DESCRIPTOR_OFFSETS, type ColumnDescriptor, writeColumnDescriptor, readColumnDescriptor, ARCHETYPE_DESCRIPTOR_HEADER_BYTES, LEGACY_ARCHETYPE_DESCRIPTOR_HEADER_BYTES, ARCHETYPE_DESCRIPTOR_OFFSETS, COMPONENT_MASK_WORDS, STORE_DESCRIPTOR_COMPONENT_LIMIT, type ArchetypeDescriptor, archetypeDescriptorBytes, writeArchetypeDescriptor, readArchetypeDescriptor, writeLayoutDescriptorRegion, readLayoutDescriptorRegion, layoutDescriptorRegionBytes } from './descriptor.cjs';
|
|
4
|
+
export { type ColumnSpec, type ArchetypeSpec, type ColumnView, type ArchetypeViews, type ColumnStore, type AnyTypedArray, type CreateColumnStoreOptions, alignUp, createArchetypeViews, columnKey, createColumnStore, StoreLayoutOverflowError, STORE_MAX_BYTE_OFFSET, STORE_BASE_ALIGNMENT, assertStoreBase, COMMAND_RING_DEFAULT_CAPACITY_SLOTS, ENTITY_INDEX_DEFAULT_CAPACITY, EVENT_RING_DEFAULT_CAPACITY_SLOTS } from './column_store.cjs';
|
|
5
|
+
export { EVENT_OP_EMPTY, EVENT_RING_HEADER_BYTES, EVENT_RING_SLOT_BYTES, EVENT_RING_HEADER_OFFSETS, EventRingError, drainEventRing, eventRingBytes, initEventRing, pendingEventCount, popEvent, pushEvent, eventRingCapacitySlots, eventRingOverflow, eventRingReadHead, eventRingWriteHead } from './event_ring.cjs';
|
|
6
|
+
export { ENTITY_INDEX_HEADER_BYTES, ENTITY_INDEX_BYTES_PER_SLOT, ENTITY_INDEX_HEADER_OFFSETS, EntityIndexError, createEntityIndexViews, entityIndexCapacity, entityIndexLength, entityIndexRegionBytes, initEntityIndexRegion, setEntityIndexLength } from './entity_index.cjs';
|
|
7
|
+
export { COMMAND_OP_EMPTY, COMMAND_RING_HEADER_BYTES, COMMAND_RING_SLOT_BYTES, COMMAND_RING_HEADER_OFFSETS, CommandRingError, commandRingBytes, drainCommandRing, initCommandRing, pendingCommandCount, popCommand, pushCommand, commandRingCapacitySlots, commandRingOverflow, commandRingReadHead, commandRingWriteHead } from './command_ring.cjs';
|
|
8
8
|
export { type PayloadCodec, CommandDispatcher } from './command_dispatch.cjs';
|
|
9
9
|
export { BufferBackedColumn, StoreColumnOverflowError } from './buffer_backed_column.cjs';
|
|
10
10
|
export { type ArchetypeGrowSpec, type GrowPlan, type GrowResult, StoreGrowError, growColumnStore } from './grow.cjs';
|
|
11
11
|
export { type ExtendPlan, type ExtendResult, StoreExtendError, extendColumnStore } from './extend.cjs';
|
|
12
|
-
export { snapshotLiveColumns,
|
|
13
|
-
export { type BufferAllocator, type InPlaceBufferAllocator, StoreCapExceededError, SabUnavailableError, DEFAULT_SAB_ALLOCATOR, wasmMemoryAllocator, growableSabAllocator,
|
|
14
|
-
export { StoreRestoreError,
|
|
12
|
+
export { snapshotLiveColumns, restoreLiveColumns } from './layout_ops.cjs';
|
|
13
|
+
export { type BufferAllocator, type InPlaceBufferAllocator, StoreCapExceededError, SabUnavailableError, DEFAULT_SAB_ALLOCATOR, wasmMemoryAllocator, growableSabAllocator, heapArrayBufferAllocator, fixedSabAllocator } from './allocator.cjs';
|
|
14
|
+
export { StoreRestoreError, type RestoreColumnStoreOptions, columnStoreBytesView, restoreColumnStore } from './snapshot.cjs';
|
|
15
15
|
export { FNV1A_OFFSET_BASIS, FNV1A_PRIME, fnv1a32, fnv1aStep, fnv1aStepWord, columnStoreStateHash } from './state_hash.cjs';
|
|
16
16
|
export { ACTION_RING_DEFAULT_CAPACITY_SLOTS, ACTION_RING_HEADER_BYTES, ACTION_RING_HEADER_OFFSETS, ACTION_RING_MAX_PAYLOAD_BYTES, ACTION_RING_SLOT_BYTES, ActionRingError, actionRingBytes, actionRingCapacitySlots, actionRingOverflow, actionRingReadHead, actionRingWriteHead, clearActionRingOverflow, drainActionRing, initActionRing, pendingActionCount, popAction, pushAction } from './action_ring.cjs';
|
|
17
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export { STORE_MAGIC, SIM_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS, type StoreHeader, writeStoreHeader, readStoreHeader, bumpViewStamp,
|
|
2
|
-
export { type StoreRegionSpec, type RegionTableEntry, type ColumnStoreRegionHandle, RegionRegistryError, regionTableBytes,
|
|
3
|
-
export { TYPE_TAG, type TypeTagValue, TYPE_TAG_STRIDE, TYPED_ARRAY_TAG_TO_TYPE_TAG, COLUMN_DESCRIPTOR_BYTES, COLUMN_DESCRIPTOR_OFFSETS, type ColumnDescriptor, writeColumnDescriptor, readColumnDescriptor, ARCHETYPE_DESCRIPTOR_HEADER_BYTES, ARCHETYPE_DESCRIPTOR_OFFSETS, COMPONENT_MASK_WORDS, STORE_DESCRIPTOR_COMPONENT_LIMIT, type ArchetypeDescriptor, archetypeDescriptorBytes, writeArchetypeDescriptor, readArchetypeDescriptor, writeLayoutDescriptorRegion, readLayoutDescriptorRegion, layoutDescriptorRegionBytes } from './descriptor.js';
|
|
4
|
-
export { type ColumnSpec, type ArchetypeSpec, type ColumnView, type ArchetypeViews, type ColumnStore, type AnyTypedArray, type CreateColumnStoreOptions, alignUp,
|
|
5
|
-
export { EVENT_OP_EMPTY, EVENT_RING_HEADER_BYTES, EVENT_RING_SLOT_BYTES, EVENT_RING_HEADER_OFFSETS, EventRingError, drainEventRing, eventRingBytes, initEventRing, pendingEventCount, popEvent, pushEvent,
|
|
6
|
-
export { ENTITY_INDEX_HEADER_BYTES, ENTITY_INDEX_BYTES_PER_SLOT, ENTITY_INDEX_HEADER_OFFSETS, EntityIndexError,
|
|
7
|
-
export { COMMAND_OP_EMPTY, COMMAND_RING_HEADER_BYTES, COMMAND_RING_SLOT_BYTES, COMMAND_RING_HEADER_OFFSETS, CommandRingError, commandRingBytes, drainCommandRing, initCommandRing, pendingCommandCount, popCommand, pushCommand,
|
|
1
|
+
export { STORE_MAGIC, SIM_ABI_VERSION, LEGACY_ABSOLUTE_ABI_VERSION, STORE_HEADER_BYTES, STORE_HEADER_OFFSETS, REGION_TABLE_ENTRY_BYTES, REGION_TABLE_ENTRY_OFFSETS, type StoreHeader, writeStoreHeader, readStoreHeader, bumpViewStamp, isValidStoreHeader } from './header.js';
|
|
2
|
+
export { type StoreRegionSpec, type RegionTableEntry, type ColumnStoreRegionHandle, RegionRegistryError, regionTableBytes, assertRegionSpecs, writeRegionTableEntry, readRegionTableEntry, writeRegionTable, readRegionTable, readHeaderRegionTable, findRegionOffset, findRegionEntry } from './region_table.js';
|
|
3
|
+
export { TYPE_TAG, type TypeTagValue, TYPE_TAG_STRIDE, TYPED_ARRAY_TAG_TO_TYPE_TAG, COLUMN_DESCRIPTOR_BYTES, COLUMN_DESCRIPTOR_OFFSETS, type ColumnDescriptor, writeColumnDescriptor, readColumnDescriptor, ARCHETYPE_DESCRIPTOR_HEADER_BYTES, LEGACY_ARCHETYPE_DESCRIPTOR_HEADER_BYTES, ARCHETYPE_DESCRIPTOR_OFFSETS, COMPONENT_MASK_WORDS, STORE_DESCRIPTOR_COMPONENT_LIMIT, type ArchetypeDescriptor, archetypeDescriptorBytes, writeArchetypeDescriptor, readArchetypeDescriptor, writeLayoutDescriptorRegion, readLayoutDescriptorRegion, layoutDescriptorRegionBytes } from './descriptor.js';
|
|
4
|
+
export { type ColumnSpec, type ArchetypeSpec, type ColumnView, type ArchetypeViews, type ColumnStore, type AnyTypedArray, type CreateColumnStoreOptions, alignUp, createArchetypeViews, columnKey, createColumnStore, StoreLayoutOverflowError, STORE_MAX_BYTE_OFFSET, STORE_BASE_ALIGNMENT, assertStoreBase, COMMAND_RING_DEFAULT_CAPACITY_SLOTS, ENTITY_INDEX_DEFAULT_CAPACITY, EVENT_RING_DEFAULT_CAPACITY_SLOTS } from './column_store.js';
|
|
5
|
+
export { EVENT_OP_EMPTY, EVENT_RING_HEADER_BYTES, EVENT_RING_SLOT_BYTES, EVENT_RING_HEADER_OFFSETS, EventRingError, drainEventRing, eventRingBytes, initEventRing, pendingEventCount, popEvent, pushEvent, eventRingCapacitySlots, eventRingOverflow, eventRingReadHead, eventRingWriteHead } from './event_ring.js';
|
|
6
|
+
export { ENTITY_INDEX_HEADER_BYTES, ENTITY_INDEX_BYTES_PER_SLOT, ENTITY_INDEX_HEADER_OFFSETS, EntityIndexError, createEntityIndexViews, entityIndexCapacity, entityIndexLength, entityIndexRegionBytes, initEntityIndexRegion, setEntityIndexLength } from './entity_index.js';
|
|
7
|
+
export { COMMAND_OP_EMPTY, COMMAND_RING_HEADER_BYTES, COMMAND_RING_SLOT_BYTES, COMMAND_RING_HEADER_OFFSETS, CommandRingError, commandRingBytes, drainCommandRing, initCommandRing, pendingCommandCount, popCommand, pushCommand, commandRingCapacitySlots, commandRingOverflow, commandRingReadHead, commandRingWriteHead } from './command_ring.js';
|
|
8
8
|
export { type PayloadCodec, CommandDispatcher } from './command_dispatch.js';
|
|
9
9
|
export { BufferBackedColumn, StoreColumnOverflowError } from './buffer_backed_column.js';
|
|
10
10
|
export { type ArchetypeGrowSpec, type GrowPlan, type GrowResult, StoreGrowError, growColumnStore } from './grow.js';
|
|
11
11
|
export { type ExtendPlan, type ExtendResult, StoreExtendError, extendColumnStore } from './extend.js';
|
|
12
|
-
export { snapshotLiveColumns,
|
|
13
|
-
export { type BufferAllocator, type InPlaceBufferAllocator, StoreCapExceededError, SabUnavailableError, DEFAULT_SAB_ALLOCATOR, wasmMemoryAllocator, growableSabAllocator,
|
|
14
|
-
export { StoreRestoreError,
|
|
12
|
+
export { snapshotLiveColumns, restoreLiveColumns } from './layout_ops.js';
|
|
13
|
+
export { type BufferAllocator, type InPlaceBufferAllocator, StoreCapExceededError, SabUnavailableError, DEFAULT_SAB_ALLOCATOR, wasmMemoryAllocator, growableSabAllocator, heapArrayBufferAllocator, fixedSabAllocator } from './allocator.js';
|
|
14
|
+
export { StoreRestoreError, type RestoreColumnStoreOptions, columnStoreBytesView, restoreColumnStore } from './snapshot.js';
|
|
15
15
|
export { FNV1A_OFFSET_BASIS, FNV1A_PRIME, fnv1a32, fnv1aStep, fnv1aStepWord, columnStoreStateHash } from './state_hash.js';
|
|
16
16
|
export { ACTION_RING_DEFAULT_CAPACITY_SLOTS, ACTION_RING_HEADER_BYTES, ACTION_RING_HEADER_OFFSETS, ACTION_RING_MAX_PAYLOAD_BYTES, ACTION_RING_SLOT_BYTES, ActionRingError, actionRingBytes, actionRingCapacitySlots, actionRingOverflow, actionRingReadHead, actionRingWriteHead, clearActionRingOverflow, drainActionRing, initActionRing, pendingActionCount, popAction, pushAction } from './action_ring.js';
|
|
17
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/store/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,KAAK,WAAW,EAChB,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/store/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EACX,eAAe,EACf,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,KAAK,WAAW,EAChB,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,MAAM,UAAU,CAAC;AAKlB,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,QAAQ,EACR,KAAK,YAAY,EACjB,eAAe,EACf,2BAA2B,EAC3B,uBAAuB,EACvB,yBAAyB,EACzB,KAAK,gBAAgB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,iCAAiC,EACjC,wCAAwC,EACxC,4BAA4B,EAC5B,oBAAoB,EACpB,gCAAgC,EAChC,KAAK,mBAAmB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACN,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,OAAO,EACP,oBAAoB,EACpB,SAAS,EACT,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,mCAAmC,EACnC,6BAA6B,EAC7B,iCAAiC,EACjC,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,yBAAyB,EACzB,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,QAAQ,EACR,SAAS,EACT,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACN,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,EAC3B,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,gBAAgB,EAChB,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,WAAW,EACX,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,KAAK,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAEtF,OAAO,EACN,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,cAAc,EACd,eAAe,EACf,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAKnG,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvE,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,iBAAiB,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EACN,iBAAiB,EACjB,KAAK,yBAAyB,EAC9B,oBAAoB,EACpB,kBAAkB,EAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACN,kBAAkB,EAClB,WAAW,EACX,OAAO,EACP,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACN,kCAAkC,EAClC,wBAAwB,EACxB,0BAA0B,EAC1B,6BAA6B,EAC7B,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,MAAM,eAAe,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { BufferAllocator } from './allocator.cjs';
|
|
|
2
2
|
import { ArchetypeSpec, ColumnStore, ColumnStoreInternal, CreateColumnStoreOptions } from './column_store.cjs';
|
|
3
3
|
import { ArchetypeDescriptor, TypeTagValue } from './descriptor.cjs';
|
|
4
4
|
import { StoreRegionOffsetField } from './store_regions.cjs';
|
|
5
|
-
/** Per-archetype resize
|
|
5
|
+
/** Per-archetype resize and copy input, shared by `GrowPlan.archetypes` and
|
|
6
6
|
* `ExtendPlan.existing` (so callers can reuse plan-building helpers). The
|
|
7
7
|
* caller picks the new `row_capacity` and declares the current live
|
|
8
8
|
* `row_count` so the copy knows how many rows matter. */
|
|
@@ -11,9 +11,9 @@ export interface ArchetypeGrowSpec {
|
|
|
11
11
|
readonly newRowCapacity: number;
|
|
12
12
|
readonly rowCount: number;
|
|
13
13
|
}
|
|
14
|
-
/** One archetype's column-layout request for `layoutColumnsAtTail`.
|
|
15
|
-
*
|
|
16
|
-
*
|
|
14
|
+
/** One archetype's column-layout request for `layoutColumnsAtTail`. The caller
|
|
15
|
+
* resolves `stride`. Grow reuses the old column's stride verbatim. Extend
|
|
16
|
+
* derives it from `TYPE_TAG_STRIDE[typeTag]` for a brand-new column. */
|
|
17
17
|
export interface TailArchetypeLayout {
|
|
18
18
|
readonly archetypeId: number;
|
|
19
19
|
readonly componentMask: ArchetypeDescriptor["componentMask"];
|
|
@@ -25,23 +25,24 @@ export interface TailArchetypeLayout {
|
|
|
25
25
|
readonly stride: number;
|
|
26
26
|
}[];
|
|
27
27
|
}
|
|
28
|
-
/** Tail-cursor column placement
|
|
29
|
-
* layout rule and the 2³¹ offset cap.
|
|
30
|
-
*
|
|
31
|
-
*
|
|
28
|
+
/** Tail-cursor column placement, the single home for the in-place paths'
|
|
29
|
+
* layout rule and the 2³¹ offset cap. `startCursor` and every offset it
|
|
30
|
+
* produces are relative to the store base. Starting at `startCursor`
|
|
31
|
+
* (the current store span), each archetype's columns are placed
|
|
32
|
+
* `alignUp(cursor, stride)` then advanced by `stride * rowCapacity`. The
|
|
32
33
|
* final tail (last column's advance, not re-aligned) becomes the grown
|
|
33
34
|
* buffer's byteLength and is guarded past `STORE_MAX_BYTE_OFFSET` exactly
|
|
34
35
|
* like `planLayout` guards the create-time layout. Descriptors come back
|
|
35
|
-
* with `rowCount`
|
|
36
|
+
* with `rowCount` and `enabledCount` zeroed (the store side of those counters
|
|
36
37
|
* lives with the caller). */
|
|
37
38
|
export declare function layoutColumnsAtTail(startCursor: number, archetypes: readonly TailArchetypeLayout[]): {
|
|
38
39
|
descriptors: ArchetypeDescriptor[];
|
|
39
40
|
newTotal: number;
|
|
40
41
|
};
|
|
41
42
|
/** Grow an in-place-backed store's buffer to `newTotal` and mint the DataView
|
|
42
|
-
* the caller must write headers
|
|
43
|
-
* `
|
|
44
|
-
* `wasmMemoryAllocator` returns a
|
|
43
|
+
* the caller must write headers and descriptors through. `growableSabAllocator`
|
|
44
|
+
* and `heapArrayBufferAllocator` return the same buffer instance grown in place.
|
|
45
|
+
* `wasmMemoryAllocator` returns a new ref over the same linear memory, old
|
|
45
46
|
* typed-array views stay valid either way (the `isInPlace` contract), but
|
|
46
47
|
* when the ref changed the old DataView's byteLength is frozen at the
|
|
47
48
|
* pre-grow size, so a fresh DataView over the new ref is required for any
|
|
@@ -51,39 +52,47 @@ export declare function growBufferInPlace(old: ColumnStoreInternal, newTotal: nu
|
|
|
51
52
|
newView: DataView;
|
|
52
53
|
};
|
|
53
54
|
/**
|
|
54
|
-
* Byte offset where the next appended column region begins
|
|
55
|
-
* the in-place grow
|
|
55
|
+
* Byte offset where the next appended column region begins, measured from the
|
|
56
|
+
* store base. This is the tail cursor the in-place grow and extend paths pass
|
|
57
|
+
* to `layoutColumnsAtTail`.
|
|
56
58
|
*
|
|
57
|
-
* For the growable-SAB and wasm backings the buffer is sized to the live extent
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
* element access, so its `byteLength` is `maxBytes`, NOT the used size — the
|
|
63
|
-
* true tail is the header `capacity` (the logical high-water; new columns land
|
|
64
|
-
* in still-zero fixed-buffer space just past the last live column).
|
|
59
|
+
* For the growable-SAB and wasm backings the buffer is sized to the live extent,
|
|
60
|
+
* so `buffer.byteLength` minus the base is the tail. `SharedArrayBuffer.grow`
|
|
61
|
+
* resizes exactly.
|
|
62
|
+
* Wasm rounds up to a page, and its fast path deliberately lands new regions
|
|
63
|
+
* past that page-rounded tail.
|
|
65
64
|
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
65
|
+
* The pure-TS **heap** backing differs. Its buffer is a fixed `ArrayBuffer`
|
|
66
|
+
* reserved at the full cap for V8 fast-path element access, so its `byteLength`
|
|
67
|
+
* is `maxBytes`, not the used size. The true tail is the header `capacity`, the
|
|
68
|
+
* logical high-water. New columns land in still-zero fixed-buffer space
|
|
69
|
+
* immediately past the last live column.
|
|
70
|
+
*
|
|
71
|
+
* The question is whether the allocator reserved the cap, not which buffer
|
|
72
|
+
* class it returned: `fixedSabAllocator` reserves a fixed `SharedArrayBuffer`
|
|
73
|
+
* and needs the header rule, while `growableSabAllocator` grows a
|
|
74
|
+
* `SharedArrayBuffer` to the live extent and needs the `byteLength` rule. So
|
|
75
|
+
* the allocator's `reservedAtCap` marker decides. The plain-`ArrayBuffer` test
|
|
76
|
+
* stays as the fallback for a store whose allocator predates the marker, which
|
|
77
|
+
* keeps the SAB and wasm layouts byte-for-byte unchanged.
|
|
69
78
|
*/
|
|
70
79
|
export declare function tailCursorBytes(old: ColumnStoreInternal): number;
|
|
71
80
|
/**
|
|
72
81
|
* Derive `CreateColumnStoreOptions` from an old ColumnStore so a slow-path realloc
|
|
73
82
|
* preserves the same set of optional regions at the same byte offsets in the
|
|
74
|
-
* new SAB. Without this, an extend
|
|
83
|
+
* new SAB. Without this, an extend or grow would silently drop a region, the
|
|
75
84
|
* command ring's pending commands, every entity placement in the index, etc.
|
|
76
85
|
* would be lost.
|
|
77
86
|
*
|
|
78
87
|
* Walks `STORE_PREFIX_REGIONS`: each present region's `readOptions` replays the
|
|
79
88
|
* exact capacity the engine configured (regions may carry non-default sizes),
|
|
80
|
-
* not
|
|
81
|
-
* separately via `
|
|
89
|
+
* not only the default. Live state (write_head, length, …) is preserved
|
|
90
|
+
* separately via `snapshotRegions`.
|
|
82
91
|
*
|
|
83
92
|
* Also re-applies the descriptor-region headroom policy
|
|
84
|
-
* (`reservedDescriptorBytes`). Unlike the prefix regions this is
|
|
85
|
-
* read from the SAB bytes
|
|
86
|
-
* `ColumnStoreInternal._reservedDescriptorBytes
|
|
93
|
+
* (`reservedDescriptorBytes`). Unlike the prefix regions this is not
|
|
94
|
+
* read from the SAB bytes. It's a JS-side policy carried on
|
|
95
|
+
* `ColumnStoreInternal._reservedDescriptorBytes`, but it belongs here for the
|
|
87
96
|
* same reason: without it the realloc'd store drops to zero descriptor
|
|
88
97
|
* headroom and every later `extendColumnStore` takes the slow path forever.
|
|
89
98
|
* Re-reserving the same margin (additive, see `planLayout`) keeps the
|
|
@@ -92,75 +101,75 @@ export declare function tailCursorBytes(old: ColumnStoreInternal): number;
|
|
|
92
101
|
export declare function optionsFromOld(old: ColumnStore): CreateColumnStoreOptions;
|
|
93
102
|
/** A prefix-region snapshot: the live bytes of every present region from the
|
|
94
103
|
* old SAB. `mechanism` is keyed by the `StoreHeader` field holding a mechanism
|
|
95
|
-
* region's offset
|
|
96
|
-
* named header field). Pairs `
|
|
97
|
-
* `
|
|
104
|
+
* region's offset. `consumer` is keyed by `region_id` (consumer regions have no
|
|
105
|
+
* named header field). Pairs `snapshotRegions` with
|
|
106
|
+
* `restoreRegions`. */
|
|
98
107
|
export interface PrefixRegionSnapshot {
|
|
99
108
|
readonly mechanism: Map<StoreRegionOffsetField, Uint8Array>;
|
|
100
109
|
readonly consumer: Map<number, Uint8Array>;
|
|
101
110
|
}
|
|
102
111
|
/**
|
|
103
|
-
* Snapshot the live bytes of every present region
|
|
104
|
-
* regions (STORE_PREFIX_REGIONS) and
|
|
105
|
-
* directory)
|
|
112
|
+
* Snapshot the live bytes of every present region, both engine mechanism
|
|
113
|
+
* regions (STORE_PREFIX_REGIONS) and consumer regions (the region-table
|
|
114
|
+
* directory), from the old SAB before any allocator call that may detach
|
|
106
115
|
* views. Each entry is a heap `Uint8Array` copy (via `slice()`) so it survives
|
|
107
|
-
* an allocator-induced detach
|
|
116
|
+
* an allocator-induced detach. `restoreRegions` places it back at the
|
|
108
117
|
* matching offset in the new SAB.
|
|
109
118
|
*
|
|
110
|
-
* Header bytes themselves are
|
|
119
|
+
* Header bytes themselves are not snapshotted, `createColumnStore` writes the
|
|
111
120
|
* header (and the region-table directory) from scratch with the correct
|
|
112
121
|
* view_stamp (bumped after this call) and offsets.
|
|
113
122
|
*/
|
|
114
|
-
export declare function
|
|
123
|
+
export declare function snapshotRegions(old: ColumnStore): PrefixRegionSnapshot;
|
|
115
124
|
/** Restore prefix-region byte snapshots into `newStore` at the matching
|
|
116
|
-
* region offsets. Pairs with `
|
|
125
|
+
* region offsets. Pairs with `snapshotRegions`. The new SAB's regions
|
|
117
126
|
* were sized identically by `optionsFromOld`, so each snapshot lands at the
|
|
118
|
-
* same length its source had
|
|
127
|
+
* same length its source had, mechanism regions at their named header offset,
|
|
119
128
|
* consumer regions at the offset the rebuilt region-table resolves their id to. */
|
|
120
|
-
export declare function
|
|
129
|
+
export declare function restoreRegions(newStore: ColumnStore, snap: PrefixRegionSnapshot): void;
|
|
121
130
|
/**
|
|
122
|
-
* Snapshot per-archetype live column bytes from `old
|
|
131
|
+
* Snapshot per-archetype live column bytes from `old`, before any
|
|
123
132
|
* subsequent allocator call may detach the underlying typed-array views.
|
|
124
133
|
* Returned shape: `{ archetype_id → Uint8Array[] }`, one entry per
|
|
125
134
|
* column in `columnsInOrder`. Each `Uint8Array` is a fresh copy
|
|
126
135
|
* (not a view) so it survives a `WebAssembly.Memory.grow`. Archetypes
|
|
127
|
-
* with `row_count === 0` are omitted
|
|
136
|
+
* with `row_count === 0` are omitted, nothing to copy.
|
|
128
137
|
*/
|
|
129
138
|
export declare function snapshotLiveColumns(old: ColumnStore, rowCountsById: Map<number, number>): Map<number, Uint8Array[]>;
|
|
130
139
|
/**
|
|
131
140
|
* Write per-archetype column snapshots produced by `snapshotLiveColumns`
|
|
132
|
-
* into `newStore`'s column views. The snapshot's column
|
|
133
|
-
* the new archetype's `columnsInOrder` (extend
|
|
141
|
+
* into `newStore`'s column views. The snapshot's column order must match
|
|
142
|
+
* the new archetype's `columnsInOrder` (extend and grow guarantee this
|
|
134
143
|
* because they carry the column spec forward unchanged).
|
|
135
144
|
*/
|
|
136
|
-
export declare function
|
|
145
|
+
export declare function restoreLiveColumns(newStore: ColumnStore, snapshots: Map<number, Uint8Array[]>): void;
|
|
137
146
|
/**
|
|
138
147
|
* The realloc-and-republish slow path shared by `growColumnStore` and
|
|
139
|
-
* `extendColumnStore
|
|
148
|
+
* `extendColumnStore`, everything between "the specs are decided" and "the
|
|
140
149
|
* caller shapes its result":
|
|
141
150
|
*
|
|
142
|
-
* 1. Capture `view_stamp` and snapshot live rows
|
|
143
|
-
* (command ring, entity-index)
|
|
151
|
+
* 1. Capture `view_stamp` and snapshot live rows and prefix regions
|
|
152
|
+
* (command ring, entity-index) before the allocator call, the
|
|
144
153
|
* wasmMemoryAllocator may detach `old`'s views on grow, so everything
|
|
145
154
|
* needed is captured first. The prefix-region preservation is the
|
|
146
|
-
* contract `Store` relies on to keep its entity table across resizes
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
* 2. `createColumnStore` with the derived options (fresh buffer
|
|
155
|
+
* contract `Store` relies on to keep its entity table across resizes.
|
|
156
|
+
* `optionsFromOld` re-reserves the regions and the descriptor headroom,
|
|
157
|
+
* so the republished store keeps its layout and its fast paths.
|
|
158
|
+
* 2. `createColumnStore` with the derived options (fresh buffer, the same
|
|
150
159
|
* growable allocator carries forward so the new buffer also grows in
|
|
151
160
|
* place).
|
|
152
161
|
* 3. Restore live rows + prefix regions. Archetypes without a row count
|
|
153
|
-
* contributed no snapshot and stay zero-initialised
|
|
162
|
+
* contributed no snapshot and stay zero-initialised. Prefix regions
|
|
154
163
|
* overwrite the empty state `createColumnStore` initialised.
|
|
155
164
|
* 4. Bump `view_stamp` from the pre-capture value and patch the returned
|
|
156
|
-
* header so its cached `viewStamp` matches the
|
|
157
|
-
*
|
|
165
|
+
* header so its cached `viewStamp` matches the bytes written above.
|
|
166
|
+
* `createColumnStore` stamped it 0. `capacity` and
|
|
158
167
|
* `archetype_count` are already correct (createColumnStore sized them),
|
|
159
|
-
* so the spread carries them
|
|
160
|
-
* `_regionBytes` fields
|
|
168
|
+
* so the spread carries them, and the internal `_allocator` and
|
|
169
|
+
* `_regionBytes` fields, through unchanged.
|
|
161
170
|
*
|
|
162
|
-
* Every view in the returned store is fresh
|
|
163
|
-
* (`viewsPreserved: false` is the callers' contract with
|
|
171
|
+
* Every view in the returned store is fresh. Callers must refresh
|
|
172
|
+
* (`viewsPreserved: false` is the callers' contract with their callers).
|
|
164
173
|
*/
|
|
165
174
|
export declare function reallocAndRepublish(old: ColumnStore, specs: readonly ArchetypeSpec[], rowCountsById: Map<number, number>, allocator: BufferAllocator | undefined): {
|
|
166
175
|
store: ColumnStore;
|