pub trait FutureProducer<D>: Send + 'static {
type Item;
// Required method
fn poll_produce(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
store: StoreContextMut<'_, D>,
finish: bool,
) -> Poll<Result<Option<Self::Item>, Error>>;
}Expand description
Represents a host-owned write end of a future.
Required Associated Types§
Required Methods§
Sourcefn poll_produce(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
store: StoreContextMut<'_, D>,
finish: bool,
) -> Poll<Result<Option<Self::Item>, Error>>
fn poll_produce( self: Pin<&mut Self>, cx: &mut Context<'_>, store: StoreContextMut<'_, D>, finish: bool, ) -> Poll<Result<Option<Self::Item>, Error>>
Handle a host- or guest-initiated read by producing a value.
This is equivalent to StreamProducer::poll_produce, but with a
simplified interface for futures.
If finish is true, the implementation may return
Poll::Ready(Ok(None)) to indicate the operation was canceled before it
could produce a value. Otherwise, it must either return
Poll::Ready(Ok(Some(_))), Poll::Ready(Err(_)), or Poll::Pending.