pub struct CompactionEngine { /* private fields */ }
Expand description
Main compaction engine
Implementations§
Source§impl CompactionEngine
impl CompactionEngine
Sourcepub fn with_config(config: CompactionConfig) -> Self
pub fn with_config(config: CompactionConfig) -> Self
Create a new compaction engine with custom configuration
Sourcepub async fn add_message(
&self,
content: &Content,
message_type: MessageType,
) -> Result<()>
pub async fn add_message( &self, content: &Content, message_type: MessageType, ) -> Result<()>
Add a message to be tracked for compaction
Sourcepub async fn get_compaction_suggestions(
&self,
) -> Result<Vec<CompactionSuggestion>>
pub async fn get_compaction_suggestions( &self, ) -> Result<Vec<CompactionSuggestion>>
Get compaction suggestions
Sourcepub async fn get_statistics(&self) -> Result<CompactionStatistics>
pub async fn get_statistics(&self) -> Result<CompactionStatistics>
Get statistics
Sourcepub async fn should_compact(&self) -> Result<bool>
pub async fn should_compact(&self) -> Result<bool>
Check if should compact
Sourcepub async fn compact_messages_intelligently(&self) -> Result<CompactionResult>
pub async fn compact_messages_intelligently(&self) -> Result<CompactionResult>
Compact messages intelligently
Sourcepub async fn compact_context(
&self,
_context_key: &str,
context_data: &mut HashMap<String, Value>,
) -> Result<CompactionResult>
pub async fn compact_context( &self, _context_key: &str, context_data: &mut HashMap<String, Value>, ) -> Result<CompactionResult>
Compact context
Trait Implementations§
Source§impl Debug for CompactionEngine
impl Debug for CompactionEngine
Auto Trait Implementations§
impl Freeze for CompactionEngine
impl !RefUnwindSafe for CompactionEngine
impl Send for CompactionEngine
impl Sync for CompactionEngine
impl Unpin for CompactionEngine
impl !UnwindSafe for CompactionEngine
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