Struct Iter
pub struct Iter<'a, K, V> { /* private fields */ }
An iterator over the entries of a HashMap in arbitrary order.
The iterator element type is (&'a K, &'a V).
This struct is created by the iter method on HashMap. See its
documentation for more.
Examples
use HashMap;
let map: = .into;
let mut iter = map.iter;
let mut vec = vec!;
// The `Iter` iterator produces items in arbitrary order, so the
// items must be sorted to test them against a sorted array.
vec.sort_unstable;
assert_eq!;
// It is fused iterator
assert_eq!;
assert_eq!;
Trait Implementations
impl<'a, K, V> Iterator for Iter<'a, K, V>
type Item = (&'a K, &'a V);fn next(&mut self) -> Option<(&'a K, &'a V)>fn size_hint(&self) -> (usize, Option<usize>)fn fold<B, F>(self, init: B, f: F) -> B where Self: Sized, F: FnMut(B, Self::Item) -> B,
impl<K, V> Clone for Iter<'_, K, V>
fn clone(&self) -> Self
impl<K, V> Default for Iter<'_, K, V>
fn default() -> Self
impl<K, V> ExactSizeIterator for Iter<'_, K, V>
fn len(&self) -> usize
impl<K, V> FusedIterator for Iter<'_, K, V>
impl<K: Debug, V: Debug> Debug for Iter<'_, K, V>
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Auto Trait Implementations
impl<'a, K, V> Freeze for Iter<'a, K, V>
where
RawIter<(K, V)>: Freeze,
PhantomData<(&'a K, &'a V)>: Freeze,
impl<'a, K, V> RefUnwindSafe for Iter<'a, K, V>
where
RawIter<(K, V)>: RefUnwindSafe,
PhantomData<(&'a K, &'a V)>: RefUnwindSafe,
impl<'a, K, V> Send for Iter<'a, K, V>
where
RawIter<(K, V)>: Send,
PhantomData<(&'a K, &'a V)>: Send,
impl<'a, K, V> Sync for Iter<'a, K, V>
where
RawIter<(K, V)>: Sync,
PhantomData<(&'a K, &'a V)>: Sync,
impl<'a, K, V> Unpin for Iter<'a, K, V>
where
RawIter<(K, V)>: Unpin,
PhantomData<(&'a K, &'a V)>: Unpin,
impl<'a, K, V> UnsafeUnpin for Iter<'a, K, V>
where
RawIter<(K, V)>: UnsafeUnpin,
PhantomData<(&'a K, &'a V)>: UnsafeUnpin,
impl<'a, K, V> UnwindSafe for Iter<'a, K, V>
where
RawIter<(K, V)>: UnwindSafe,
PhantomData<(&'a K, &'a V)>: UnwindSafe,
Blanket Implementations
impl<I> IntoIterator for Iter<'a, K, V>
where
I: Iterator,
type Item = <I as Iterator>::Item;type IntoIter = I;fn into_iter(self) -> I
impl<T> Any for Iter<'a, K, V>
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for Iter<'a, K, V>
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for Iter<'a, K, V>
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for Iter<'a, K, V>
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for Iter<'a, K, V>
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for Iter<'a, K, V>
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for Iter<'a, K, V>
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for Iter<'a, K, V>
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for Iter<'a, K, V>
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>