pub struct Entity { /* private fields */ }Expand description
Lightweight unique ID, or handle, of an entity
Obtained from World::spawn. Can be stored to refer to an entity in the future.
Enable the serde feature on the crate to make this Serializeable. Some applications may be
able to save space by only serializing the output of Entity::id.
Implementations§
Source§impl Entity
impl Entity
Sourcepub const DANGLING: Entity
pub const DANGLING: Entity
An Entity that does not necessarily correspond to data in any World
Useful as a dummy value. It is possible (albeit unlikely) for a World to contain this
entity.
Sourcepub const fn to_bits(self) -> NonZero<u64>
pub const fn to_bits(self) -> NonZero<u64>
Convert to a form convenient for passing outside of rust
No particular structure is guaranteed for the returned bits.
Useful for storing entity IDs externally, or in conjunction with Entity::from_bits and
World::spawn_at for easy serialization. Alternatively, consider id for more compact
representation.
Sourcepub const fn from_bits(bits: u64) -> Option<Entity>
pub const fn from_bits(bits: u64) -> Option<Entity>
Reconstruct an Entity previously destructured with to_bits if the bitpattern is valid,
else None
Useful for storing entity IDs externally, or in conjunction with Entity::to_bits and
World::spawn_at for easy serialization.
Sourcepub const fn id(self) -> u32
pub const fn id(self) -> u32
Extract a transiently unique identifier
No two simultaneously-live entities share the same ID, but dead entities’ IDs may collide with both live and dead entities. Useful for compactly representing entities within a specific snapshot of the world, such as when serializing.
See also World::find_entity_from_id.
Trait Implementations§
Source§impl EntityExtensions for Entity
impl EntityExtensions for Entity
fn to_user_data(&self) -> u128
Source§impl Ord for Entity
impl Ord for Entity
Source§impl PartialOrd for Entity
impl PartialOrd for Entity
impl Copy for Entity
impl Eq for Entity
impl StructuralPartialEq for Entity
Auto Trait Implementations§
impl Freeze for Entity
impl RefUnwindSafe for Entity
impl Send for Entity
impl Sync for Entity
impl Unpin for Entity
impl UnwindSafe for Entity
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more