Struct futures_util::sink::With
source · pub struct With<Si, Item, U, Fut, F> { /* private fields */ }sink only.Expand description
Sink for the with method.
Implementations§
source§impl<Si, Item, U, Fut, F, E> With<Si, Item, U, Fut, F>where
Si: Sink<Item>,
F: FnMut(U) -> Fut,
Fut: Future<Output = Result<Item, E>>,
E: From<Si::Error>,
impl<Si, Item, U, Fut, F, E> With<Si, Item, U, Fut, F>where Si: Sink<Item>, F: FnMut(U) -> Fut, Fut: Future<Output = Result<Item, E>>, E: From<Si::Error>,
sourcepub fn get_ref(&self) -> &Si
pub fn get_ref(&self) -> &Si
Acquires a reference to the underlying sink or stream that this combinator is pulling from.
sourcepub fn get_mut(&mut self) -> &mut Si
pub fn get_mut(&mut self) -> &mut Si
Acquires a mutable reference to the underlying sink or stream that this combinator is pulling from.
Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.
sourcepub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut Si>
pub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut Si>
Acquires a pinned mutable reference to the underlying sink or stream that this combinator is pulling from.
Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.
sourcepub fn into_inner(self) -> Si
pub fn into_inner(self) -> Si
Consumes this combinator, returning the underlying sink or stream.
Note that this may discard intermediate state of this combinator, so care should be taken to avoid losing resources when this is called.
Trait Implementations§
source§impl<Si, Item, U, Fut, F> Clone for With<Si, Item, U, Fut, F>where
Si: Clone,
F: Clone,
Fut: Clone,
impl<Si, Item, U, Fut, F> Clone for With<Si, Item, U, Fut, F>where Si: Clone, F: Clone, Fut: Clone,
source§impl<Si, Item, U, Fut, F, E> Sink<U> for With<Si, Item, U, Fut, F>where
Si: Sink<Item>,
F: FnMut(U) -> Fut,
Fut: Future<Output = Result<Item, E>>,
E: From<Si::Error>,
impl<Si, Item, U, Fut, F, E> Sink<U> for With<Si, Item, U, Fut, F>where Si: Sink<Item>, F: FnMut(U) -> Fut, Fut: Future<Output = Result<Item, E>>, E: From<Si::Error>,
source§fn poll_ready(
self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> Poll<Result<(), Self::Error>>
fn poll_ready( self: Pin<&mut Self>, cx: &mut Context<'_> ) -> Poll<Result<(), Self::Error>>
Sink to receive a value. Read moresource§fn start_send(self: Pin<&mut Self>, item: U) -> Result<(), Self::Error>
fn start_send(self: Pin<&mut Self>, item: U) -> Result<(), Self::Error>
poll_ready which returned Poll::Ready(Ok(())). Read moresource§impl<S, Item, U, Fut, F> Stream for With<S, Item, U, Fut, F>where
S: Stream + Sink<Item>,
F: FnMut(U) -> Fut,
Fut: Future,
impl<S, Item, U, Fut, F> Stream for With<S, Item, U, Fut, F>where S: Stream + Sink<Item>, F: FnMut(U) -> Fut, Fut: Future,
impl<'__pin, Si, Item, U, Fut, F> Unpin for With<Si, Item, U, Fut, F>where __Origin<'__pin, Si, Item, U, Fut, F>: Unpin,
Auto Trait Implementations§
impl<Si, Item, U, Fut, F> RefUnwindSafe for With<Si, Item, U, Fut, F>where F: RefUnwindSafe, Fut: RefUnwindSafe, Si: RefUnwindSafe,
impl<Si, Item, U, Fut, F> Send for With<Si, Item, U, Fut, F>where F: Send, Fut: Send, Si: Send,
impl<Si, Item, U, Fut, F> Sync for With<Si, Item, U, Fut, F>where F: Sync, Fut: Sync, Si: Sync,
impl<Si, Item, U, Fut, F> UnwindSafe for With<Si, Item, U, Fut, F>where F: UnwindSafe, Fut: UnwindSafe, Si: UnwindSafe,
Blanket Implementations§
source§impl<T, Item> SinkExt<Item> for Twhere
T: Sink<Item> + ?Sized,
impl<T, Item> SinkExt<Item> for Twhere T: Sink<Item> + ?Sized,
source§fn with<U, Fut, F, E>(self, f: F) -> With<Self, Item, U, Fut, F>where
F: FnMut(U) -> Fut,
Fut: Future<Output = Result<Item, E>>,
E: From<Self::Error>,
Self: Sized,
fn with<U, Fut, F, E>(self, f: F) -> With<Self, Item, U, Fut, F>where F: FnMut(U) -> Fut, Fut: Future<Output = Result<Item, E>>, E: From<Self::Error>, Self: Sized,
sink only.source§fn with_flat_map<U, St, F>(self, f: F) -> WithFlatMap<Self, Item, U, St, F>where
F: FnMut(U) -> St,
St: Stream<Item = Result<Item, Self::Error>>,
Self: Sized,
fn with_flat_map<U, St, F>(self, f: F) -> WithFlatMap<Self, Item, U, St, F>where F: FnMut(U) -> St, St: Stream<Item = Result<Item, Self::Error>>, Self: Sized,
sink only.source§fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>where
F: FnOnce(Self::Error) -> E,
Self: Sized,
fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>where F: FnOnce(Self::Error) -> E, Self: Sized,
sink only.source§fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>where
Self: Sized,
Self::Error: Into<E>,
fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>where Self: Sized, Self::Error: Into<E>,
sink only.Into trait. Read moresource§fn buffer(self, capacity: usize) -> Buffer<Self, Item>where
Self: Sized,
fn buffer(self, capacity: usize) -> Buffer<Self, Item>where Self: Sized,
sink only.source§fn close(&mut self) -> Close<'_, Self, Item> ⓘwhere
Self: Unpin,
fn close(&mut self) -> Close<'_, Self, Item> ⓘwhere Self: Unpin,
sink only.source§fn fanout<Si>(self, other: Si) -> Fanout<Self, Si>where
Self: Sized,
Item: Clone,
Si: Sink<Item, Error = Self::Error>,
fn fanout<Si>(self, other: Si) -> Fanout<Self, Si>where Self: Sized, Item: Clone, Si: Sink<Item, Error = Self::Error>,
sink only.source§fn flush(&mut self) -> Flush<'_, Self, Item> ⓘwhere
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self, Item> ⓘwhere Self: Unpin,
sink only.source§fn send(&mut self, item: Item) -> Send<'_, Self, Item> ⓘwhere
Self: Unpin,
fn send(&mut self, item: Item) -> Send<'_, Self, Item> ⓘwhere Self: Unpin,
sink only.source§fn feed(&mut self, item: Item) -> Feed<'_, Self, Item> ⓘwhere
Self: Unpin,
fn feed(&mut self, item: Item) -> Feed<'_, Self, Item> ⓘwhere Self: Unpin,
sink only.source§fn send_all<'a, St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St> ⓘwhere
St: TryStream<Ok = Item, Error = Self::Error> + Stream + Unpin + ?Sized,
Self: Unpin,
fn send_all<'a, St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St> ⓘwhere St: TryStream<Ok = Item, Error = Self::Error> + Stream + Unpin + ?Sized, Self: Unpin,
sink only.source§fn left_sink<Si2>(self) -> Either<Self, Si2> ⓘwhere
Si2: Sink<Item, Error = Self::Error>,
Self: Sized,
fn left_sink<Si2>(self) -> Either<Self, Si2> ⓘwhere Si2: Sink<Item, Error = Self::Error>, Self: Sized,
sink only.source§fn right_sink<Si1>(self) -> Either<Si1, Self> ⓘwhere
Si1: Sink<Item, Error = Self::Error>,
Self: Sized,
fn right_sink<Si1>(self) -> Either<Si1, Self> ⓘwhere Si1: Sink<Item, Error = Self::Error>, Self: Sized,
sink only.source§fn compat(self) -> CompatSink<Self, Item>where
Self: Sized + Unpin,
fn compat(self) -> CompatSink<Self, Item>where Self: Sized + Unpin,
sink and compat only.Sink into a sink compatible with libraries using
futures 0.1 Sink. Requires the compat feature to be enabled.source§fn poll_ready_unpin(
&mut self,
cx: &mut Context<'_>
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
fn poll_ready_unpin( &mut self, cx: &mut Context<'_> ) -> Poll<Result<(), Self::Error>>where Self: Unpin,
sink only.Sink::poll_ready on Unpin
sink types.source§fn start_send_unpin(&mut self, item: Item) -> Result<(), Self::Error>where
Self: Unpin,
fn start_send_unpin(&mut self, item: Item) -> Result<(), Self::Error>where Self: Unpin,
sink only.Sink::start_send on Unpin
sink types.