pub struct Receiver<M: Message> { /* private fields */ }Expand description
A message consumer that poll messages
from the Sender
Implementations§
source§impl<M: Message> Receiver<M>
impl<M: Message> Receiver<M>
sourcepub fn capacity(&self) -> usize
pub fn capacity(&self) -> usize
get the capcity of the channel
it will remain the usize::MAX
when created, but can be updated
via set_capacity
sourcepub fn set_capacity(&self, cap: usize)
pub fn set_capacity(&self, cap: usize)
set the capcity of message queue
when the messages reach the capcity
it will transimit the queue to
state STATUSFULL where no more
messages will be received
sourcepub fn message_number(&self) -> usize
pub fn message_number(&self) -> usize
get the number of messages remain in the queue
struct Num(uisze);
impl Message for Num {}
struct CrossBus;
impl Actor for CrossBus {
...
}
let (addr, _) = CrossBus::start();
let sender = addr.sender();
sender.send(Num(1)).unwrap();
sender.send(Num(2)).unwrap();
sender.send(Num(3)).unwrap();
let receiver = addr.receiver();
assert_eq!(receiver.message_number(), 3)sourcepub fn set_close(&self)
pub fn set_close(&self)
mark the underlying data exchange gets closed.
NOTE that the underlying message queue wont get closed if any of the following meets:
- at least one sender is alive
- no sender, but messages remains
sourcepub fn downgrade(&self) -> WeakReceiver<M>
pub fn downgrade(&self) -> WeakReceiver<M>
downgrade to WeakReceiver which can later be upgraded
NOTE that the underlying data could be moved or consumed or otherwise
Trait Implementations§
source§impl<M: Message> Stream for Receiver<M>
impl<M: Message> Stream for Receiver<M>
Auto Trait Implementations§
impl<M> !RefUnwindSafe for Receiver<M>
impl<M> Send for Receiver<M>where M: Send + Sync,
impl<M> Sync for Receiver<M>where M: Send + Sync,
impl<M> Unpin for Receiver<M>
impl<M> !UnwindSafe for Receiver<M>
Blanket Implementations§
§impl<I> IntoStream for Iwhere
I: Stream,
impl<I> IntoStream for Iwhere I: Stream,
§type IntoStream = I
type IntoStream = I
Which kind of stream are we turning this into?
§fn into_stream(self) -> I
fn into_stream(self) -> I
Creates a stream from a value.
§impl<T> StreamExt for Twhere
T: Stream + ?Sized,
impl<T> StreamExt for Twhere T: Stream + ?Sized,
§fn next(&mut self) -> NextFuture<'_, Self>where
Self: Unpin,
fn next(&mut self) -> NextFuture<'_, Self>where Self: Unpin,
Advances the stream and returns the next value. Read more
§fn take(self, n: usize) -> Take<Self>where
Self: Sized,
fn take(self, n: usize) -> Take<Self>where Self: Sized,
Creates a stream that yields its first
n elements. Read more§fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where
Self: Sized,
P: FnMut(&Self::Item) -> bool,
fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where Self: Sized, P: FnMut(&Self::Item) -> bool,
Creates a stream that yields elements based on a predicate. Read more
§fn throttle(self, d: Duration) -> Throttle<Self>where
Self: Sized,
fn throttle(self, d: Duration) -> Throttle<Self>where Self: Sized,
Limit the amount of items yielded per timeslice in a stream. Read more
§fn step_by(self, step: usize) -> StepBy<Self>where
Self: Sized,
fn step_by(self, step: usize) -> StepBy<Self>where Self: Sized,
Creates a stream that yields each
stepth element. Read more§fn chain<U>(self, other: U) -> Chain<Self, U>where
Self: Sized,
U: Stream<Item = Self::Item>,
fn chain<U>(self, other: U) -> Chain<Self, U>where Self: Sized, U: Stream<Item = Self::Item>,
Takes two streams and creates a new stream over both in sequence. Read more
§fn cloned<'a, T>(self) -> Cloned<Self>where
Self: Sized + Stream<Item = &'a T>,
T: Clone + 'a,
fn cloned<'a, T>(self) -> Cloned<Self>where Self: Sized + Stream<Item = &'a T>, T: Clone + 'a,
Creates an stream which copies all of its elements. Read more
§fn copied<'a, T>(self) -> Copied<Self>where
Self: Sized + Stream<Item = &'a T>,
T: Copy + 'a,
fn copied<'a, T>(self) -> Copied<Self>where Self: Sized + Stream<Item = &'a T>, T: Copy + 'a,
Creates an stream which copies all of its elements. Read more
§fn cycle(self) -> Cycle<Self>where
Self: Clone + Sized,
fn cycle(self) -> Cycle<Self>where Self: Clone + Sized,
Creates a stream that yields the provided values infinitely and in order. Read more
§fn enumerate(self) -> Enumerate<Self>where
Self: Sized,
fn enumerate(self) -> Enumerate<Self>where Self: Sized,
Creates a stream that gives the current element’s count as well as the next value. Read more
§fn delay(self, dur: Duration) -> Delay<Self>where
Self: Sized,
fn delay(self, dur: Duration) -> Delay<Self>where Self: Sized,
Creates a stream that is delayed before it starts yielding items. Read more
§fn map<B, F>(self, f: F) -> Map<Self, F>where
Self: Sized,
F: FnMut(Self::Item) -> B,
fn map<B, F>(self, f: F) -> Map<Self, F>where Self: Sized, F: FnMut(Self::Item) -> B,
Takes a closure and creates a stream that calls that closure on every element of this stream. Read more
§fn inspect<F>(self, f: F) -> Inspect<Self, F>where
Self: Sized,
F: FnMut(&Self::Item),
fn inspect<F>(self, f: F) -> Inspect<Self, F>where Self: Sized, F: FnMut(&Self::Item),
A combinator that does something with each element in the stream, passing the value
on. Read more
§fn last(self) -> LastFuture<Self, Self::Item>where
Self: Sized,
fn last(self) -> LastFuture<Self, Self::Item>where Self: Sized,
Returns the last element of the stream. Read more
§fn fuse(self) -> Fuse<Self>where
Self: Sized,
fn fuse(self) -> Fuse<Self>where Self: Sized,
Creates a stream which ends after the first
None. Read more§fn filter<P>(self, predicate: P) -> Filter<Self, P>where
Self: Sized,
P: FnMut(&Self::Item) -> bool,
fn filter<P>(self, predicate: P) -> Filter<Self, P>where Self: Sized, P: FnMut(&Self::Item) -> bool,
Creates a stream that uses a predicate to determine if an element should be yielded. Read more
§fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
Self: Sized,
U: IntoStream,
F: FnMut(Self::Item) -> U,
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where Self: Sized, U: IntoStream, F: FnMut(Self::Item) -> U,
Creates an stream that works like map, but flattens nested structure. Read more
§fn flatten(self) -> Flatten<Self>where
Self: Sized,
Self::Item: IntoStream,
fn flatten(self) -> Flatten<Self>where Self: Sized, Self::Item: IntoStream,
Creates an stream that flattens nested structure. Read more
§fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F>where
Self: Sized,
F: FnMut(Self::Item) -> Option<B>,
fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F>where Self: Sized, F: FnMut(Self::Item) -> Option<B>,
Both filters and maps a stream. Read more
§fn min_by_key<B, F>(self, key_by: F) -> MinByKeyFuture<Self, Self::Item, F>where
Self: Sized,
B: Ord,
F: FnMut(&Self::Item) -> B,
fn min_by_key<B, F>(self, key_by: F) -> MinByKeyFuture<Self, Self::Item, F>where Self: Sized, B: Ord, F: FnMut(&Self::Item) -> B,
Returns the element that gives the minimum value with respect to the
specified key function. If several elements are equally minimum,
the first element is returned. If the stream is empty,
None is returned. Read more§fn max_by_key<B, F>(self, key_by: F) -> MaxByKeyFuture<Self, Self::Item, F>where
Self: Sized,
B: Ord,
F: FnMut(&Self::Item) -> B,
fn max_by_key<B, F>(self, key_by: F) -> MaxByKeyFuture<Self, Self::Item, F>where Self: Sized, B: Ord, F: FnMut(&Self::Item) -> B,
Returns the element that gives the maximum value with respect to the
specified key function. If several elements are equally maximum,
the first element is returned. If the stream is empty,
None is returned. Read more§fn min_by<F>(self, compare: F) -> MinByFuture<Self, F, Self::Item>where
Self: Sized,
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
fn min_by<F>(self, compare: F) -> MinByFuture<Self, F, Self::Item>where Self: Sized, F: FnMut(&Self::Item, &Self::Item) -> Ordering,
Returns the element that gives the minimum value with respect to the
specified comparison function. If several elements are equally minimum,
the first element is returned. If the stream is empty,
None is returned. Read more§fn max(self) -> MaxFuture<Self, Self::Item>where
Self: Sized,
Self::Item: Ord,
fn max(self) -> MaxFuture<Self, Self::Item>where Self: Sized, Self::Item: Ord,
Returns the element that gives the maximum value. If several elements are equally maximum,
the first element is returned. If the stream is empty,
None is returned. Read more§fn min(self) -> MinFuture<Self, Self::Item>where
Self: Sized,
Self::Item: Ord,
fn min(self) -> MinFuture<Self, Self::Item>where Self: Sized, Self::Item: Ord,
Returns the element that gives the minimum value. If several elements are equally minimum,
the first element is returned. If the stream is empty,
None is returned. Read more§fn max_by<F>(self, compare: F) -> MaxByFuture<Self, F, Self::Item>where
Self: Sized,
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
fn max_by<F>(self, compare: F) -> MaxByFuture<Self, F, Self::Item>where Self: Sized, F: FnMut(&Self::Item, &Self::Item) -> Ordering,
Returns the element that gives the maximum value with respect to the
specified comparison function. If several elements are equally maximum,
the first element is returned. If the stream is empty,
None is returned. Read more§fn nth(&mut self, n: usize) -> NthFuture<'_, Self>where
Self: Unpin + Sized,
fn nth(&mut self, n: usize) -> NthFuture<'_, Self>where Self: Unpin + Sized,
Returns the nth element of the stream. Read more
§fn all<F>(&mut self, f: F) -> AllFuture<'_, Self, F, Self::Item>where
Self: Unpin + Sized,
F: FnMut(Self::Item) -> bool,
fn all<F>(&mut self, f: F) -> AllFuture<'_, Self, F, Self::Item>where Self: Unpin + Sized, F: FnMut(Self::Item) -> bool,
Tests if every element of the stream matches a predicate. Read more
§fn find<P>(&mut self, p: P) -> FindFuture<'_, Self, P>where
Self: Unpin + Sized,
P: FnMut(&Self::Item) -> bool,
fn find<P>(&mut self, p: P) -> FindFuture<'_, Self, P>where Self: Unpin + Sized, P: FnMut(&Self::Item) -> bool,
Searches for an element in a stream that satisfies a predicate. Read more
§fn find_map<F, B>(&mut self, f: F) -> FindMapFuture<'_, Self, F>where
Self: Unpin + Sized,
F: FnMut(Self::Item) -> Option<B>,
fn find_map<F, B>(&mut self, f: F) -> FindMapFuture<'_, Self, F>where Self: Unpin + Sized, F: FnMut(Self::Item) -> Option<B>,
Applies function to the elements of stream and returns the first non-none result. Read more
§fn fold<B, F>(self, init: B, f: F) -> FoldFuture<Self, F, B>where
Self: Sized,
F: FnMut(B, Self::Item) -> B,
fn fold<B, F>(self, init: B, f: F) -> FoldFuture<Self, F, B>where Self: Sized, F: FnMut(B, Self::Item) -> B,
A combinator that applies a function to every element in a stream
producing a single, final value. Read more
§fn partition<B, F>(self, f: F) -> PartitionFuture<Self, F, B>where
Self: Sized,
F: FnMut(&Self::Item) -> bool,
B: Default + Extend<Self::Item>,
fn partition<B, F>(self, f: F) -> PartitionFuture<Self, F, B>where Self: Sized, F: FnMut(&Self::Item) -> bool, B: Default + Extend<Self::Item>,
A combinator that applies a function to every element in a stream
creating two collections from it. Read more
§fn for_each<F>(self, f: F) -> ForEachFuture<Self, F>where
Self: Sized,
F: FnMut(Self::Item),
fn for_each<F>(self, f: F) -> ForEachFuture<Self, F>where Self: Sized, F: FnMut(Self::Item),
Call a closure on each element of the stream. Read more
§fn any<F>(&mut self, f: F) -> AnyFuture<'_, Self, F, Self::Item>where
Self: Unpin + Sized,
F: FnMut(Self::Item) -> bool,
fn any<F>(&mut self, f: F) -> AnyFuture<'_, Self, F, Self::Item>where Self: Unpin + Sized, F: FnMut(Self::Item) -> bool,
Tests if any element of the stream matches a predicate. Read more
§fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where
Self: Sized,
F: FnMut(&mut St, Self::Item) -> Option<B>,
fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where Self: Sized, F: FnMut(&mut St, Self::Item) -> Option<B>,
§fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where
Self: Sized,
P: FnMut(&Self::Item) -> bool,
fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where Self: Sized, P: FnMut(&Self::Item) -> bool,
Combinator that
skips elements based on a predicate. Read more§fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
fn skip(self, n: usize) -> Skip<Self>where Self: Sized,
Creates a combinator that skips the first
n elements. Read more§fn timeout(self, dur: Duration) -> Timeout<Self>where
Self: Stream + Sized,
fn timeout(self, dur: Duration) -> Timeout<Self>where Self: Stream + Sized,
Await a stream or times out after a duration of time. Read more
§fn try_fold<B, F, T, E>(&mut self, init: T, f: F) -> TryFoldFuture<'_, Self, F, T>where
Self: Unpin + Sized,
F: FnMut(B, Self::Item) -> Result<T, E>,
fn try_fold<B, F, T, E>(&mut self, init: T, f: F) -> TryFoldFuture<'_, Self, F, T>where Self: Unpin + Sized, F: FnMut(B, Self::Item) -> Result<T, E>,
A combinator that applies a function as long as it returns successfully, producing a single, final value.
Immediately returns the error when the function returns unsuccessfully. Read more
§fn try_for_each<F, E>(&mut self, f: F) -> TryForEachFuture<'_, Self, F>where
Self: Unpin + Sized,
F: FnMut(Self::Item) -> Result<(), E>,
fn try_for_each<F, E>(&mut self, f: F) -> TryForEachFuture<'_, Self, F>where Self: Unpin + Sized, F: FnMut(Self::Item) -> Result<(), E>,
Applies a falliable function to each element in a stream, stopping at first error and returning it. Read more
§fn zip<U>(self, other: U) -> Zip<Self, U>where
Self: Sized,
U: Stream,
fn zip<U>(self, other: U) -> Zip<Self, U>where Self: Sized, U: Stream,
‘Zips up’ two streams into a single stream of pairs. Read more
§fn unzip<A, B, FromA, FromB>(self) -> UnzipFuture<Self, FromA, FromB>where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Stream<Item = (A, B)> + Sized,
fn unzip<A, B, FromA, FromB>(self) -> UnzipFuture<Self, FromA, FromB>where FromA: Default + Extend<A>, FromB: Default + Extend<B>, Self: Stream<Item = (A, B)> + Sized,
Converts an stream of pairs into a pair of containers. Read more
§fn collect<'a, B>(self) -> Pin<Box<dyn Future<Output = B> + Send + 'a, Global>>where
Self: Sized + 'a + Send,
B: FromStream<Self::Item>,
Self::Item: Send,
fn collect<'a, B>(self) -> Pin<Box<dyn Future<Output = B> + Send + 'a, Global>>where Self: Sized + 'a + Send, B: FromStream<Self::Item>, Self::Item: Send,
Transforms a stream into a collection. Read more
§fn merge<U>(self, other: U) -> Merge<Self, U>where
Self: Sized,
U: Stream<Item = Self::Item>,
fn merge<U>(self, other: U) -> Merge<Self, U>where Self: Sized, U: Stream<Item = Self::Item>,
Combines multiple streams into a single stream of all their outputs. Read more
§fn partial_cmp<S>(self, other: S) -> PartialCmpFuture<Self, S>where
Self: Sized + Stream,
S: Stream,
Self::Item: PartialOrd<<S as Stream>::Item>,
fn partial_cmp<S>(self, other: S) -> PartialCmpFuture<Self, S>where Self: Sized + Stream, S: Stream, Self::Item: PartialOrd<<S as Stream>::Item>,
Lexicographically compares the elements of this
Stream with those
of another. Read more§fn position<P>(&mut self, predicate: P) -> PositionFuture<'_, Self, P>where
Self: Unpin + Sized,
P: FnMut(Self::Item) -> bool,
fn position<P>(&mut self, predicate: P) -> PositionFuture<'_, Self, P>where Self: Unpin + Sized, P: FnMut(Self::Item) -> bool,
Searches for an element in a Stream that satisfies a predicate, returning
its index. Read more
§fn cmp<S>(self, other: S) -> CmpFuture<Self, S>where
Self: Sized + Stream,
S: Stream,
Self::Item: Ord,
fn cmp<S>(self, other: S) -> CmpFuture<Self, S>where Self: Sized + Stream, S: Stream, Self::Item: Ord,
Lexicographically compares the elements of this
Stream with those
of another using ‘Ord’. Read more§fn count(self) -> CountFuture<Self>where
Self: Sized,
fn count(self) -> CountFuture<Self>where Self: Sized,
Counts the number of elements in the stream. Read more
§fn ne<S>(self, other: S) -> NeFuture<Self, S>where
Self: Sized,
S: Stream,
Self::Item: PartialEq<<S as Stream>::Item>,
fn ne<S>(self, other: S) -> NeFuture<Self, S>where Self: Sized, S: Stream, Self::Item: PartialEq<<S as Stream>::Item>,
Determines if the elements of this
Stream are lexicographically
not equal to those of another. Read more§fn ge<S>(self, other: S) -> GeFuture<Self, S>where
Self: Sized + Stream,
S: Stream,
Self::Item: PartialOrd<<S as Stream>::Item>,
fn ge<S>(self, other: S) -> GeFuture<Self, S>where Self: Sized + Stream, S: Stream, Self::Item: PartialOrd<<S as Stream>::Item>,
Determines if the elements of this
Stream are lexicographically
greater than or equal to those of another. Read more§fn eq<S>(self, other: S) -> EqFuture<Self, S>where
Self: Sized + Stream,
S: Stream,
Self::Item: PartialEq<<S as Stream>::Item>,
fn eq<S>(self, other: S) -> EqFuture<Self, S>where Self: Sized + Stream, S: Stream, Self::Item: PartialEq<<S as Stream>::Item>,
Determines if the elements of this
Stream are lexicographically
equal to those of another. Read more§fn gt<S>(self, other: S) -> GtFuture<Self, S>where
Self: Sized + Stream,
S: Stream,
Self::Item: PartialOrd<<S as Stream>::Item>,
fn gt<S>(self, other: S) -> GtFuture<Self, S>where Self: Sized + Stream, S: Stream, Self::Item: PartialOrd<<S as Stream>::Item>,
Determines if the elements of this
Stream are lexicographically
greater than those of another. Read more§fn le<S>(self, other: S) -> LeFuture<Self, S>where
Self: Sized + Stream,
S: Stream,
Self::Item: PartialOrd<<S as Stream>::Item>,
fn le<S>(self, other: S) -> LeFuture<Self, S>where Self: Sized + Stream, S: Stream, Self::Item: PartialOrd<<S as Stream>::Item>,
Determines if the elements of this
Stream are lexicographically
less or equal to those of another. Read more§fn lt<S>(self, other: S) -> LtFuture<Self, S>where
Self: Sized + Stream,
S: Stream,
Self::Item: PartialOrd<<S as Stream>::Item>,
fn lt<S>(self, other: S) -> LtFuture<Self, S>where Self: Sized + Stream, S: Stream, Self::Item: PartialOrd<<S as Stream>::Item>,
Determines if the elements of this
Stream are lexicographically
less than those of another. Read more§impl<S> StreamExt for Swhere
S: Stream + ?Sized,
impl<S> StreamExt for Swhere S: Stream + ?Sized,
§fn next(&mut self) -> NextFuture<'_, Self>where
Self: Unpin,
fn next(&mut self) -> NextFuture<'_, Self>where Self: Unpin,
Retrieves the next item in the stream. Read more
§fn try_next<T, E>(&mut self) -> TryNextFuture<'_, Self>where
Self: Stream<Item = Result<T, E>> + Unpin,
fn try_next<T, E>(&mut self) -> TryNextFuture<'_, Self>where Self: Stream<Item = Result<T, E>> + Unpin,
Retrieves the next item in the stream. Read more
§fn count(self) -> CountFuture<Self>where
Self: Sized,
fn count(self) -> CountFuture<Self>where Self: Sized,
Counts the number of items in the stream. Read more
§fn map<T, F>(self, f: F) -> Map<Self, F>where
Self: Sized,
F: FnMut(Self::Item) -> T,
fn map<T, F>(self, f: F) -> Map<Self, F>where Self: Sized, F: FnMut(Self::Item) -> T,
Maps items of the stream to new values using a closure. Read more
§fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
Self: Sized,
U: Stream,
F: FnMut(Self::Item) -> U,
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where Self: Sized, U: Stream, F: FnMut(Self::Item) -> U,
Maps items to streams and then concatenates them. Read more
§fn flatten(self) -> Flatten<Self>where
Self: Sized,
Self::Item: Stream,
fn flatten(self) -> Flatten<Self>where Self: Sized, Self::Item: Stream,
Concatenates inner streams. Read more
§fn then<F, Fut>(self, f: F) -> Then<Self, F, Fut>where
Self: Sized,
F: FnMut(Self::Item) -> Fut,
Fut: Future,
fn then<F, Fut>(self, f: F) -> Then<Self, F, Fut>where Self: Sized, F: FnMut(Self::Item) -> Fut, Fut: Future,
Maps items of the stream to new values using an async closure. Read more
§fn filter<P>(self, predicate: P) -> Filter<Self, P>where
Self: Sized,
P: FnMut(&Self::Item) -> bool,
fn filter<P>(self, predicate: P) -> Filter<Self, P>where Self: Sized, P: FnMut(&Self::Item) -> bool,
§fn filter_map<T, F>(self, f: F) -> FilterMap<Self, F>where
Self: Sized,
F: FnMut(Self::Item) -> Option<T>,
fn filter_map<T, F>(self, f: F) -> FilterMap<Self, F>where Self: Sized, F: FnMut(Self::Item) -> Option<T>,
Filters and maps items of the stream using a closure. Read more
§fn take(self, n: usize) -> Take<Self>where
Self: Sized,
fn take(self, n: usize) -> Take<Self>where Self: Sized,
Takes only the first
n items of the stream. Read more§fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where
Self: Sized,
P: FnMut(&Self::Item) -> bool,
fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where Self: Sized, P: FnMut(&Self::Item) -> bool,
§fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
fn skip(self, n: usize) -> Skip<Self>where Self: Sized,
Skips the first
n items of the stream. Read more§fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where
Self: Sized,
P: FnMut(&Self::Item) -> bool,
fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where Self: Sized, P: FnMut(&Self::Item) -> bool,
§fn chain<U>(self, other: U) -> Chain<Self, U>where
Self: Sized,
U: Stream<Item = Self::Item>,
fn chain<U>(self, other: U) -> Chain<Self, U>where Self: Sized, U: Stream<Item = Self::Item>,
Appends another stream to the end of this one. Read more
§fn cloned<'a, T>(self) -> Cloned<Self>where
Self: Stream<Item = &'a T> + Sized,
T: Clone + 'a,
fn cloned<'a, T>(self) -> Cloned<Self>where Self: Stream<Item = &'a T> + Sized, T: Clone + 'a,
Clones all items. Read more
§fn copied<'a, T>(self) -> Copied<Self>where
Self: Stream<Item = &'a T> + Sized,
T: Copy + 'a,
fn copied<'a, T>(self) -> Copied<Self>where Self: Stream<Item = &'a T> + Sized, T: Copy + 'a,
Copies all items. Read more
§fn collect<C>(self) -> CollectFuture<Self, C>where
Self: Sized,
C: Default + Extend<Self::Item>,
fn collect<C>(self) -> CollectFuture<Self, C>where Self: Sized, C: Default + Extend<Self::Item>,
Collects all items in the stream into a collection. Read more
§fn try_collect<T, E, C>(self) -> TryCollectFuture<Self, C>where
Self: Stream<Item = Result<T, E>> + Sized,
C: Default + Extend<T>,
fn try_collect<T, E, C>(self) -> TryCollectFuture<Self, C>where Self: Stream<Item = Result<T, E>> + Sized, C: Default + Extend<T>,
Collects all items in the fallible stream into a collection. Read more
§fn partition<B, P>(self, predicate: P) -> PartitionFuture<Self, P, B>where
Self: Sized,
B: Default + Extend<Self::Item>,
P: FnMut(&Self::Item) -> bool,
fn partition<B, P>(self, predicate: P) -> PartitionFuture<Self, P, B>where Self: Sized, B: Default + Extend<Self::Item>, P: FnMut(&Self::Item) -> bool,
Partitions items into those for which
predicate is true and those for which it is
false, and then collects them into two collections. Read more§fn fold<T, F>(self, init: T, f: F) -> FoldFuture<Self, F, T>where
Self: Sized,
F: FnMut(T, Self::Item) -> T,
fn fold<T, F>(self, init: T, f: F) -> FoldFuture<Self, F, T>where Self: Sized, F: FnMut(T, Self::Item) -> T,
Accumulates a computation over the stream. Read more
§fn try_fold<T, E, F, B>(&mut self, init: B, f: F) -> TryFoldFuture<'_, Self, F, B>where
Self: Stream<Item = Result<T, E>> + Unpin + Sized,
F: FnMut(B, T) -> Result<B, E>,
fn try_fold<T, E, F, B>(&mut self, init: B, f: F) -> TryFoldFuture<'_, Self, F, B>where Self: Stream<Item = Result<T, E>> + Unpin + Sized, F: FnMut(B, T) -> Result<B, E>,
Accumulates a fallible computation over the stream. Read more
§fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where
Self: Sized,
F: FnMut(&mut St, Self::Item) -> Option<B>,
fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where Self: Sized, F: FnMut(&mut St, Self::Item) -> Option<B>,
Maps items of the stream to new values using a state value and a closure. Read more
§fn cycle(self) -> Cycle<Self>where
Self: Clone + Sized,
fn cycle(self) -> Cycle<Self>where Self: Clone + Sized,
Repeats the stream from beginning to end, forever. Read more
§fn enumerate(self) -> Enumerate<Self>where
Self: Sized,
fn enumerate(self) -> Enumerate<Self>where Self: Sized,
Enumerates items, mapping them to
(index, item). Read more§fn inspect<F>(self, f: F) -> Inspect<Self, F>where
Self: Sized,
F: FnMut(&Self::Item),
fn inspect<F>(self, f: F) -> Inspect<Self, F>where Self: Sized, F: FnMut(&Self::Item),
Calls a closure on each item and passes it on. Read more
§fn nth(&mut self, n: usize) -> NthFuture<'_, Self>where
Self: Unpin,
fn nth(&mut self, n: usize) -> NthFuture<'_, Self>where Self: Unpin,
Gets the
nth item of the stream. Read more§fn find<P>(&mut self, predicate: P) -> FindFuture<'_, Self, P>where
Self: Unpin,
P: FnMut(&Self::Item) -> bool,
fn find<P>(&mut self, predicate: P) -> FindFuture<'_, Self, P>where Self: Unpin, P: FnMut(&Self::Item) -> bool,
§fn find_map<F, B>(&mut self, f: F) -> FindMapFuture<'_, Self, F>where
Self: Unpin,
F: FnMut(Self::Item) -> Option<B>,
fn find_map<F, B>(&mut self, f: F) -> FindMapFuture<'_, Self, F>where Self: Unpin, F: FnMut(Self::Item) -> Option<B>,
§fn position<P>(&mut self, predicate: P) -> PositionFuture<'_, Self, P>where
Self: Unpin,
P: FnMut(Self::Item) -> bool,
fn position<P>(&mut self, predicate: P) -> PositionFuture<'_, Self, P>where Self: Unpin, P: FnMut(Self::Item) -> bool,
§fn all<P>(&mut self, predicate: P) -> AllFuture<'_, Self, P>where
Self: Unpin,
P: FnMut(Self::Item) -> bool,
fn all<P>(&mut self, predicate: P) -> AllFuture<'_, Self, P>where Self: Unpin, P: FnMut(Self::Item) -> bool,
§fn any<P>(&mut self, predicate: P) -> AnyFuture<'_, Self, P>where
Self: Unpin,
P: FnMut(Self::Item) -> bool,
fn any<P>(&mut self, predicate: P) -> AnyFuture<'_, Self, P>where Self: Unpin, P: FnMut(Self::Item) -> bool,
§fn for_each<F>(self, f: F) -> ForEachFuture<Self, F>where
Self: Sized,
F: FnMut(Self::Item),
fn for_each<F>(self, f: F) -> ForEachFuture<Self, F>where Self: Sized, F: FnMut(Self::Item),
Calls a closure on each item of the stream. Read more
§fn try_for_each<F, E>(&mut self, f: F) -> TryForEachFuture<'_, Self, F>where
Self: Unpin,
F: FnMut(Self::Item) -> Result<(), E>,
fn try_for_each<F, E>(&mut self, f: F) -> TryForEachFuture<'_, Self, F>where Self: Unpin, F: FnMut(Self::Item) -> Result<(), E>,
Calls a fallible closure on each item of the stream, stopping on first error. Read more
§fn zip<U>(self, other: U) -> Zip<Self, U>where
Self: Sized,
U: Stream,
fn zip<U>(self, other: U) -> Zip<Self, U>where Self: Sized, U: Stream,
Zips up two streams into a single stream of pairs. Read more
§fn unzip<A, B, FromA, FromB>(self) -> UnzipFuture<Self, FromA, FromB>where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Stream<Item = (A, B)> + Sized,
fn unzip<A, B, FromA, FromB>(self) -> UnzipFuture<Self, FromA, FromB>where FromA: Default + Extend<A>, FromB: Default + Extend<B>, Self: Stream<Item = (A, B)> + Sized,
Collects a stream of pairs into a pair of collections. Read more
§fn race<S>(self, other: S) -> Race<Self, S>where
Self: Sized,
S: Stream<Item = Self::Item>,
fn race<S>(self, other: S) -> Race<Self, S>where Self: Sized, S: Stream<Item = Self::Item>,
Merges with
other stream, with no preference for either stream when both are ready. Read more