pub struct SharedObjectRegistry { /* private fields */ }
Expand description
Registry for managing shared objects
Implementations§
Sourcepub fn register(&mut self, object: Box<dyn SharedObject>) -> SharedObjectId
pub fn register(&mut self, object: Box<dyn SharedObject>) -> SharedObjectId
Register a shared object
Sourcepub fn get(&self, id: &SharedObjectId) -> Option<&dyn SharedObject>
pub fn get(&self, id: &SharedObjectId) -> Option<&dyn SharedObject>
Get a reference to an object by ID
Sourcepub fn remove(&mut self, id: &SharedObjectId) -> Option<Box<dyn SharedObject>>
pub fn remove(&mut self, id: &SharedObjectId) -> Option<Box<dyn SharedObject>>
Remove an object from the registry
Sourcepub fn ids(&self) -> Vec<SharedObjectId>
pub fn ids(&self) -> Vec<SharedObjectId>
Get all object IDs
Sourcepub fn get_by_type(&self, type_name: &str) -> Vec<&dyn SharedObject>
pub fn get_by_type(&self, type_name: &str) -> Vec<&dyn SharedObject>
Get objects by type
Sourcepub fn contains(&self, id: &SharedObjectId) -> bool
pub fn contains(&self, id: &SharedObjectId) -> bool
Check if an object exists
Trait Implementations§
Auto Trait Implementations§
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