Trait toad_common::map::Map
source · pub trait Map<K: Ord + Eq + Hash, V>: Default + GetSize + Reserve + Extend<(K, V)> + FromIterator<(K, V)> + IntoIterator<Item = (K, V)> {
// Required methods
fn insert(&mut self, key: K, val: V) -> Result<(), InsertError<V>>;
fn remove<Q: Hash + Eq + Ord>(&mut self, key: &Q) -> Option<V>
where K: Borrow<Q>;
fn get<'a, Q: Hash + Eq + Ord>(&'a self, key: &Q) -> Option<&'a V>
where K: Borrow<Q> + 'a;
fn get_mut<'a, Q: Hash + Eq + Ord>(
&'a mut self,
key: &Q
) -> Option<&'a mut V>
where K: Borrow<Q> + 'a;
fn iter(&self) -> Iter<'_, K, V> ⓘ;
fn iter_mut(&mut self) -> IterMut<'_, K, V> ⓘ;
// Provided method
fn has<Q: Hash + Eq + Ord>(&self, key: &Q) -> bool
where K: Borrow<Q> { ... }
}Expand description
An collection of key-value pairs
Provided implementations
HashMap<K, V>tinyvec::ArrayVec<(K, V)>Vec<(K, V)>
Requirements
Defaultfor creating the mapExtendfor adding new entries to the mapReservefor reserving space ahead of timeGetSizefor bound checks, empty checks, and accessing the lengthFromIteratorforcollecting into the mapIntoIteratorfor iterating and destroying the map
Required Methods§
sourcefn insert(&mut self, key: K, val: V) -> Result<(), InsertError<V>>
fn insert(&mut self, key: K, val: V) -> Result<(), InsertError<V>>
See [HashMap.insert]
sourcefn remove<Q: Hash + Eq + Ord>(&mut self, key: &Q) -> Option<V>where
K: Borrow<Q>,
fn remove<Q: Hash + Eq + Ord>(&mut self, key: &Q) -> Option<V>where K: Borrow<Q>,
See [HashMap.remove]
sourcefn get<'a, Q: Hash + Eq + Ord>(&'a self, key: &Q) -> Option<&'a V>where
K: Borrow<Q> + 'a,
fn get<'a, Q: Hash + Eq + Ord>(&'a self, key: &Q) -> Option<&'a V>where K: Borrow<Q> + 'a,
See [HashMap.get]