[][src]Enum evmap::Operation

#[non_exhaustive]
pub enum Operation<K, V> {
    Replace(K, V),
    Add(K, V),
    Remove(K, V),
    Empty(K),
    Clear(K),
    Purge,
    Retain(K, Predicate<V>),
    Fit(Option<K>),
    Reserve(K, usize),
}

A pending map operation.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Replace(K, V)

Replace the set of entries for this key with this value.

Add(K, V)

Add this value to the set of entries for this key.

Remove(K, V)

Remove this value from the set of entries for this key.

Empty(K)

Remove the value set for this key.

Clear(K)

Remove all values in the value set for this key.

Purge

Remove all values for all keys.

Note that this will iterate once over all the keys internally.

Retain(K, Predicate<V>)

Retains all values matching the given predicate.

Fit(Option<K>)

Shrinks a value-set to it's minimum necessary size, freeing memory and potentially improving cache locality if the smallvec feature is used.

If no key is given, all value-sets will shrink to fit.

Reserve(K, usize)

Reserves capacity for some number of additional elements in a value-set, or creates an empty value-set for this key with the given capacity if it doesn't already exist.

This can improve performance by pre-allocating space for large value-sets.

Trait Implementations

impl<K: Debug, V: Debug> Debug for Operation<K, V>[src]

impl<K: Eq, V: Eq> Eq for Operation<K, V>[src]

impl<K: PartialEq, V: PartialEq> PartialEq<Operation<K, V>> for Operation<K, V>[src]

impl<K, V> StructuralEq for Operation<K, V>[src]

impl<K, V> StructuralPartialEq for Operation<K, V>[src]

Auto Trait Implementations

impl<K, V> !RefUnwindSafe for Operation<K, V>

impl<K, V> Send for Operation<K, V> where
    K: Send,
    V: Send

impl<K, V> Sync for Operation<K, V> where
    K: Sync,
    V: Sync

impl<K, V> Unpin for Operation<K, V> where
    K: Unpin,
    V: Unpin

impl<K, V> !UnwindSafe for Operation<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<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.