pub struct ReplyFold { /* private fields */ }Expand description
The completion fold. The driver and the handler writer build it; no other code can feed one.
It is both sides of one reply: the writer state a decoder writes through (the open items by wire index) and the blocks the consumer has taken, in their position.
Implementations§
Trait Implementations§
Source§impl Fold<Completion> for ReplyFold
impl Fold<Completion> for ReplyFold
Source§fn absorb(&mut self, event: &StreamEvent) -> Result<(), ProviderError>
fn absorb(&mut self, event: &StreamEvent) -> Result<(), ProviderError>
Absorb one event the consumer is about to see. An error fails the
reply.
Source§fn finish(
self,
end: Finish,
reply: Reply,
) -> Result<CompletionResponse, ProviderError>
fn finish( self, end: Finish, reply: Reply, ) -> Result<CompletionResponse, ProviderError>
The response, from the events absorbed, the provider’s end and what
the driver learned about the reply.
Auto Trait Implementations§
impl !RefUnwindSafe for ReplyFold
impl !UnwindSafe for ReplyFold
impl Freeze for ReplyFold
impl Send for ReplyFold
impl Sync for ReplyFold
impl Unpin for ReplyFold
impl UnsafeUnpin for ReplyFold
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 more