pub struct SimilarCodeVectorCache { /* private fields */ }Expand description
Separate FIFO cache with a bounded vector-payload budget.
Source fragments are never stored. The byte budget covers vector values, while map, queue, key, and allocator overhead remain normal process memory.
Implementations§
Source§impl SimilarCodeVectorCache
impl SimilarCodeVectorCache
Sourcepub fn get(&self, key: &VectorCacheKey) -> Option<&[f32]>
pub fn get(&self, key: &VectorCacheKey) -> Option<&[f32]>
Return a cached vector without changing eviction order.
Sourcepub fn insert(&mut self, key: VectorCacheKey, values: Vec<f32>) -> bool
pub fn insert(&mut self, key: VectorCacheKey, values: Vec<f32>) -> bool
Insert a vector, evicting oldest entries until it fits.
Returns false when the vector itself exceeds the cache budget or its
width does not match the cache key.
Sourcepub const fn used_payload_bytes(&self) -> usize
pub const fn used_payload_bytes(&self) -> usize
Bytes represented by cached vector payloads.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SimilarCodeVectorCache
impl RefUnwindSafe for SimilarCodeVectorCache
impl Send for SimilarCodeVectorCache
impl Sync for SimilarCodeVectorCache
impl Unpin for SimilarCodeVectorCache
impl UnsafeUnpin for SimilarCodeVectorCache
impl UnwindSafe for SimilarCodeVectorCache
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