pub trait CacheStorage:
Send
+ Sync
+ 'static {
type Key: Send + Sync + Clone + Eq + Hash + 'static;
type Value: Send + Sync + Clone + 'static;
// Required methods
fn get(&mut self, key: &Self::Key) -> Option<&Self::Value>;
fn insert(&mut self, key: Cow<'_, Self::Key>, val: Cow<'_, Self::Value>);
fn remove(&mut self, key: &Self::Key);
fn clear(&mut self);
fn iter(&self) -> Box<dyn Iterator<Item = (&Self::Key, &Self::Value)> + '_>;
}Available on crate feature
dataloader only.Expand description
Cache storage for DataLoader.
Required Associated Types§
Required Methods§
Sourcefn get(&mut self, key: &Self::Key) -> Option<&Self::Value>
fn get(&mut self, key: &Self::Key) -> Option<&Self::Value>
Returns a reference to the value of the key in the cache or None if it is not present in the cache.
Sourcefn insert(&mut self, key: Cow<'_, Self::Key>, val: Cow<'_, Self::Value>)
fn insert(&mut self, key: Cow<'_, Self::Key>, val: Cow<'_, Self::Value>)
Puts a key-value pair into the cache. If the key already exists in the cache, then it updates the key’s value.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".