[][src]Struct std::collections::hash_map::DrainFilter

pub struct DrainFilter<'a, K, V, F> where
    F: FnMut(&K, &mut V) -> bool
{ /* fields omitted */ }
🔬 This is a nightly-only experimental API. (hash_drain_filter #59618)

A draining, filtering iterator over the entries of a HashMap.

This struct is created by the drain_filter method on HashMap.

Example

#![feature(hash_drain_filter)]

use std::collections::HashMap;

let mut map = HashMap::new();
map.insert("a", 1);
let iter = map.drain_filter(|_k, v| *v % 2 == 0);
Run

Trait Implementations

impl<'a, K, V, F> Debug for DrainFilter<'a, K, V, F> where
    F: FnMut(&K, &mut V) -> bool
[src]

impl<K, V, F, '_> FusedIterator for DrainFilter<'_, K, V, F> where
    F: FnMut(&K, &mut V) -> bool
[src]

impl<K, V, F, '_> Iterator for DrainFilter<'_, K, V, F> where
    F: FnMut(&K, &mut V) -> bool
[src]

type Item = (K, V)

The type of the elements being iterated over.

Auto Trait Implementations

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

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

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

impl<'a, K, V, F> Unpin for DrainFilter<'a, K, V, F> where
    F: Unpin

impl<'a, K, V, F> !UnwindSafe for DrainFilter<'a, K, V, F>

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<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.