pub struct SinkSendable<'w, OS, OM> { /* private fields */ }
Expand description
A [Sink
] which is ready to receive an item
Produced by SinkPrepareExt::prepare_send_from
. See there for the overview docs.
This references an output sink OS
.
It offers the ability to write into the sink without blocking,
(and constitutes a proof token that the sink has declared itself ready for that).
The only useful method is send
.
SinkSendable
has no drop glue and can be freely dropped,
for example if you prepare to send a message and then
encounter an error when producing the output message.
Implementations§
Source§impl<'w, OS, OM> SinkSendable<'w, OS, OM>where
OS: Sink<OM>,
impl<'w, OS, OM> SinkSendable<'w, OS, OM>where
OS: Sink<OM>,
Sourcepub fn send(self, item: OM) -> Result<(), OS::Error>
pub fn send(self, item: OM) -> Result<(), OS::Error>
Synchronously send an item into OS
, which is a [Sink
]
Can fail if the sink OS
reports an error.
(However, the existence of the SinkSendable
demonstrates that
the sink reported itself ready for sending,
so this call is synchronous, avoiding cancellation hazards.)