pub enum Reply {
Outcome(Result<Outcome, ErrorReport>),
Stream(StreamEvents),
}Expand description
An answer, or an owned stream whose execution belongs to the driver.
Variants§
Outcome(Result<Outcome, ErrorReport>)
The completed unary answer or a setup error.
Stream(StreamEvents)
Events, including any frames after the first terminal record.
Implementations§
Source§impl Reply
impl Reply
Sourcepub async fn into_outcome(self) -> Result<Outcome, ErrorReport>
pub async fn into_outcome(self) -> Result<Outcome, ErrorReport>
Fold a stream to its first outcome, or return the unary answer.
Sourcepub fn into_stream(self) -> StreamEvents
pub fn into_stream(self) -> StreamEvents
Convert a completion into its events, then the response; incompatible outcomes become errors.
Source§impl Reply
impl Reply
Sourcepub fn written<F, Fut>(write: F) -> Self
pub fn written<F, Fut>(write: F) -> Self
Return a stream that owns and polls the writing future alongside its private receiver. No task is spawned. The bridge has zero shared capacity and one sender-reserved slot; it is not a rendezvous channel. Dropping the returned stream drops the writing future and receiver.
Auto Trait Implementations§
impl !RefUnwindSafe for Reply
impl !Sync for Reply
impl !UnwindSafe for Reply
impl Freeze for Reply
impl Send for Reply
impl Unpin for Reply
impl UnsafeUnpin for Reply
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