[−][src]Struct futures_util::stream::Select
#[must_use = "streams do nothing unless polled"]pub struct Select<St1, St2> { /* fields omitted */ }
An adapter for merging the output of two streams.
The merged stream will attempt to pull items from both input streams. Each stream will be polled in a round-robin fashion, and whenever a stream is ready to yield an item that item is yielded.
After one of the two input stream completes, the remaining one will be polled exclusively. The returned stream completes when both input streams have completed.
Trait Implementations
impl<St1: Debug, St2: Debug> Debug for Select<St1, St2>
[src]
impl<St1: Debug, St2: Debug> Debug for Select<St1, St2>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<St1: Unpin, St2: Unpin> Unpin for Select<St1, St2>
[src]
impl<St1: Unpin, St2: Unpin> Unpin for Select<St1, St2>
impl<St1, St2> Stream for Select<St1, St2> where
St1: Stream,
St2: Stream<Item = St1::Item>,
[src]
impl<St1, St2> Stream for Select<St1, St2> where
St1: Stream,
St2: Stream<Item = St1::Item>,
type Item = St1::Item
Values yielded by the stream.
fn poll_next(self: PinMut<Self>, cx: &mut Context) -> Poll<Option<St1::Item>>
[src]
fn poll_next(self: PinMut<Self>, cx: &mut Context) -> Poll<Option<St1::Item>>
Attempt to pull out the next value of this stream, registering the current task for wakeup if the value is not yet available, and returning None
if the stream is exhausted. Read more