[][src]Struct ahtable::ArrayHashIterMut

pub struct ArrayHashIterMut<'a, K, V> where
    K: Hash + PartialEq + Clone,
    V: Clone
{ /* fields omitted */ }

An iterator that return a mutably reference to each entry in ArrayHash. It is useful for scanning entire ArrayHash to manipulate it value.

It can cause undesired behavior if user alter the key in place as the slot position is calculated by hashed value of the key. It might endup having duplicate key on different slot and anytime caller use get method, it will always return that value instead of this modified key.

If you need to modify key, consider remove old key first then put the new key back in.

Trait Implementations

impl<'a, K: Debug, V: Debug> Debug for ArrayHashIterMut<'a, K, V> where
    K: Hash + PartialEq + Clone,
    V: Clone
[src]

impl<'a, K, V> ExactSizeIterator for ArrayHashIterMut<'a, K, V> where
    K: Hash + PartialEq + Clone,
    V: Clone
[src]

impl<'a, K, V> FusedIterator for ArrayHashIterMut<'a, K, V> where
    K: Hash + PartialEq + Clone,
    V: Clone
[src]

impl<'a, K, V> Iterator for ArrayHashIterMut<'a, K, V> where
    K: Hash + PartialEq + Clone,
    V: Clone
[src]

type Item = &'a mut (K, V)

The type of the elements being iterated over.

Auto Trait Implementations

impl<'a, K, V> RefUnwindSafe for ArrayHashIterMut<'a, K, V> where
    K: RefUnwindSafe,
    V: RefUnwindSafe

impl<'a, K, V> Send for ArrayHashIterMut<'a, K, V> where
    K: Send,
    V: Send

impl<'a, K, V> Sync for ArrayHashIterMut<'a, K, V> where
    K: Sync,
    V: Sync

impl<'a, K, V> Unpin for ArrayHashIterMut<'a, K, V>

impl<'a, K, V> !UnwindSafe for ArrayHashIterMut<'a, K, V>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<I> IteratorRandom for I where
    I: Iterator
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,