pub trait StoreIterableMut<'a, K: 'a, V: 'a>: StoreMut<K, V> + StoreIterable<'a, K, V> {
    type KeyValueIterMut: Iterator<Item = (&'a K, &'a mut V)> + DoubleEndedIterator + 'a;
    type KeyValueIntoIter: Iterator<Item = (K, V)>;

    // Required methods
    fn lm_iter_mut(&'a mut self) -> Self::KeyValueIterMut;
    fn lm_into_iter(self) -> Self::KeyValueIntoIter;

    // Provided methods
    fn lm_extend_end(&mut self, other: Self)
       where Self: Sized { ... }
    fn lm_extend_start(&mut self, other: Self)
       where Self: Sized { ... }
}

Required Associated Types§

Required Methods§

source

fn lm_iter_mut(&'a mut self) -> Self::KeyValueIterMut

Returns an iterator over key/value pairs, with a mutable value.

source

fn lm_into_iter(self) -> Self::KeyValueIntoIter

Returns an iterator that moves every item from this store.

Provided Methods§

source

fn lm_extend_end(&mut self, other: Self)where Self: Sized,

Adds items from another store to the end of this store.

source

fn lm_extend_start(&mut self, other: Self)where Self: Sized,

Adds items from another store to the beginning of this store.

Implementations on Foreign Types§

source§

impl<'a, K: 'a, V: 'a> StoreIterableMut<'a, K, V> for Vec<(K, V)>

§

type KeyValueIterMut = Map<IterMut<'a, (K, V)>, fn(_: &mut (K, V)) -> (&K, &mut V)>

§

type KeyValueIntoIter = IntoIter<(K, V), Global>

source§

fn lm_iter_mut(&'a mut self) -> Self::KeyValueIterMut

source§

fn lm_into_iter(self) -> Self::KeyValueIntoIter

source§

fn lm_extend_end(&mut self, other: Self)

source§

fn lm_extend_start(&mut self, other: Self)

Implementors§