pub struct CacheKey {
pub fingerprint_hash: u64,
pub param_hash: Option<u64>,
pub branch: Option<String>,
pub as_of: Option<u64>,
}Expand description
Cache key for entry lookup
Fields§
§fingerprint_hash: u64Query fingerprint hash
param_hash: Option<u64>Optional parameter hash
branch: Option<String>Branch name (for branch-aware caching)
as_of: Option<u64>Time travel timestamp (for historical queries)
Implementations§
Source§impl CacheKey
impl CacheKey
Sourcepub fn from_fingerprint(fingerprint: &QueryFingerprint) -> Self
pub fn from_fingerprint(fingerprint: &QueryFingerprint) -> Self
Create a new cache key from a query fingerprint
Sourcepub fn with_branch(self, branch: impl Into<String>) -> Self
pub fn with_branch(self, branch: impl Into<String>) -> Self
Set branch for branch-aware caching
Sourcepub fn with_as_of(self, timestamp: u64) -> Self
pub fn with_as_of(self, timestamp: u64) -> Self
Set timestamp for time-travel caching
Sourcepub fn fingerprint(&self) -> QueryFingerprint
pub fn fingerprint(&self) -> QueryFingerprint
Get the fingerprint for metrics
Sourcepub fn matches_pattern(&self, pattern: &str) -> bool
pub fn matches_pattern(&self, pattern: &str) -> bool
Check if key matches a pattern
Trait Implementations§
impl Eq for CacheKey
impl StructuralPartialEq for CacheKey
Auto Trait Implementations§
impl Freeze for CacheKey
impl RefUnwindSafe for CacheKey
impl Send for CacheKey
impl Sync for CacheKey
impl Unpin for CacheKey
impl UnsafeUnpin for CacheKey
impl UnwindSafe for CacheKey
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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