Skip to main content

CacheIssuer

Trait CacheIssuer 

Source
pub trait CacheIssuer:
    Send
    + Sync
    + 'static {
    type Key: Hash + Eq + Send + Sync + 'static;

    // Required method
    fn issue(
        &self,
        req: &mut Request,
        depot: &Depot,
    ) -> impl Future<Output = Option<Self::Key>> + Send;
}
Expand description

Issues a cache key for a request, deciding whether the request should be cached.

Required Associated Types§

Source

type Key: Hash + Eq + Send + Sync + 'static

The key type used to identify a cached entry.

Required Methods§

Source

fn issue( &self, req: &mut Request, depot: &Depot, ) -> impl Future<Output = Option<Self::Key>> + Send

Issue a key for the request. If it returns None, the request will not be cached.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl CacheIssuer for RequestIssuer

Source§

impl<F, K> CacheIssuer for F
where F: Fn(&mut Request, &Depot) -> Option<K> + Send + Sync + 'static, K: Hash + Eq + Send + Sync + 'static,

Source§

type Key = K