Trait specs::Storage [] [src]

pub trait Storage<T>: StorageBase + Sized {
    fn new() -> Self;
    fn get(&self, Entity) -> Option<&T>;
    fn get_mut(&mut self, Entity) -> Option<&mut T>;
    fn insert(&mut self, Entity, T);
    fn remove(&mut self, Entity) -> Option<T>;
}

Typed component storage trait.

Required Methods

fn new() -> Self

Create a new storage. This is called when you register a new component type within the world.

fn get(&self, Entity) -> Option<&T>

Try reading the data associated with an entity.

fn get_mut(&mut self, Entity) -> Option<&mut T>

Try mutating the data associated with an entity.

fn insert(&mut self, Entity, T)

Insert a new data for a given entity.

fn remove(&mut self, Entity) -> Option<T>

Remove the data associated with an entity.

Implementors