pub struct Peekable<St>where
St: Stream,{ /* private fields */ }
Expand description
A Stream
that implements a peek
method.
The peek
method can be used to retrieve a reference
to the next Stream::Item
if available. A subsequent
call to poll
will return the owned item.
Implementations
sourceimpl<St> Peekable<St>where
St: Stream,
impl<St> Peekable<St>where
St: Stream,
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 Peekable<St>>) -> Pin<&mut St>ⓘNotable traits for Pin<P>impl<P> Future for Pin<P>where
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
pub fn get_pin_mut(self: Pin<&mut Peekable<St>>) -> Pin<&mut St>ⓘNotable traits for Pin<P>impl<P> Future for Pin<P>where
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
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.
sourcepub fn peek(self: Pin<&mut Peekable<St>>) -> Peek<'_, St>ⓘNotable traits for Peek<'a, St>impl<'a, St> Future for Peek<'a, St>where
St: Stream, type Output = Option<&'a <St as Stream>::Item>;
pub fn peek(self: Pin<&mut Peekable<St>>) -> Peek<'_, St>ⓘNotable traits for Peek<'a, St>impl<'a, St> Future for Peek<'a, St>where
St: Stream, type Output = Option<&'a <St as Stream>::Item>;
St: Stream, type Output = Option<&'a <St as Stream>::Item>;
Produces a future which retrieves a reference to the next item
in the stream, or None
if the underlying stream terminates.
sourcepub fn poll_peek(
self: Pin<&mut Peekable<St>>,
cx: &mut Context<'_>
) -> Poll<Option<&<St as Stream>::Item>>
pub fn poll_peek(
self: Pin<&mut Peekable<St>>,
cx: &mut Context<'_>
) -> Poll<Option<&<St as Stream>::Item>>
Peek retrieves a reference to the next item in the stream.
This method polls the underlying stream and return either a reference to the next item if the stream is ready or passes through any errors.
sourcepub fn peek_mut(self: Pin<&mut Peekable<St>>) -> PeekMut<'_, St>ⓘNotable traits for PeekMut<'a, St>impl<'a, St> Future for PeekMut<'a, St>where
St: Stream, type Output = Option<&'a mut <St as Stream>::Item>;
pub fn peek_mut(self: Pin<&mut Peekable<St>>) -> PeekMut<'_, St>ⓘNotable traits for PeekMut<'a, St>impl<'a, St> Future for PeekMut<'a, St>where
St: Stream, type Output = Option<&'a mut <St as Stream>::Item>;
St: Stream, type Output = Option<&'a mut <St as Stream>::Item>;
Produces a future which retrieves a mutable reference to the next item
in the stream, or None
if the underlying stream terminates.
Examples
use futures::stream::{self, StreamExt};
use futures::pin_mut;
let stream = stream::iter(vec![1, 2, 3]).peekable();
pin_mut!(stream);
assert_eq!(stream.as_mut().peek_mut().await, Some(&mut 1));
assert_eq!(stream.as_mut().next().await, Some(1));
// Peek into the stream and modify the value which will be returned next
if let Some(p) = stream.as_mut().peek_mut().await {
if *p == 2 {
*p = 5;
}
}
assert_eq!(stream.collect::<Vec<_>>().await, vec![5, 3]);
sourcepub fn poll_peek_mut(
self: Pin<&mut Peekable<St>>,
cx: &mut Context<'_>
) -> Poll<Option<&mut <St as Stream>::Item>>
pub fn poll_peek_mut(
self: Pin<&mut Peekable<St>>,
cx: &mut Context<'_>
) -> Poll<Option<&mut <St as Stream>::Item>>
Peek retrieves a mutable reference to the next item in the stream.
sourcepub fn next_if<F>(self: Pin<&mut Peekable<St>>, func: F) -> NextIf<'_, St, F>ⓘNotable traits for NextIf<'_, St, F>impl<St, F> Future for NextIf<'_, St, F>where
St: Stream,
F: for<'a> FnOnce1<&'a <St as Stream>::Item, Output = bool>, type Output = Option<<St as Stream>::Item>;
where
F: FnOnce(&<St as Stream>::Item) -> bool,
pub fn next_if<F>(self: Pin<&mut Peekable<St>>, func: F) -> NextIf<'_, St, F>ⓘNotable traits for NextIf<'_, St, F>impl<St, F> Future for NextIf<'_, St, F>where
St: Stream,
F: for<'a> FnOnce1<&'a <St as Stream>::Item, Output = bool>, type Output = Option<<St as Stream>::Item>;
where
F: FnOnce(&<St as Stream>::Item) -> bool,
St: Stream,
F: for<'a> FnOnce1<&'a <St as Stream>::Item, Output = bool>, type Output = Option<<St as Stream>::Item>;
Creates a future which will consume and return the next value of this stream if a condition is true.
If func
returns true
for the next value of this stream, consume and
return it. Otherwise, return None
.
Examples
Consume a number if it’s equal to 0.
use futures::stream::{self, StreamExt};
use futures::pin_mut;
let stream = stream::iter(0..5).peekable();
pin_mut!(stream);
// The first item of the stream is 0; consume it.
assert_eq!(stream.as_mut().next_if(|&x| x == 0).await, Some(0));
// The next item returned is now 1, so `consume` will return `false`.
assert_eq!(stream.as_mut().next_if(|&x| x == 0).await, None);
// `next_if` saves the value of the next item if it was not equal to `expected`.
assert_eq!(stream.next().await, Some(1));
Consume any number less than 10.
use futures::stream::{self, StreamExt};
use futures::pin_mut;
let stream = stream::iter(1..20).peekable();
pin_mut!(stream);
// Consume all numbers less than 10
while stream.as_mut().next_if(|&x| x < 10).await.is_some() {}
// The next value returned will be 10
assert_eq!(stream.next().await, Some(10));
sourcepub fn next_if_eq<T>(
self: Pin<&'a mut Peekable<St>>,
expected: &'a T
) -> NextIfEq<'a, St, T>ⓘNotable traits for NextIfEq<'_, St, T>impl<St, T> Future for NextIfEq<'_, St, T>where
St: Stream,
<St as Stream>::Item: PartialEq<T>,
T: ?Sized, type Output = Option<<St as Stream>::Item>;
where
<St as Stream>::Item: PartialEq<T>,
T: ?Sized,
pub fn next_if_eq<T>(
self: Pin<&'a mut Peekable<St>>,
expected: &'a T
) -> NextIfEq<'a, St, T>ⓘNotable traits for NextIfEq<'_, St, T>impl<St, T> Future for NextIfEq<'_, St, T>where
St: Stream,
<St as Stream>::Item: PartialEq<T>,
T: ?Sized, type Output = Option<<St as Stream>::Item>;
where
<St as Stream>::Item: PartialEq<T>,
T: ?Sized,
St: Stream,
<St as Stream>::Item: PartialEq<T>,
T: ?Sized, type Output = Option<<St as Stream>::Item>;
Creates a future which will consume and return the next item if it is
equal to expected
.
Example
Consume a number if it’s equal to 0.
use futures::stream::{self, StreamExt};
use futures::pin_mut;
let stream = stream::iter(0..5).peekable();
pin_mut!(stream);
// The first item of the stream is 0; consume it.
assert_eq!(stream.as_mut().next_if_eq(&0).await, Some(0));
// The next item returned is now 1, so `consume` will return `false`.
assert_eq!(stream.as_mut().next_if_eq(&0).await, None);
// `next_if_eq` saves the value of the next item if it was not equal to `expected`.
assert_eq!(stream.next().await, Some(1));
Trait Implementations
sourceimpl<St> FusedStream for Peekable<St>where
St: Stream,
impl<St> FusedStream for Peekable<St>where
St: Stream,
sourcefn is_terminated(&self) -> bool
fn is_terminated(&self) -> bool
true
if the stream should no longer be polled.sourceimpl<S, Item> Sink<Item> for Peekable<S>where
S: Sink<Item> + Stream,
impl<S, Item> Sink<Item> for Peekable<S>where
S: Sink<Item> + Stream,
sourcefn poll_ready(
self: Pin<&mut Peekable<S>>,
cx: &mut Context<'_>
) -> Poll<Result<(), <Peekable<S> as Sink<Item>>::Error>>
fn poll_ready(
self: Pin<&mut Peekable<S>>,
cx: &mut Context<'_>
) -> Poll<Result<(), <Peekable<S> as Sink<Item>>::Error>>
Sink
to receive a value. Read moresourcefn start_send(
self: Pin<&mut Peekable<S>>,
item: Item
) -> Result<(), <Peekable<S> as Sink<Item>>::Error>
fn start_send(
self: Pin<&mut Peekable<S>>,
item: Item
) -> Result<(), <Peekable<S> as Sink<Item>>::Error>
poll_ready
which returned Poll::Ready(Ok(()))
. Read moresourceimpl<S> Stream for Peekable<S>where
S: Stream,
impl<S> Stream for Peekable<S>where
S: Stream,
impl<'__pin, St> Unpin for Peekable<St>where
St: Stream,
__Origin<'__pin, St>: Unpin,
Auto Trait Implementations
impl<St> RefUnwindSafe for Peekable<St>where
St: RefUnwindSafe,
<St as Stream>::Item: RefUnwindSafe,
impl<St> Send for Peekable<St>where
St: Send,
<St as Stream>::Item: Send,
impl<St> Sync for Peekable<St>where
St: Sync,
<St as Stream>::Item: Sync,
impl<St> UnwindSafe for Peekable<St>where
St: UnwindSafe,
<St as Stream>::Item: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T, Item> SinkExt<Item> for Twhere
T: Sink<Item> + ?Sized,
impl<T, Item> SinkExt<Item> for Twhere
T: Sink<Item> + ?Sized,
sourcefn 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>,
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>,
sourcefn 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>>,
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>>,
sourcefn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>where
F: FnOnce(Self::Error) -> E,
fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>where
F: FnOnce(Self::Error) -> E,
sourcefn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>where
Self::Error: Into<E>,
fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>where
Self::Error: Into<E>,
Into
trait. Read moresourcefn buffer(self, capacity: usize) -> Buffer<Self, Item>
fn buffer(self, capacity: usize) -> Buffer<Self, Item>
sourcefn close(&mut self) -> Close<'_, Self, Item>ⓘNotable traits for Close<'_, Si, Item>impl<Si, Item> Future for Close<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
fn close(&mut self) -> Close<'_, Self, Item>ⓘNotable traits for Close<'_, Si, Item>impl<Si, Item> Future for Close<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
sourcefn fanout<Si>(self, other: Si) -> Fanout<Self, Si>where
Item: Clone,
Si: Sink<Item, Error = Self::Error>,
fn fanout<Si>(self, other: Si) -> Fanout<Self, Si>where
Item: Clone,
Si: Sink<Item, Error = Self::Error>,
sourcefn flush(&mut self) -> Flush<'_, Self, Item>ⓘNotable traits for Flush<'_, Si, Item>impl<Si, Item> Future for Flush<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self, Item>ⓘNotable traits for Flush<'_, Si, Item>impl<Si, Item> Future for Flush<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
sourcefn send(&mut self, item: Item) -> Send<'_, Self, Item>ⓘNotable traits for Send<'_, Si, Item>impl<Si, Item> Future for Send<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
fn send(&mut self, item: Item) -> Send<'_, Self, Item>ⓘNotable traits for Send<'_, Si, Item>impl<Si, Item> Future for Send<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
sourcefn feed(&mut self, item: Item) -> Feed<'_, Self, Item>ⓘNotable traits for Feed<'_, Si, Item>impl<Si, Item> Future for Feed<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
fn feed(&mut self, item: Item) -> Feed<'_, Self, Item>ⓘNotable traits for Feed<'_, Si, Item>impl<Si, Item> Future for Feed<'_, Si, Item>where
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
where
Self: Unpin,
Si: Sink<Item> + Unpin + ?Sized, type Output = Result<(), <Si as Sink<Item>>::Error>;
sourcefn send_all<St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St>ⓘNotable traits for SendAll<'_, Si, St>impl<Si, St, Ok, Error> Future for SendAll<'_, Si, St>where
Si: Sink<Ok, Error = Error> + Unpin + ?Sized,
St: Stream<Item = Result<Ok, Error>> + Unpin + ?Sized, type Output = Result<(), Error>;
where
St: TryStream<Ok = Item, Error = Self::Error> + Stream + Unpin + ?Sized,
Self: Unpin,
fn send_all<St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St>ⓘNotable traits for SendAll<'_, Si, St>impl<Si, St, Ok, Error> Future for SendAll<'_, Si, St>where
Si: Sink<Ok, Error = Error> + Unpin + ?Sized,
St: Stream<Item = Result<Ok, Error>> + Unpin + ?Sized, type Output = Result<(), Error>;
where
St: TryStream<Ok = Item, Error = Self::Error> + Stream + Unpin + ?Sized,
Self: Unpin,
Si: Sink<Ok, Error = Error> + Unpin + ?Sized,
St: Stream<Item = Result<Ok, Error>> + Unpin + ?Sized, type Output = Result<(), Error>;
sourcefn left_sink<Si2>(self) -> Either<Self, Si2>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
Si2: Sink<Item, Error = Self::Error>,
fn left_sink<Si2>(self) -> Either<Self, Si2>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
Si2: Sink<Item, Error = Self::Error>,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
sourcefn right_sink<Si1>(self) -> Either<Si1, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
Si1: Sink<Item, Error = Self::Error>,
fn right_sink<Si1>(self) -> Either<Si1, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
Si1: Sink<Item, Error = Self::Error>,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
sourcefn 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,
sourceimpl<T> StreamExt for Twhere
T: Stream + ?Sized,
impl<T> StreamExt for Twhere
T: Stream + ?Sized,
sourcefn next(&mut self) -> Next<'_, Self>ⓘNotable traits for Next<'_, St>impl<St> Future for Next<'_, St>where
St: Stream + Unpin + ?Sized, type Output = Option<<St as Stream>::Item>;
where
Self: Unpin,
fn next(&mut self) -> Next<'_, Self>ⓘNotable traits for Next<'_, St>impl<St> Future for Next<'_, St>where
St: Stream + Unpin + ?Sized, type Output = Option<<St as Stream>::Item>;
where
Self: Unpin,
St: Stream + Unpin + ?Sized, type Output = Option<<St as Stream>::Item>;
sourcefn into_future(self) -> StreamFuture<Self>ⓘNotable traits for StreamFuture<St>impl<St> Future for StreamFuture<St>where
St: Stream + Unpin, type Output = (Option<<St as Stream>::Item>, St);
where
Self: Unpin,
fn into_future(self) -> StreamFuture<Self>ⓘNotable traits for StreamFuture<St>impl<St> Future for StreamFuture<St>where
St: Stream + Unpin, type Output = (Option<<St as Stream>::Item>, St);
where
Self: Unpin,
St: Stream + Unpin, type Output = (Option<<St as Stream>::Item>, St);
sourcefn map<T, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> T,
fn map<T, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> T,
sourcefn enumerate(self) -> Enumerate<Self>
fn enumerate(self) -> Enumerate<Self>
sourcefn filter<Fut, F>(self, f: F) -> Filter<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
fn filter<Fut, F>(self, f: F) -> Filter<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
sourcefn filter_map<Fut, T, F>(self, f: F) -> FilterMap<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = Option<T>>,
fn filter_map<Fut, T, F>(self, f: F) -> FilterMap<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = Option<T>>,
sourcefn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future,
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future,
sourcefn collect<C>(self) -> Collect<Self, C>ⓘNotable traits for Collect<St, C>impl<St, C> Future for Collect<St, C>where
St: Stream,
C: Default + Extend<<St as Stream>::Item>, type Output = C;
where
C: Default + Extend<Self::Item>,
fn collect<C>(self) -> Collect<Self, C>ⓘNotable traits for Collect<St, C>impl<St, C> Future for Collect<St, C>where
St: Stream,
C: Default + Extend<<St as Stream>::Item>, type Output = C;
where
C: Default + Extend<Self::Item>,
St: Stream,
C: Default + Extend<<St as Stream>::Item>, type Output = C;
sourcefn unzip<A, B, FromA, FromB>(self) -> Unzip<Self, FromA, FromB>ⓘNotable traits for Unzip<St, FromA, FromB>impl<St, A, B, FromA, FromB> Future for Unzip<St, FromA, FromB>where
St: Stream<Item = (A, B)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>, type Output = (FromA, FromB);
where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Stream<Item = (A, B)>,
fn unzip<A, B, FromA, FromB>(self) -> Unzip<Self, FromA, FromB>ⓘNotable traits for Unzip<St, FromA, FromB>impl<St, A, B, FromA, FromB> Future for Unzip<St, FromA, FromB>where
St: Stream<Item = (A, B)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>, type Output = (FromA, FromB);
where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Stream<Item = (A, B)>,
St: Stream<Item = (A, B)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>, type Output = (FromA, FromB);
sourcefn concat(self) -> Concat<Self>ⓘNotable traits for Concat<St>impl<St> Future for Concat<St>where
St: Stream,
<St as Stream>::Item: Extend<<<St as Stream>::Item as IntoIterator>::Item> + IntoIterator + Default, type Output = <St as Stream>::Item;
where
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator + Default,
fn concat(self) -> Concat<Self>ⓘNotable traits for Concat<St>impl<St> Future for Concat<St>where
St: Stream,
<St as Stream>::Item: Extend<<<St as Stream>::Item as IntoIterator>::Item> + IntoIterator + Default, type Output = <St as Stream>::Item;
where
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator + Default,
St: Stream,
<St as Stream>::Item: Extend<<<St as Stream>::Item as IntoIterator>::Item> + IntoIterator + Default, type Output = <St as Stream>::Item;
sourcefn count(self) -> Count<Self>ⓘNotable traits for Count<St>impl<St> Future for Count<St>where
St: Stream, type Output = usize;
fn count(self) -> Count<Self>ⓘNotable traits for Count<St>impl<St> Future for Count<St>where
St: Stream, type Output = usize;
St: Stream, type Output = usize;
sourcefn fold<T, Fut, F>(self, init: T, f: F) -> Fold<Self, Fut, T, F>ⓘNotable traits for Fold<St, Fut, T, F>impl<St, Fut, T, F> Future for Fold<St, Fut, T, F>where
St: Stream,
F: FnMut(T, <St as Stream>::Item) -> Fut,
Fut: Future<Output = T>, type Output = T;
where
F: FnMut(T, Self::Item) -> Fut,
Fut: Future<Output = T>,
fn fold<T, Fut, F>(self, init: T, f: F) -> Fold<Self, Fut, T, F>ⓘNotable traits for Fold<St, Fut, T, F>impl<St, Fut, T, F> Future for Fold<St, Fut, T, F>where
St: Stream,
F: FnMut(T, <St as Stream>::Item) -> Fut,
Fut: Future<Output = T>, type Output = T;
where
F: FnMut(T, Self::Item) -> Fut,
Fut: Future<Output = T>,
St: Stream,
F: FnMut(T, <St as Stream>::Item) -> Fut,
Fut: Future<Output = T>, type Output = T;
sourcefn any<Fut, F>(self, f: F) -> Any<Self, Fut, F>ⓘNotable traits for Any<St, Fut, F>impl<St, Fut, F> Future for Any<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = bool>, type Output = bool;
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
fn any<Fut, F>(self, f: F) -> Any<Self, Fut, F>ⓘNotable traits for Any<St, Fut, F>impl<St, Fut, F> Future for Any<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = bool>, type Output = bool;
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = bool>, type Output = bool;
true
if any element in stream satisfied a predicate. Read moresourcefn all<Fut, F>(self, f: F) -> All<Self, Fut, F>ⓘNotable traits for All<St, Fut, F>impl<St, Fut, F> Future for All<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = bool>, type Output = bool;
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
fn all<Fut, F>(self, f: F) -> All<Self, Fut, F>ⓘNotable traits for All<St, Fut, F>impl<St, Fut, F> Future for All<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = bool>, type Output = bool;
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = bool>, type Output = bool;
true
if all element in stream satisfied a predicate. Read moresourcefn flatten(self) -> Flatten<Self>where
Self::Item: Stream,
fn flatten(self) -> Flatten<Self>where
Self::Item: Stream,
sourcefn flatten_unordered(
self,
limit: impl Into<Option<usize>>
) -> FlattenUnorderedWithFlowController<Self, ()>where
Self::Item: Stream + Unpin,
fn flatten_unordered(
self,
limit: impl Into<Option<usize>>
) -> FlattenUnorderedWithFlowController<Self, ()>where
Self::Item: Stream + Unpin,
sourcefn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
F: FnMut(Self::Item) -> U,
U: Stream,
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
F: FnMut(Self::Item) -> U,
U: Stream,
sourcefn flat_map_unordered<U, F>(
self,
limit: impl Into<Option<usize>>,
f: F
) -> FlatMapUnordered<Self, U, F>where
U: Stream + Unpin,
F: FnMut(Self::Item) -> U,
fn flat_map_unordered<U, F>(
self,
limit: impl Into<Option<usize>>,
f: F
) -> FlatMapUnordered<Self, U, F>where
U: Stream + Unpin,
F: FnMut(Self::Item) -> U,
StreamExt::map
but flattens nested Stream
s
and polls them concurrently, yielding items in any order, as they made
available. Read moresourcefn scan<S, B, Fut, F>(self, initial_state: S, f: F) -> Scan<Self, S, Fut, F>where
F: FnMut(&mut S, Self::Item) -> Fut,
Fut: Future<Output = Option<B>>,
fn scan<S, B, Fut, F>(self, initial_state: S, f: F) -> Scan<Self, S, Fut, F>where
F: FnMut(&mut S, Self::Item) -> Fut,
Fut: Future<Output = Option<B>>,
StreamExt::fold
that holds internal state
and produces a new stream. Read moresourcefn skip_while<Fut, F>(self, f: F) -> SkipWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
fn skip_while<Fut, F>(self, f: F) -> SkipWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
true
. Read moresourcefn take_while<Fut, F>(self, f: F) -> TakeWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
fn take_while<Fut, F>(self, f: F) -> TakeWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
true
. Read moresourcefn take_until<Fut>(self, fut: Fut) -> TakeUntil<Self, Fut>where
Fut: Future,
fn take_until<Fut>(self, fut: Fut) -> TakeUntil<Self, Fut>where
Fut: Future,
sourcefn for_each<Fut, F>(self, f: F) -> ForEach<Self, Fut, F>ⓘNotable traits for ForEach<St, Fut, F>impl<St, Fut, F> Future for ForEach<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = ()>,
fn for_each<Fut, F>(self, f: F) -> ForEach<Self, Fut, F>ⓘNotable traits for ForEach<St, Fut, F>impl<St, Fut, F> Future for ForEach<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = ()>,
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();
sourcefn for_each_concurrent<Fut, F>(
self,
limit: impl Into<Option<usize>>,
f: F
) -> ForEachConcurrent<Self, Fut, F>ⓘNotable traits for ForEachConcurrent<St, Fut, F>impl<St, Fut, F> Future for ForEachConcurrent<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = ()>,
fn for_each_concurrent<Fut, F>(
self,
limit: impl Into<Option<usize>>,
f: F
) -> ForEachConcurrent<Self, Fut, F>ⓘNotable traits for ForEachConcurrent<St, Fut, F>impl<St, Fut, F> Future for ForEachConcurrent<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();
where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = ()>,
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();
sourcefn take(self, n: usize) -> Take<Self>
fn take(self, n: usize) -> Take<Self>
n
items of the underlying stream. Read moresourcefn skip(self, n: usize) -> Skip<Self>
fn skip(self, n: usize) -> Skip<Self>
n
items of the underlying stream. Read moresourcefn catch_unwind(self) -> CatchUnwind<Self>where
Self: UnwindSafe,
fn catch_unwind(self) -> CatchUnwind<Self>where
Self: UnwindSafe,
sourcefn boxed<'a>(
self
) -> Pin<Box<dyn Stream<Item = Self::Item> + Send + 'a, Global>>ⓘNotable traits for Pin<P>impl<P> Future for Pin<P>where
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
where
Self: 'a + Send,
fn boxed<'a>(
self
) -> Pin<Box<dyn Stream<Item = Self::Item> + Send + 'a, Global>>ⓘNotable traits for Pin<P>impl<P> Future for Pin<P>where
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
where
Self: 'a + Send,
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
sourcefn boxed_local<'a>(self) -> Pin<Box<dyn Stream<Item = Self::Item> + 'a, Global>>ⓘNotable traits for Pin<P>impl<P> Future for Pin<P>where
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
where
Self: 'a,
fn boxed_local<'a>(self) -> Pin<Box<dyn Stream<Item = Self::Item> + 'a, Global>>ⓘNotable traits for Pin<P>impl<P> Future for Pin<P>where
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
where
Self: 'a,
P: DerefMut,
<P as Deref>::Target: Future, type Output = <<P as Deref>::Target as Future>::Output;
sourcefn buffered(self, n: usize) -> Buffered<Self>where
Self::Item: Future,
fn buffered(self, n: usize) -> Buffered<Self>where
Self::Item: Future,
sourcefn buffer_unordered(self, n: usize) -> BufferUnordered<Self>where
Self::Item: Future,
fn buffer_unordered(self, n: usize) -> BufferUnordered<Self>where
Self::Item: Future,
sourcefn zip<St>(self, other: St) -> Zip<Self, St>where
St: Stream,
fn zip<St>(self, other: St) -> Zip<Self, St>where
St: Stream,
sourcefn chain<St>(self, other: St) -> Chain<Self, St>where
St: Stream<Item = Self::Item>,
fn chain<St>(self, other: St) -> Chain<Self, St>where
St: Stream<Item = Self::Item>,
sourcefn peekable(self) -> Peekable<Self>
fn peekable(self) -> Peekable<Self>
peek
method. Read moresourcefn chunks(self, capacity: usize) -> Chunks<Self>
fn chunks(self, capacity: usize) -> Chunks<Self>
sourcefn ready_chunks(self, capacity: usize) -> ReadyChunks<Self>
fn ready_chunks(self, capacity: usize) -> ReadyChunks<Self>
sourcefn forward<S>(self, sink: S) -> Forward<Self, S>ⓘNotable traits for Forward<St, Si>impl<St, Si> Future for Forward<St, Si>where
Forward<St, Si, <St as TryStream>::Ok>: Future,
St: TryStream, type Output = <Forward<St, Si, <St as TryStream>::Ok> as Future>::Output;
where
S: Sink<Self::Ok, Error = Self::Error>,
Self: TryStream,
fn forward<S>(self, sink: S) -> Forward<Self, S>ⓘNotable traits for Forward<St, Si>impl<St, Si> Future for Forward<St, Si>where
Forward<St, Si, <St as TryStream>::Ok>: Future,
St: TryStream, type Output = <Forward<St, Si, <St as TryStream>::Ok> as Future>::Output;
where
S: Sink<Self::Ok, Error = Self::Error>,
Self: TryStream,
Forward<St, Si, <St as TryStream>::Ok>: Future,
St: TryStream, type Output = <Forward<St, Si, <St as TryStream>::Ok> as Future>::Output;
sourcefn split<Item>(self) -> (SplitSink<Self, Item>, SplitStream<Self>)where
Self: Sink<Item>,
fn split<Item>(self) -> (SplitSink<Self, Item>, SplitStream<Self>)where
Self: Sink<Item>,
sourcefn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
fn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
sourcefn left_stream<B>(self) -> Either<Self, B>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
B: Stream<Item = Self::Item>,
fn left_stream<B>(self) -> Either<Self, B>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
B: Stream<Item = Self::Item>,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
sourcefn right_stream<B>(self) -> Either<B, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
B: Stream<Item = Self::Item>,
fn right_stream<B>(self) -> Either<B, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
where
B: Stream<Item = Self::Item>,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
sourcefn poll_next_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>where
Self: Unpin,
fn poll_next_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>where
Self: Unpin,
sourcefn select_next_some(&mut self) -> SelectNextSome<'_, Self>ⓘNotable traits for SelectNextSome<'_, St>impl<St> Future for SelectNextSome<'_, St>where
St: FusedStream + Unpin + ?Sized, type Output = <St as Stream>::Item;
where
Self: Unpin + FusedStream,
fn select_next_some(&mut self) -> SelectNextSome<'_, Self>ⓘNotable traits for SelectNextSome<'_, St>impl<St> Future for SelectNextSome<'_, St>where
St: FusedStream + Unpin + ?Sized, type Output = <St as Stream>::Item;
where
Self: Unpin + FusedStream,
St: FusedStream + Unpin + ?Sized, type Output = <St as Stream>::Item;
sourceimpl<S, T, E> TryStream for Swhere
S: Stream<Item = Result<T, E>> + ?Sized,
impl<S, T, E> TryStream for Swhere
S: Stream<Item = Result<T, E>> + ?Sized,
sourceimpl<S> TryStreamExt for Swhere
S: TryStream + ?Sized,
impl<S> TryStreamExt for Swhere
S: TryStream + ?Sized,
sourcefn err_into<E>(self) -> ErrInto<Self, E>where
Self::Error: Into<E>,
fn err_into<E>(self) -> ErrInto<Self, E>where
Self::Error: Into<E>,
sourcefn map_ok<T, F>(self, f: F) -> MapOk<Self, F>where
F: FnMut(Self::Ok) -> T,
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>where
F: FnMut(Self::Ok) -> T,
sourcefn map_err<E, F>(self, f: F) -> MapErr<Self, F>where
F: FnMut(Self::Error) -> E,
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>where
F: FnMut(Self::Error) -> E,
sourcefn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
f
. Read moresourcefn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>where
F: FnMut(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>where
F: FnMut(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
f
. Read moresourcefn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>where
F: FnMut(&Self::Ok),
fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>where
F: FnMut(&Self::Ok),
sourcefn inspect_err<F>(self, f: F) -> InspectErr<Self, F>where
F: FnMut(&Self::Error),
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F>where
F: FnMut(&Self::Error),
sourcefn into_stream(self) -> IntoStream<Self>
fn into_stream(self) -> IntoStream<Self>
sourcefn try_next(&mut self) -> TryNext<'_, Self>ⓘNotable traits for TryNext<'_, St>impl<St> Future for TryNext<'_, St>where
St: TryStream + Unpin + ?Sized, type Output = Result<Option<<St as TryStream>::Ok>, <St as TryStream>::Error>;
where
Self: Unpin,
fn try_next(&mut self) -> TryNext<'_, Self>ⓘNotable traits for TryNext<'_, St>impl<St> Future for TryNext<'_, St>where
St: TryStream + Unpin + ?Sized, type Output = Result<Option<<St as TryStream>::Ok>, <St as TryStream>::Error>;
where
Self: Unpin,
St: TryStream + Unpin + ?Sized, type Output = Result<Option<<St as TryStream>::Ok>, <St as TryStream>::Error>;
sourcefn try_for_each<Fut, F>(self, f: F) -> TryForEach<Self, Fut, F>ⓘNotable traits for TryForEach<St, Fut, F>impl<St, Fut, F> Future for TryForEach<St, Fut, F>where
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = <St as TryStream>::Error>, type Output = Result<(), <St as TryStream>::Error>;
where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = Self::Error>,
fn try_for_each<Fut, F>(self, f: F) -> TryForEach<Self, Fut, F>ⓘNotable traits for TryForEach<St, Fut, F>impl<St, Fut, F> Future for TryForEach<St, Fut, F>where
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = <St as TryStream>::Error>, type Output = Result<(), <St as TryStream>::Error>;
where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = Self::Error>,
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = <St as TryStream>::Error>, type Output = Result<(), <St as TryStream>::Error>;
sourcefn try_skip_while<Fut, F>(self, f: F) -> TrySkipWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
fn try_skip_while<Fut, F>(self, f: F) -> TrySkipWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
true
. Read moresourcefn try_take_while<Fut, F>(self, f: F) -> TryTakeWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
fn try_take_while<Fut, F>(self, f: F) -> TryTakeWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
true
. Read moresourcefn try_for_each_concurrent<Fut, F>(
self,
limit: impl Into<Option<usize>>,
f: F
) -> TryForEachConcurrent<Self, Fut, F>ⓘNotable traits for TryForEachConcurrent<St, Fut, F>impl<St, Fut, F> Future for TryForEachConcurrent<St, Fut, F>where
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: Future<Output = Result<(), <St as TryStream>::Error>>, type Output = Result<(), <St as TryStream>::Error>;
where
F: FnMut(Self::Ok) -> Fut,
Fut: Future<Output = Result<(), Self::Error>>,
fn try_for_each_concurrent<Fut, F>(
self,
limit: impl Into<Option<usize>>,
f: F
) -> TryForEachConcurrent<Self, Fut, F>ⓘNotable traits for TryForEachConcurrent<St, Fut, F>impl<St, Fut, F> Future for TryForEachConcurrent<St, Fut, F>where
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: Future<Output = Result<(), <St as TryStream>::Error>>, type Output = Result<(), <St as TryStream>::Error>;
where
F: FnMut(Self::Ok) -> Fut,
Fut: Future<Output = Result<(), Self::Error>>,
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: Future<Output = Result<(), <St as TryStream>::Error>>, type Output = Result<(), <St as TryStream>::Error>;
sourcefn try_collect<C>(self) -> TryCollect<Self, C>ⓘNotable traits for TryCollect<St, C>impl<St, C> Future for TryCollect<St, C>where
St: TryStream,
C: Default + Extend<<St as TryStream>::Ok>, type Output = Result<C, <St as TryStream>::Error>;
where
C: Default + Extend<Self::Ok>,
fn try_collect<C>(self) -> TryCollect<Self, C>ⓘNotable traits for TryCollect<St, C>impl<St, C> Future for TryCollect<St, C>where
St: TryStream,
C: Default + Extend<<St as TryStream>::Ok>, type Output = Result<C, <St as TryStream>::Error>;
where
C: Default + Extend<Self::Ok>,
St: TryStream,
C: Default + Extend<<St as TryStream>::Ok>, type Output = Result<C, <St as TryStream>::Error>;
sourcefn try_chunks(self, capacity: usize) -> TryChunks<Self>
fn try_chunks(self, capacity: usize) -> TryChunks<Self>
sourcefn try_filter<Fut, F>(self, f: F) -> TryFilter<Self, Fut, F>where
Fut: Future<Output = bool>,
F: FnMut(&Self::Ok) -> Fut,
fn try_filter<Fut, F>(self, f: F) -> TryFilter<Self, Fut, F>where
Fut: Future<Output = bool>,
F: FnMut(&Self::Ok) -> Fut,
sourcefn try_filter_map<Fut, F, T>(self, f: F) -> TryFilterMap<Self, Fut, F>where
Fut: TryFuture<Ok = Option<T>, Error = Self::Error>,
F: FnMut(Self::Ok) -> Fut,
fn try_filter_map<Fut, F, T>(self, f: F) -> TryFilterMap<Self, Fut, F>where
Fut: TryFuture<Ok = Option<T>, Error = Self::Error>,
F: FnMut(Self::Ok) -> Fut,
sourcefn try_flatten_unordered(
self,
limit: impl Into<Option<usize>>
) -> TryFlattenUnordered<Self>where
Self::Ok: TryStream + Unpin,
<Self::Ok as TryStream>::Error: From<Self::Error>,
fn try_flatten_unordered(
self,
limit: impl Into<Option<usize>>
) -> TryFlattenUnordered<Self>where
Self::Ok: TryStream + Unpin,
<Self::Ok as TryStream>::Error: From<Self::Error>,
sourcefn try_flatten(self) -> TryFlatten<Self>where
Self::Ok: TryStream,
<Self::Ok as TryStream>::Error: From<Self::Error>,
fn try_flatten(self) -> TryFlatten<Self>where
Self::Ok: TryStream,
<Self::Ok as TryStream>::Error: From<Self::Error>,
sourcefn try_fold<T, Fut, F>(self, init: T, f: F) -> TryFold<Self, Fut, T, F>ⓘNotable traits for TryFold<St, Fut, T, F>impl<St, Fut, T, F> Future for TryFold<St, Fut, T, F>where
St: TryStream,
F: FnMut(T, <St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = <St as TryStream>::Error>, type Output = Result<T, <St as TryStream>::Error>;
where
F: FnMut(T, Self::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = Self::Error>,
fn try_fold<T, Fut, F>(self, init: T, f: F) -> TryFold<Self, Fut, T, F>ⓘNotable traits for TryFold<St, Fut, T, F>impl<St, Fut, T, F> Future for TryFold<St, Fut, T, F>where
St: TryStream,
F: FnMut(T, <St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = <St as TryStream>::Error>, type Output = Result<T, <St as TryStream>::Error>;
where
F: FnMut(T, Self::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = Self::Error>,
St: TryStream,
F: FnMut(T, <St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = <St as TryStream>::Error>, type Output = Result<T, <St as TryStream>::Error>;
sourcefn try_concat(self) -> TryConcat<Self>ⓘNotable traits for TryConcat<St>impl<St> Future for TryConcat<St>where
St: TryStream,
<St as TryStream>::Ok: Extend<<<St as TryStream>::Ok as IntoIterator>::Item> + IntoIterator + Default, type Output = Result<<St as TryStream>::Ok, <St as TryStream>::Error>;
where
Self::Ok: Extend<<Self::Ok as IntoIterator>::Item> + IntoIterator + Default,
fn try_concat(self) -> TryConcat<Self>ⓘNotable traits for TryConcat<St>impl<St> Future for TryConcat<St>where
St: TryStream,
<St as TryStream>::Ok: Extend<<<St as TryStream>::Ok as IntoIterator>::Item> + IntoIterator + Default, type Output = Result<<St as TryStream>::Ok, <St as TryStream>::Error>;
where
Self::Ok: Extend<<Self::Ok as IntoIterator>::Item> + IntoIterator + Default,
St: TryStream,
<St as TryStream>::Ok: Extend<<<St as TryStream>::Ok as IntoIterator>::Item> + IntoIterator + Default, type Output = Result<<St as TryStream>::Ok, <St as TryStream>::Error>;
sourcefn try_buffer_unordered(self, n: usize) -> TryBufferUnordered<Self>where
Self::Ok: TryFuture<Error = Self::Error>,
fn try_buffer_unordered(self, n: usize) -> TryBufferUnordered<Self>where
Self::Ok: TryFuture<Error = Self::Error>,
sourcefn try_buffered(self, n: usize) -> TryBuffered<Self>where
Self::Ok: TryFuture<Error = Self::Error>,
fn try_buffered(self, n: usize) -> TryBuffered<Self>where
Self::Ok: TryFuture<Error = Self::Error>,
sourcefn try_poll_next_unpin(
&mut self,
cx: &mut Context<'_>
) -> Poll<Option<Result<Self::Ok, Self::Error>>>where
Self: Unpin,
fn try_poll_next_unpin(
&mut self,
cx: &mut Context<'_>
) -> Poll<Option<Result<Self::Ok, Self::Error>>>where
Self: Unpin,
sourcefn into_async_read(self) -> IntoAsyncRead<Self>where
Self: TryStreamExt<Error = Error>,
Self::Ok: AsRef<[u8]>,
fn into_async_read(self) -> IntoAsyncRead<Self>where
Self: TryStreamExt<Error = Error>,
Self::Ok: AsRef<[u8]>,
AsyncBufRead
. Read more