Trait std_ext::map::CacheMapExt

source ·
pub trait CacheMapExt<K, V> {
    // Required methods
    fn get_with_timeout<Q>(&self, k: &Q) -> Option<&V>
       where K: Borrow<Q> + Ord,
             Q: Hash + Eq + Ord + ?Sized;
    fn get_with_timeout_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
       where K: Borrow<Q> + Ord,
             Q: Hash + Eq + Ord + ?Sized;
    fn insert_with_timeout(
        &mut self,
        k: K,
        v: V,
        timeout: Option<Duration>
    ) -> Option<V>;
    fn remove_expired_values(&mut self);
}

Required Methods§

source

fn get_with_timeout<Q>(&self, k: &Q) -> Option<&V>
where K: Borrow<Q> + Ord, Q: Hash + Eq + Ord + ?Sized,

source

fn get_with_timeout_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
where K: Borrow<Q> + Ord, Q: Hash + Eq + Ord + ?Sized,

source

fn insert_with_timeout( &mut self, k: K, v: V, timeout: Option<Duration> ) -> Option<V>

source

fn remove_expired_values(&mut self)

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<K, V, S> CacheMapExt<K, V> for HashMap<K, TimedValue<V>, S>
where K: Eq + Hash, S: BuildHasher,

source§

fn get_with_timeout<Q>(&self, k: &Q) -> Option<&V>
where K: Borrow<Q>, Q: Hash + Eq + ?Sized,

source§

fn get_with_timeout_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
where K: Borrow<Q>, Q: Hash + Eq + ?Sized,

source§

fn insert_with_timeout( &mut self, k: K, v: V, timeout: Option<Duration> ) -> Option<V>

source§

fn remove_expired_values(&mut self)

source§

impl<K: Ord, V> CacheMapExt<K, V> for BTreeMap<K, TimedValue<V>>

source§

fn get_with_timeout<Q>(&self, k: &Q) -> Option<&V>
where K: Borrow<Q>, Q: Ord + ?Sized,

source§

fn get_with_timeout_mut<Q>(&mut self, k: &Q) -> Option<&mut V>
where K: Borrow<Q>, Q: Ord + ?Sized,

source§

fn insert_with_timeout( &mut self, k: K, v: V, timeout: Option<Duration> ) -> Option<V>

source§

fn remove_expired_values(&mut self)

Implementors§