pub struct ResponseSink<T> { /* private fields */ }Expand description
Sending half of a server response stream.
Implementations§
Source§impl<T> ResponseSink<T>
impl<T> ResponseSink<T>
Sourcepub fn send(&mut self, value: &T) -> Result<(), StreamError>
pub fn send(&mut self, value: &T) -> Result<(), StreamError>
Sends a message, waiting for transport capacity.
§Errors
Returns a closed-direction or terminal failure.
Sourcepub fn try_send(&mut self, value: &T) -> Result<(), StreamError>
pub fn try_send(&mut self, value: &T) -> Result<(), StreamError>
Attempts a send; pending means the message was not accepted.
§Errors
Returns pending, closed-direction or terminal failure.
Sourcepub fn try_finish(
&mut self,
status: &Status,
trailers: &Metadata,
) -> Result<(), StreamError>
pub fn try_finish( &mut self, status: &Status, trailers: &Metadata, ) -> Result<(), StreamError>
Attempts completion without waiting or consuming trailers on backpressure.
§Errors
Returns pending, a terminal error or an already-finished error.
Sourcepub fn finish(
&mut self,
status: Status,
trailers: Metadata,
) -> Result<(), StreamError>
pub fn finish( &mut self, status: Status, trailers: Metadata, ) -> Result<(), StreamError>
Sends final status and trailers, including a trailers-only error response.
§Errors
Returns a terminal failure or rejects an already finished RPC.
Sourcepub fn initial_metadata(&self) -> Result<Option<Metadata>, StreamError>
pub fn initial_metadata(&self) -> Result<Option<Metadata>, StreamError>
Copies received initial metadata, if available.
§Errors
Rejects reentrant access from a driver callback.
Sourcepub fn trailing_metadata(&self) -> Result<Option<Metadata>, StreamError>
pub fn trailing_metadata(&self) -> Result<Option<Metadata>, StreamError>
Copies terminal metadata, including on a remote failure.
§Errors
Rejects reentrant access from a driver callback.
Auto Trait Implementations§
impl<T> !RefUnwindSafe for ResponseSink<T>
impl<T> !Send for ResponseSink<T>
impl<T> !Sync for ResponseSink<T>
impl<T> !UnwindSafe for ResponseSink<T>
impl<T> Freeze for ResponseSink<T>
impl<T> Unpin for ResponseSink<T>
impl<T> UnsafeUnpin for ResponseSink<T>where
Box<dyn Send<T>>: UnsafeUnpin,
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