Trait specs::storage::UnprotectedStorage
source · pub trait UnprotectedStorage<T>: TryDefault {
unsafe fn clean<B>(&mut self, has: B)
where
B: BitSetLike;
unsafe fn get(&self, id: Index) -> &T;
unsafe fn get_mut(&mut self, id: Index) -> &mut T;
unsafe fn insert(&mut self, id: Index, value: T);
unsafe fn remove(&mut self, id: Index) -> T;
unsafe fn drop(&mut self, id: Index) { ... }
}
Expand description
Used by the framework to quickly join components.
Required Methods
sourceunsafe fn clean<B>(&mut self, has: B)where
B: BitSetLike,
unsafe fn clean<B>(&mut self, has: B)where
B: BitSetLike,
Clean the storage given a bitset with bits set for valid indices. Allows us to safely drop the storage.
sourceunsafe fn get(&self, id: Index) -> &T
unsafe fn get(&self, id: Index) -> &T
Tries reading the data associated with an Index
.
This is unsafe because the external set used
to protect this storage is absent.