Struct bevy::ecs::storage::ComponentSparseSet[]

pub struct ComponentSparseSet { /* fields omitted */ }

Implementations

impl ComponentSparseSet

pub fn new(
    component_info: &ComponentInfo,
    capacity: usize
) -> ComponentSparseSet

pub fn len(&self) -> usize

pub fn is_empty(&self) -> bool

pub unsafe fn insert(
    &mut self,
    entity: Entity,
    value: *mut u8,
    change_tick: u32
)

Inserts the entity key and component value pair into this sparse set. The caller is responsible for ensuring the value is not dropped. This collection will drop the value when needed.

Safety

The value pointer must point to a valid address that matches the Layout inside the ComponentInfo given when constructing this sparse set.

pub fn contains(&self, entity: Entity) -> bool

pub fn get(&self, entity: Entity) -> Option<*mut u8>

Safety

ensure the same entity is not accessed twice at the same time

pub unsafe fn get_with_ticks(
    &self,
    entity: Entity
) -> Option<(*mut u8, *mut ComponentTicks)>

Safety

ensure the same entity is not accessed twice at the same time

pub unsafe fn get_ticks(&self, entity: Entity) -> Option<&mut ComponentTicks>

Safety

ensure the same entity is not accessed twice at the same time

pub fn remove_and_forget(&mut self, entity: Entity) -> Option<*mut u8>

Removes the entity from this sparse set and returns a pointer to the associated value (if it exists). It is the caller’s responsibility to drop the returned ptr (if Some is returned).

pub fn remove(&mut self, entity: Entity) -> bool

Trait Implementations

impl Debug for ComponentSparseSet

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Any for T where
    T: Any

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any

impl<T> Downcast<T> for T

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Upcast<T> for T

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,