Trait txn_core::sync::PwmEquivalent

source ·
pub trait PwmEquivalent: Pwm {
    // Required methods
    fn get_equivalent<Q>(
        &self,
        key: &Q
    ) -> Result<Option<&EntryValue<Self::Value>>, Self::Error>
       where Self::Key: Borrow<Q>,
             Q: Hash + Eq + ?Sized;
    fn get_entry_equivalent<Q>(
        &self,
        key: &Q
    ) -> Result<Option<(&Self::Key, &EntryValue<Self::Value>)>, Self::Error>
       where Self::Key: Borrow<Q>,
             Q: Hash + Eq + ?Sized;
    fn contains_key_equivalent<Q>(&self, key: &Q) -> Result<bool, Self::Error>
       where Self::Key: Borrow<Q>,
             Q: Hash + Eq + ?Sized;
    fn remove_entry_equivalent<Q>(
        &mut self,
        key: &Q
    ) -> Result<Option<(Self::Key, EntryValue<Self::Value>)>, Self::Error>
       where Self::Key: Borrow<Q>,
             Q: Hash + Eq + ?Sized;
}
Expand description

An optimized version of the Pwm trait that if your pending writes manager is depend on hash.

Required Methods§

source

fn get_equivalent<Q>( &self, key: &Q ) -> Result<Option<&EntryValue<Self::Value>>, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

Optimized version of Pwm::get that accepts borrowed keys.

source

fn get_entry_equivalent<Q>( &self, key: &Q ) -> Result<Option<(&Self::Key, &EntryValue<Self::Value>)>, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

source

fn contains_key_equivalent<Q>(&self, key: &Q) -> Result<bool, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

Optimized version of Pwm::contains_key that accepts borrowed keys.

source

fn remove_entry_equivalent<Q>( &mut self, key: &Q ) -> Result<Option<(Self::Key, EntryValue<Self::Value>)>, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

Optimized version of Pwm::remove_entry that accepts borrowed keys.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<K, V, S> PwmEquivalent for IndexMap<K, EntryValue<V>, S>
where K: Eq + Hash, S: BuildHasher + Default,

source§

fn get_equivalent<Q>( &self, key: &Q ) -> Result<Option<&EntryValue<V>>, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

source§

fn get_entry_equivalent<Q>( &self, key: &Q ) -> Result<Option<(&Self::Key, &EntryValue<Self::Value>)>, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

source§

fn contains_key_equivalent<Q>(&self, key: &Q) -> Result<bool, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

source§

fn remove_entry_equivalent<Q>( &mut self, key: &Q ) -> Result<Option<(K, EntryValue<V>)>, Self::Error>
where Self::Key: Borrow<Q>, Q: Hash + Eq + ?Sized,

Implementors§