pub trait CacheStorage: Send + Sync + 'static {
    type Key: Send + Sync + Clone + Eq + Hash + 'static;
    type Value: Send + Sync + Clone + 'static;

    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);
}
Available on crate feature dataloader only.
Expand description

Cache storage for [DataLoader].

Required Associated Types

The key type of the record.

The value type of the record.

Required Methods

Returns a reference to the value of the key in the cache or None if it is not present in the cache.

Puts a key-value pair into the cache. If the key already exists in the cache, then it updates the key’s value.

Removes the value corresponding to the key from the cache.

Clears the cache, removing all key-value pairs.

Implementors