pub struct UtilityCompactionBackend { /* private fields */ }Implementations§
Source§impl UtilityCompactionBackend
impl UtilityCompactionBackend
pub fn new(candidates: Vec<UtilityCandidate>, cancel: CancellationToken) -> Self
Sourcepub fn page_bytes(&self) -> usize
pub fn page_bytes(&self) -> usize
How large a page this backend accepts. Any candidate may answer any request once an earlier one fails, so the smallest window governs. The floor keeps one small-window candidate from failing the whole compaction before a single request is sent; a page that model really cannot read comes back as an oversize rejection and is split.
Trait Implementations§
Source§impl CompactionBackend for UtilityCompactionBackend
impl CompactionBackend for UtilityCompactionBackend
fn compact<'a>( &'a self, prompt: String, ) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'a>>
Source§fn classify_failure(&self, error: &Error) -> CompactionFailure
fn classify_failure(&self, error: &Error) -> CompactionFailure
What a failed request means for the rest of the compaction. Backends
that carry a typed error should override this; the default reads the
provider text an ACP harness passes through.
Auto Trait Implementations§
impl !Freeze for UtilityCompactionBackend
impl !RefUnwindSafe for UtilityCompactionBackend
impl !UnwindSafe for UtilityCompactionBackend
impl Send for UtilityCompactionBackend
impl Sync for UtilityCompactionBackend
impl Unpin for UtilityCompactionBackend
impl UnsafeUnpin for UtilityCompactionBackend
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
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 moreSource§impl<T> IntoMaybeUndefined<T> for T
impl<T> IntoMaybeUndefined<T> for T
Source§fn into_maybe_undefined(self) -> MaybeUndefined<T>
fn into_maybe_undefined(self) -> MaybeUndefined<T>
Converts this value into a three-state builder argument.
Source§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
Source§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Converts this value into an optional builder argument.