pub struct Dex<I: Identifiable>(pub HashMap<I::Id, Arc<I>>);Expand description
A Dex is used to hold types with an identifiable value (see Identifiable).
Tuple Fields§
§0: HashMap<I::Id, Arc<I>>Implementations§
Source§impl<I: Identifiable> Dex<I>
impl<I: Identifiable> Dex<I>
Sourcepub fn try_get(&self, id: &I::Id) -> Option<&Arc<I>>
pub fn try_get(&self, id: &I::Id) -> Option<&Arc<I>>
Try to get an identifiable value from the Dex.
Sourcepub fn get(&self, id: &I::Id) -> &Arc<I>
pub fn get(&self, id: &I::Id) -> &Arc<I>
Get the identifiable value from the Dex, or return the unknown value.
pub fn new(inner: HashMap<I::Id, Arc<I>>) -> Self
pub fn insert(&mut self, v: I) -> Option<Arc<I>>
pub fn try_get_named(&self, name: impl AsRef<str>) -> Option<&Arc<I>>
pub fn remove(&mut self, id: &I::Id) -> Option<Arc<I>>
Trait Implementations§
Source§impl<I: Identifiable> Default for Dex<I>
impl<I: Identifiable> Default for Dex<I>
Source§impl<'de, I: Identifiable + Deserialize<'de>> Deserialize<'de> for Dex<I>
Deserialize Dex from a Vec
impl<'de, I: Identifiable + Deserialize<'de>> Deserialize<'de> for Dex<I>
Deserialize Dex from a Vec
Source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl<I> Freeze for Dex<I>
impl<I> RefUnwindSafe for Dex<I>
impl<I> Send for Dex<I>
impl<I> Sync for Dex<I>
impl<I> Unpin for Dex<I>
impl<I> UnwindSafe for Dex<I>
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