pub struct TaggedCache { /* private fields */ }Expand description
A cache instance with tags for grouped operations.
Implementations§
Source§impl TaggedCache
impl TaggedCache
Sourcepub async fn get<T>(&self, key: &str) -> Result<Option<T>, Error>where
T: DeserializeOwned,
pub async fn get<T>(&self, key: &str) -> Result<Option<T>, Error>where
T: DeserializeOwned,
Get a value from the cache.
Sourcepub async fn put<T>(
&self,
key: &str,
value: &T,
ttl: Duration,
) -> Result<(), Error>where
T: Serialize,
pub async fn put<T>(
&self,
key: &str,
value: &T,
ttl: Duration,
) -> Result<(), Error>where
T: Serialize,
Put a value in the cache with tags.
Sourcepub async fn put_default<T>(&self, key: &str, value: &T) -> Result<(), Error>where
T: Serialize,
pub async fn put_default<T>(&self, key: &str, value: &T) -> Result<(), Error>where
T: Serialize,
Put a value using the default TTL.
Sourcepub async fn forever<T>(&self, key: &str, value: &T) -> Result<(), Error>where
T: Serialize,
pub async fn forever<T>(&self, key: &str, value: &T) -> Result<(), Error>where
T: Serialize,
Store a value forever.
Sourcepub async fn flush(&self) -> Result<(), Error>
pub async fn flush(&self) -> Result<(), Error>
Flush all cache entries with any of the configured tags.
Sourcepub async fn remember<T, F, Fut>(
&self,
key: &str,
ttl: Duration,
f: F,
) -> Result<T, Error>
pub async fn remember<T, F, Fut>( &self, key: &str, ttl: Duration, f: F, ) -> Result<T, Error>
Get a value or compute it if not cached.
Sourcepub async fn remember_forever<T, F, Fut>(
&self,
key: &str,
f: F,
) -> Result<T, Error>
pub async fn remember_forever<T, F, Fut>( &self, key: &str, f: F, ) -> Result<T, Error>
Get a value or compute it, caching forever.
Auto Trait Implementations§
impl Freeze for TaggedCache
impl !RefUnwindSafe for TaggedCache
impl Send for TaggedCache
impl Sync for TaggedCache
impl Unpin for TaggedCache
impl UnsafeUnpin for TaggedCache
impl !UnwindSafe for TaggedCache
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more