pub trait IterableMut<'a, T> {
type IterMut: Iterator<Item = T>;
fn iter_mut(&'a mut self) -> Self::IterMut;
}
impl<'a, K, V, S> IterableMut<'a, (&'a K, &'a mut V)> for HashMap<K, V, S> where
K: 'a + Eq + Hash,
V: 'a,
S: 'a + BuildHasher, type IterMut = IterMut<'a, K, V>;
impl<'a, K, V> IterableMut<'a, (&'a K, &'a mut V)> for BTreeMap<K, V> where
K: 'a + Eq + Ord,
V: 'a, type IterMut = IterMut<'a, K, V>;
impl<'a, T: 'a> IterableMut<'a, &'a mut T> for LinkedList<T> type IterMut = IterMut<'a, T>;
impl<'a, T: 'a> IterableMut<'a, &'a mut T> for [T] type IterMut = IterMut<'a, T>;
impl<'a, T: 'a> IterableMut<'a, &'a mut T> for Vec<T> type IterMut = IterMut<'a, T>;