Trait multi_mut::BTreeMapMultiMut [] [src]

pub trait BTreeMapMultiMut {
    type Value;
    type Key: Ord;
    fn get_pair_mut<Q: ?Sized>(
        &mut self,
        k_1: &Q,
        k_2: &Q
    ) -> Option<(&mut Self::Value, &mut Self::Value)>
    where
        Self::Key: Borrow<Q>,
        Q: Ord
; fn pair_mut<Q: ?Sized>(
        &mut self,
        k_1: &Q,
        k_2: &Q
    ) -> (&mut Self::Value, &mut Self::Value)
    where
        Self::Key: Borrow<Q>,
        Q: Ord
; fn get_triple_mut<Q: ?Sized>(
        &mut self,
        k_1: &Q,
        k_2: &Q,
        k_3: &Q
    ) -> Option<(&mut Self::Value, &mut Self::Value, &mut Self::Value)>
    where
        Self::Key: Borrow<Q>,
        Q: Ord
; fn triple_mut<Q: ?Sized>(
        &mut self,
        k_1: &Q,
        k_2: &Q,
        k_3: &Q
    ) -> (&mut Self::Value, &mut Self::Value, &mut Self::Value)
    where
        Self::Key: Borrow<Q>,
        Q: Ord
; fn multi_mut<'a>(
        &'a mut self,
        buffer: &'a mut [*const Self::Value]
    ) -> BTreeMapMutWrapper<Self::Key, Self::Value>; fn iter_multi_mut<'a, Q: ?Sized>(
        &'a mut self,
        k: &'a [&'a Q],
        buffer: &'a mut [*const Self::Value]
    ) -> BTreeMapMultiMutIter<Q, Self::Key, Self::Value>
    where
        Self::Key: Borrow<Q>,
        Q: Ord
; }

Endows HashMap with extension methods that help getting multiple mutable references to the values contained in it. Runtime-checking is done to ensure that this is safe: the returned mutable references are guaranteed not to alias.

Associated Types

Required Methods

Implementors