Struct hamt_sync::Map [−][src]
pub struct Map<K, V> { /* fields omitted */ }
Map data structure of HAMT. Note that every method does not modify the original map but creates a new one if necessary.
Methods
impl<K: Clone + Hash + PartialEq, V: Clone> Map<K, V>
[src]
impl<K: Clone + Hash + PartialEq, V: Clone> Map<K, V>
pub fn new() -> Self
[src]
pub fn new() -> Self
Creates a new map.
pub fn insert(&self, k: K, v: V) -> Self
[src]
pub fn insert(&self, k: K, v: V) -> Self
Inserts a key-value pair into a map.
pub fn delete(&self, k: &K) -> Option<Self>
[src]
pub fn delete(&self, k: &K) -> Option<Self>
Deletes a key and its corresponding value from a map.
pub fn find(&self, k: &K) -> Option<&V>
[src]
pub fn find(&self, k: &K) -> Option<&V>
Finds a key and its corresponding value in a map.
pub fn first_rest(&self) -> Option<(&K, &V, Self)>
[src]
pub fn first_rest(&self) -> Option<(&K, &V, Self)>
Removes the first element in a map and returns a new map containing the rest of elements.
pub fn size(&self) -> usize
[src]
pub fn size(&self) -> usize
Returns a size of a map.
Trait Implementations
impl<K: Clone, V: Clone> Clone for Map<K, V>
[src]
impl<K: Clone, V: Clone> Clone for Map<K, V>
fn clone(&self) -> Map<K, V>
[src]
fn clone(&self) -> Map<K, V>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl<K: Debug, V: Debug> Debug for Map<K, V>
[src]
impl<K: Debug, V: Debug> Debug for Map<K, V>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<K: Eq, V: Eq> Eq for Map<K, V>
[src]
impl<K: Eq, V: Eq> Eq for Map<K, V>
impl<K: Hash, V: Hash> Hash for Map<K, V>
[src]
impl<K: Hash, V: Hash> Hash for Map<K, V>
fn hash<__HKV: Hasher>(&self, state: &mut __HKV)
[src]
fn hash<__HKV: Hasher>(&self, state: &mut __HKV)
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0
[src]Feeds a slice of this type into the given [Hasher
]. Read more
impl<K: PartialEq, V: PartialEq> PartialEq for Map<K, V>
[src]
impl<K: PartialEq, V: PartialEq> PartialEq for Map<K, V>
fn eq(&self, other: &Map<K, V>) -> bool
[src]
fn eq(&self, other: &Map<K, V>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Map<K, V>) -> bool
[src]
fn ne(&self, other: &Map<K, V>) -> bool
This method tests for !=
.
impl<'a, K, V> IntoIterator for &'a Map<K, V>
[src]
impl<'a, K, V> IntoIterator for &'a Map<K, V>