pub struct ContextDedup { /* private fields */ }Expand description
Bounded content deduplication tracker. Remembers what was sent to the LLM to avoid resending unchanged content.
Implementations§
Source§impl ContextDedup
impl ContextDedup
Sourcepub fn new(max_entries: usize) -> Self
pub fn new(max_entries: usize) -> Self
Creates a tracker limited to max_entries; zero selects the default of 1000.
Sourcepub fn check_and_record(&mut self, path: &str, content: &str) -> DedupResult
pub fn check_and_record(&mut self, path: &str, content: &str) -> DedupResult
Checks whether content for path changed and records fresh content.
Sourcepub fn invalidate(&mut self, path: &str)
pub fn invalidate(&mut self, path: &str)
Forgets content previously recorded for path.
Sourcepub fn evict_oldest(&mut self)
pub fn evict_oldest(&mut self)
Removes the least recently delivered fingerprint, if any.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ContextDedup
impl RefUnwindSafe for ContextDedup
impl Send for ContextDedup
impl Sync for ContextDedup
impl Unpin for ContextDedup
impl UnsafeUnpin for ContextDedup
impl UnwindSafe for ContextDedup
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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