pub struct Registry<T> { /* private fields */ }Implementations§
Source§impl<T> Registry<T>
impl<T> Registry<T>
pub fn new() -> Self
pub fn len(&self) -> usize
pub fn create(&mut self, data: T) -> Id
pub fn create_as<I, E>(&mut self, data: T) -> Result<I, E>
pub fn remove(&mut self, id: impl Into<Id>) -> Result<T, InvalidId>
pub fn id_to_index(&self, id: impl Into<Id>) -> Result<usize, InvalidId>
pub fn get_by_id(&self, id: impl Into<Id>) -> Result<&T, InvalidId>
pub fn get_by_id_mut(&mut self, id: impl Into<Id>) -> Result<&mut T, InvalidId>
pub fn get_by_index(&self, index: usize) -> Result<(Id, &T), InvalidIndex>
pub fn get_by_index_mut( &mut self, index: usize, ) -> Result<(Id, &mut T), InvalidIndex>
pub fn get_by_index_as<I, E>( &self, index: usize, ) -> Result<(I, &T), InvalidIndexAs<E>>
pub fn get_by_index_mut_as<I, E>( &mut self, index: usize, ) -> Result<(I, &mut T), InvalidIndexAs<E>>
pub fn iter<'a>( &'a self, ) -> impl DoubleEndedIterator<Item = (Id, &'a T)> + 'a + Send + Sync
pub fn iter_mut<'a>( &'a mut self, ) -> impl DoubleEndedIterator<Item = (Id, &'a mut T)> + 'a + Send + Sync
pub fn into_iter<'a>( self, ) -> impl DoubleEndedIterator<Item = (Id, T)> + 'a + Send + Sync
Trait Implementations§
Source§impl<'de, T> Deserialize<'de> for Registry<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for Registry<T>where
T: Deserialize<'de>,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl<T> Freeze for Registry<T>
impl<T> RefUnwindSafe for Registry<T>where
T: RefUnwindSafe,
impl<T> Send for Registry<T>where
T: Send,
impl<T> Sync for Registry<T>where
T: Sync,
impl<T> Unpin for Registry<T>where
T: Unpin,
impl<T> UnsafeUnpin for Registry<T>
impl<T> UnwindSafe for Registry<T>where
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more