pub struct QueryCache { /* private fields */ }Expand description
A simple in-memory cache for query results.
Implementations§
Source§impl QueryCache
impl QueryCache
Sourcepub fn with_max_entries(max_entries: usize) -> Self
pub fn with_max_entries(max_entries: usize) -> Self
Create a new query cache with a maximum number of entries.
Sourcepub fn get(&self, function_name: &str, args: &Value) -> Option<Value>
pub fn get(&self, function_name: &str, args: &Value) -> Option<Value>
Get a cached value if it exists and hasn’t expired.
Sourcepub fn set(
&self,
function_name: &str,
args: &Value,
value: Value,
ttl: Duration,
)
pub fn set( &self, function_name: &str, args: &Value, value: Value, ttl: Duration, )
Set a cached value with a TTL.
Sourcepub fn invalidate(&self, function_name: &str, args: &Value)
pub fn invalidate(&self, function_name: &str, args: &Value)
Invalidate a specific cache entry.
Sourcepub fn invalidate_function(&self, function_name: &str)
pub fn invalidate_function(&self, function_name: &str)
Invalidate all entries for a function.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for QueryCache
impl RefUnwindSafe for QueryCache
impl Send for QueryCache
impl Sync for QueryCache
impl Unpin for QueryCache
impl UnwindSafe for QueryCache
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