Struct bevy::ecs::storage::Table[]

pub struct Table { /* fields omitted */ }

Implementations

impl Table

pub const fn new(grow_amount: usize) -> Table

pub fn with_capacity(
    capacity: usize,
    column_capacity: usize,
    grow_amount: usize
) -> Table

pub fn entities(&self) -> &[Entity]

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]

pub fn add_archetype(&mut self, archetype_id: ArchetypeId)

pub fn add_column(&mut self, component_info: &ComponentInfo)

pub unsafe fn swap_remove_unchecked(&mut self, row: usize) -> Option<Entity>

Removes the entity at the given row and returns the entity swapped in to replace it (if an entity was swapped in)

Safety

row must be in-bounds

pub unsafe fn move_to_and_forget_missing_unchecked(
    &mut self,
    row: usize,
    new_table: &mut Table
) -> TableMoveResult

Moves the row column values to new_table, for the columns shared between both tables. Returns the index of the new row in new_table and the entity in this table swapped in to replace it (if an entity was swapped in). missing columns will be “forgotten”. It is the caller’s responsibility to drop them

Safety

Row must be in-bounds

pub unsafe fn move_to_and_drop_missing_unchecked(
    &mut self,
    row: usize,
    new_table: &mut Table
) -> TableMoveResult

Moves the row column values to new_table, for the columns shared between both tables. Returns the index of the new row in new_table and the entity in this table swapped in to replace it (if an entity was swapped in).

Safety

row must be in-bounds

pub unsafe fn move_to_superset_unchecked(
    &mut self,
    row: usize,
    new_table: &mut Table
) -> TableMoveResult

Moves the row column values to new_table, for the columns shared between both tables. Returns the index of the new row in new_table and the entity in this table swapped in to replace it (if an entity was swapped in).

Safety

row must be in-bounds. new_table must contain every component this table has

pub fn get_column(&self, component_id: ComponentId) -> Option<&Column>

pub fn get_column_mut(
    &mut self,
    component_id: ComponentId
) -> Option<&mut Column>

pub fn has_column(&self, component_id: ComponentId) -> bool

pub fn reserve(&mut self, amount: usize)

pub unsafe fn allocate(&mut self, entity: Entity) -> usize

Allocates space for a new entity

Safety

the allocated row must be written to immediately with valid values in each column

pub fn capacity(&self) -> usize

pub fn len(&self) -> usize

pub fn is_empty(&self) -> bool

pub fn iter(&self) -> impl Iterator<Item = &Column>

Auto Trait Implementations

impl !RefUnwindSafe for Table

impl !Send for Table

impl !Sync for Table

impl Unpin for Table

impl UnwindSafe for Table

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>,