pub struct Wait<S> { /* private fields */ }
Expand description
A sink combinator which converts an asynchronous sink to a blocking sink.
Created by the Sink::wait
method, this function transforms any sink into a
blocking version. This is implemented by blocking the current thread when a
sink is otherwise unable to make progress.
Implementations
sourceimpl<S: Sink> Wait<S>
impl<S: Sink> Wait<S>
sourcepub fn send(&mut self, value: S::SinkItem) -> Result<(), S::SinkError>
pub fn send(&mut self, value: S::SinkItem) -> Result<(), S::SinkError>
Sends a value to this sink, blocking the current thread until it’s able to do so.
This function will take the value
provided and call the underlying
sink’s start_send
function until it’s ready to accept the value. If
the function returns NotReady
then the current thread is blocked
until it is otherwise ready to accept the value.
Return value
If Ok(())
is returned then the value
provided was successfully sent
along the sink, and if Err(e)
is returned then an error occurred
which prevented the value from being sent.
sourcepub fn flush(&mut self) -> Result<(), S::SinkError>
pub fn flush(&mut self) -> Result<(), S::SinkError>
Flushes any buffered data in this sink, blocking the current thread until it’s entirely flushed.
This function will call the underlying sink’s poll_complete
method
until it returns that it’s ready to proceed. If the method returns
NotReady
the current thread will be blocked until it’s otherwise
ready to proceed.
sourcepub fn close(&mut self) -> Result<(), S::SinkError>
pub fn close(&mut self) -> Result<(), S::SinkError>
Close this sink, blocking the current thread until it’s entirely closed.
This function will call the underlying sink’s close
method
until it returns that it’s closed. If the method returns
NotReady
the current thread will be blocked until it’s otherwise closed.
Trait Implementations
Auto Trait Implementations
impl<S> !RefUnwindSafe for Wait<S>
impl<S> Send for Wait<S> where
S: Send,
impl<S> !Sync for Wait<S>
impl<S> Unpin for Wait<S> where
S: Unpin,
impl<S> !UnwindSafe for Wait<S>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more