Expand description
The prelude.
Re-exports§
pub use crate::FromWorld;
pub use crate::UnwrapMany;
pub use crate::World;
pub use bones_schema;
pub use crate::bitset::*;
pub use crate::components::*;
pub use crate::entities::*;
pub use crate::resources::*;
pub use crate::stage::CoreStage::*;
pub use crate::stage::*;
pub use crate::system::*;
Modules§
- General utilities for Bones meta-engine crates.
- This module contains types that can be used to implement atomic borrowing.
Structs§
- A mutable memory location with dynamically checked borrow rules This type behaves mostly like
core::cell::RefCell
. The main difference is that this type uses atomic operations for borrowing. Thus allowing to use it in multi-threaded environment. - Helper for accessing the inner data of a schema ref at runtime.
- Helper for accessing the inner data of a schema ref at runtime.
- Schema data for an enum.
- A wrapper type that implements [
IntoIterator<Item = FieldIdx>
] for an inner string to make it easier to use withSchemaRefAccess::field_path()
and other field path methods. - A
Ulid
with a human-readable ascii prefix. - Wrapper for a borrowed
AtomicCell
that will released lock on drop. - Wrapper for mutably borrowed
AtomicCell
that will released lock on drop. - A typed version of
SchemaBox
. - Typed version of a
SchemaMap
. - A typed version of a
SchemaVec
. - A owning, type-erased
Box
-like container for types with a [Schema
]. - Schema information describing the memory layout of a type.
- Derivable schema
type_data
for types that implementDeserialize
. - A struct that implements
DeserializeSeed
and can be used to deserialize values matching a given [Schema
]. - Error returned when a field is not found in a schema.
- A unique identifier for a schema registered in the
SCHEMA_REGISTRY
. - Layout information computed for
SchemaData
. - Untyped schema-aware “HashMap”.
- Access helper for a
SchemaMap
. - Mutable
SchemaMap
access helper. - Error type when attempting to cast between types with mis-matched schemas.
- An untyped reference that knows the [
Schema
] of the pointee and that can be cast to a matching type. - An untyped mutable reference that knows the [
Schema
] of the pointee and that can be cast to a matching type. - A schema registry that alloates
SchemaId
s forSchemaData
s and returns a registered [&'static Schema
][Schema]. - A type-erased
Vec
-like collection that for items with the same [Schema
]. - Access helper for a
SchemaVec
. - Mutable
SchemaVec
access helper. - A field in a
StructSchemaInfo
. - Helper for accessing the inner data of a schema ref at runtime.
- Iterator for
StructRefAccess::fields()
. - A field returned by
StructRefFieldIter
. - Helper for accessing the inner data of a schema ref at runtime.
- Iterator for
StructRefAccess::fields()
. - A field returned by
StructRefFieldIter
. - Schema data for a struct.
- A Ulid is a unique 128-bit lexicographically sortable identifier
- A wrapper struct that marks it unsafe to both create and access the inner value.
- Information about an enum variant for
EnumSchemaInfo
.
Enums§
- A type for an enum tag for
EnumSchemaInfo
. - The index of a field in a struct in a [
Schema
]. - Error creating a
LabeledId
. - Errors that can happen while parsing a
LabeledId
. - A type of primitive.
- Helper for accessing the inner data of a schema ref at runtime.
- Helper for accessing the inner data of a schema ref at runtime.
- A schema describes the data layout of a type, to enable dynamic access to the type’s data through a pointer.
- Helper for accessing the inner data of a schema ref at runtime.
- Access a schema
Constants§
- A fast, non-cryptographic, thread-local random number generator powered by turborand.
Statics§
Traits§
- The BitSet API.
- Trait implemented for types that can produce an instance of themselves from a Rust type.
- This trait provides the means to easily generate all integer types, provided the main method underpinning this is implemented:
GenCore::gen
. Once implemented, the rest of the trait provides default implementations for generating all integer types, though it is not recommended to override these. - Trait implemented for types that have a [
Schema
]. - Extension trait for automatically implementing all
TurboRand
methods, as long as the struct implements [TurboCore
] &GenCore
. All methods are provided as default implementations that build on top of [TurboCore
] andGenCore
, and thus are not recommended to be overridden, lest you potentially change the expected outcome of the methods. - Extension trait for
Ulid
.
Functions§
- An ergonomic abbreviation for
Default::default()
to make initializing structs easier. This is especially helpful when combined with “struct update syntax”. - Shortens a type name to remove all module paths.
- Hints to the compiler that the branch condition is likely to be true. Returns the value passed to it.
- Hints to the compiler that the branch condition is unlikely to be true. Returns the value passed to it.
Type Aliases§
- A [
HashMap
][hashbrown::HashMap] implementing aHash, a high speed keyed hashing algorithm intended for use in in-memory hashmaps. - A [
HashSet
][hashbrown::HashSet] implementing aHash, a high speed keyed hashing algorithm intended for use in in-memory hashmaps.