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 Serialize
able. Some applications may be
able to save space by only serializing the output of Entity::id
.
Implementations
sourceimpl Entity
impl Entity
sourcepub fn to_bits(self) -> NonZeroU64
pub fn to_bits(self) -> NonZeroU64
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 fn from_bits(bits: u64) -> Option<Self>
pub fn from_bits(bits: u64) -> Option<Self>
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 fn id(self) -> u32
pub 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
sourceimpl<'de> Deserialize<'de> for Entity
impl<'de> Deserialize<'de> for Entity
sourcefn deserialize<D>(deserializer: D) -> Result<Entity, D::Error> where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Entity, D::Error> where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Ord for Entity
impl Ord for Entity
sourceimpl PartialOrd<Entity> for Entity
impl PartialOrd<Entity> for Entity
sourcefn partial_cmp(&self, other: &Entity) -> Option<Ordering>
fn partial_cmp(&self, other: &Entity) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for Entity
impl Eq for Entity
impl StructuralEq for Entity
impl StructuralPartialEq for Entity
Auto Trait Implementations
impl RefUnwindSafe for Entity
impl Send for Entity
impl Sync for Entity
impl Unpin for Entity
impl UnwindSafe for Entity
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more