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.