Struct futures_util::stream::Scan
source · pub struct Scan<St: Stream, S, Fut, F> { /* private fields */ }
Expand description
Stream for the scan
method.
Implementations§
source§impl<B, St, S, Fut, F> Scan<St, S, Fut, F>where
St: Stream,
F: FnMut(&mut S, St::Item) -> Fut,
Fut: Future<Output = Option<B>>,
impl<B, St, S, Fut, F> Scan<St, S, Fut, F>where
St: Stream,
F: FnMut(&mut S, St::Item) -> Fut,
Fut: Future<Output = Option<B>>,
sourcepub fn get_ref(&self) -> &St
pub fn get_ref(&self) -> &St
Acquires a reference to the underlying sink or stream that this combinator is pulling from.
sourcepub fn get_mut(&mut self) -> &mut St
pub fn get_mut(&mut self) -> &mut St
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 St>
pub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut St>
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) -> St
pub fn into_inner(self) -> St
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<St, S, Fut, F> Debug for Scan<St, S, Fut, F>where
St: Stream + Debug,
St::Item: Debug,
S: Debug,
Fut: Debug,
impl<St, S, Fut, F> Debug for Scan<St, S, Fut, F>where
St: Stream + Debug,
St::Item: Debug,
S: Debug,
Fut: Debug,
source§impl<B, St, S, Fut, F> FusedStream for Scan<St, S, Fut, F>where
St: FusedStream,
F: FnMut(&mut S, St::Item) -> Fut,
Fut: Future<Output = Option<B>>,
impl<B, St, S, Fut, F> FusedStream for Scan<St, S, Fut, F>where
St: FusedStream,
F: FnMut(&mut S, St::Item) -> Fut,
Fut: Future<Output = Option<B>>,
source§fn is_terminated(&self) -> bool
fn is_terminated(&self) -> bool
true
if the stream should no longer be polled.source§impl<St, S, Fut, F, Item> Sink<Item> for Scan<St, S, Fut, F>where
St: Stream + Sink<Item>,
impl<St, S, Fut, F, Item> Sink<Item> for Scan<St, S, Fut, F>where
St: Stream + Sink<Item>,
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: Item) -> Result<(), Self::Error>
fn start_send(self: Pin<&mut Self>, item: Item) -> Result<(), Self::Error>
poll_ready
which returned Poll::Ready(Ok(()))
. Read moresource§impl<B, St, S, Fut, F> Stream for Scan<St, S, Fut, F>where
St: Stream,
F: FnMut(&mut S, St::Item) -> Fut,
Fut: Future<Output = Option<B>>,
impl<B, St, S, Fut, F> Stream for Scan<St, S, Fut, F>where
St: Stream,
F: FnMut(&mut S, St::Item) -> Fut,
Fut: Future<Output = Option<B>>,
impl<'__pin, St: Stream, S, Fut, F> Unpin for Scan<St, S, Fut, F>where
__Origin<'__pin, St, S, Fut, F>: Unpin,
Auto Trait Implementations§
impl<St, S, Fut, F> RefUnwindSafe for Scan<St, S, Fut, F>where
F: RefUnwindSafe,
Fut: RefUnwindSafe,
S: RefUnwindSafe,
St: RefUnwindSafe,
impl<St, S, Fut, F> Send for Scan<St, S, Fut, F>where
F: Send,
Fut: Send,
S: Send,
St: Send,
impl<St, S, Fut, F> Sync for Scan<St, S, Fut, F>where
F: Sync,
Fut: Sync,
S: Sync,
St: Sync,
impl<St, S, Fut, F> UnwindSafe for Scan<St, S, Fut, F>where
F: UnwindSafe,
Fut: UnwindSafe,
S: UnwindSafe,
St: 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,
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,
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,
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>,
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,
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>,
source§fn flush(&mut self) -> Flush<'_, Self, Item> ⓘwhere
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self, Item> ⓘwhere
Self: Unpin,
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,
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,
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,
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,
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,
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::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::start_send
on Unpin
sink types.