├── .github └── workflows │ └── rust.yml ├── .gitignore ├── Cargo.toml ├── README.md ├── benches └── ecs.rs ├── examples ├── add_remove_components.rs ├── create_destroy_entity.rs ├── define_component.rs └── iterations.rs ├── shard_ecs_derive ├── Cargo.toml └── src │ └── lib.rs └── src ├── archetype ├── data_access.rs ├── mod.rs └── tests.rs ├── archetype_registry ├── iterators │ ├── archetype_iter.rs │ ├── archetype_iter_mut.rs │ ├── filter_archetype_iter.rs │ ├── filter_archetype_iter_mut.rs │ ├── filter_matching_iter.rs │ ├── filter_matching_iter_mut.rs │ ├── matching_iter.rs │ ├── matching_iter_mut.rs │ └── mod.rs ├── mod.rs ├── sorted_archetype_key.rs └── tests.rs ├── constants.rs ├── descriptors ├── archetype_descriptor.rs ├── archetype_id.rs ├── component.rs ├── component_descriptor.rs ├── component_group.rs ├── component_group_descriptor.rs ├── component_type_id.rs └── mod.rs ├── entity_registry ├── archetype_index.rs ├── entity.rs ├── entry.rs ├── index_in_archetype.rs ├── iterator.rs └── mod.rs ├── fnv1a.rs ├── lib.rs ├── registry ├── mod.rs ├── registry.rs └── tests.rs └── test_components.rs /.github/workflows/rust.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/.github/workflows/rust.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/.gitignore -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/Cargo.toml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/README.md -------------------------------------------------------------------------------- /benches/ecs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/benches/ecs.rs -------------------------------------------------------------------------------- /examples/add_remove_components.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/examples/add_remove_components.rs -------------------------------------------------------------------------------- /examples/create_destroy_entity.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/examples/create_destroy_entity.rs -------------------------------------------------------------------------------- /examples/define_component.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/examples/define_component.rs -------------------------------------------------------------------------------- /examples/iterations.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/examples/iterations.rs -------------------------------------------------------------------------------- /shard_ecs_derive/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/shard_ecs_derive/Cargo.toml -------------------------------------------------------------------------------- /shard_ecs_derive/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/shard_ecs_derive/src/lib.rs -------------------------------------------------------------------------------- /src/archetype/data_access.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype/data_access.rs -------------------------------------------------------------------------------- /src/archetype/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype/mod.rs -------------------------------------------------------------------------------- /src/archetype/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype/tests.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/archetype_iter.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/archetype_iter.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/archetype_iter_mut.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/archetype_iter_mut.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/filter_archetype_iter.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/filter_archetype_iter.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/filter_archetype_iter_mut.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/filter_archetype_iter_mut.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/filter_matching_iter.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/filter_matching_iter.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/filter_matching_iter_mut.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/filter_matching_iter_mut.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/matching_iter.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/matching_iter.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/matching_iter_mut.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/matching_iter_mut.rs -------------------------------------------------------------------------------- /src/archetype_registry/iterators/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/iterators/mod.rs -------------------------------------------------------------------------------- /src/archetype_registry/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/mod.rs -------------------------------------------------------------------------------- /src/archetype_registry/sorted_archetype_key.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/sorted_archetype_key.rs -------------------------------------------------------------------------------- /src/archetype_registry/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/archetype_registry/tests.rs -------------------------------------------------------------------------------- /src/constants.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/constants.rs -------------------------------------------------------------------------------- /src/descriptors/archetype_descriptor.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/archetype_descriptor.rs -------------------------------------------------------------------------------- /src/descriptors/archetype_id.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/archetype_id.rs -------------------------------------------------------------------------------- /src/descriptors/component.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/component.rs -------------------------------------------------------------------------------- /src/descriptors/component_descriptor.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/component_descriptor.rs -------------------------------------------------------------------------------- /src/descriptors/component_group.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/component_group.rs -------------------------------------------------------------------------------- /src/descriptors/component_group_descriptor.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/component_group_descriptor.rs -------------------------------------------------------------------------------- /src/descriptors/component_type_id.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/component_type_id.rs -------------------------------------------------------------------------------- /src/descriptors/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/descriptors/mod.rs -------------------------------------------------------------------------------- /src/entity_registry/archetype_index.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/entity_registry/archetype_index.rs -------------------------------------------------------------------------------- /src/entity_registry/entity.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/entity_registry/entity.rs -------------------------------------------------------------------------------- /src/entity_registry/entry.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/entity_registry/entry.rs -------------------------------------------------------------------------------- /src/entity_registry/index_in_archetype.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/entity_registry/index_in_archetype.rs -------------------------------------------------------------------------------- /src/entity_registry/iterator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/entity_registry/iterator.rs -------------------------------------------------------------------------------- /src/entity_registry/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/entity_registry/mod.rs -------------------------------------------------------------------------------- /src/fnv1a.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/fnv1a.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/registry/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/registry/mod.rs -------------------------------------------------------------------------------- /src/registry/registry.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/registry/registry.rs -------------------------------------------------------------------------------- /src/registry/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/registry/tests.rs -------------------------------------------------------------------------------- /src/test_components.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HindrikStegenga/Shard/HEAD/src/test_components.rs --------------------------------------------------------------------------------