Function tokio::prelude::stream::iter
[−]
[src]
pub fn iter<J, T, E>(i: J) -> Iter<<J as IntoIterator>::IntoIter> where
J: IntoIterator<Item = Result<T, E>>,
Deprecated
: implementation moved to iter_ok
and iter_result
Converts an Iterator
over Result
s into a Stream
which is always ready
to yield the next value.
Iterators in Rust don't express the ability to block, so this adapter simply
always calls iter.next()
and returns that.
use futures::*; let mut stream = stream::iter(vec![Ok(17), Err(false), Ok(19)]); assert_eq!(Ok(Async::Ready(Some(17))), stream.poll()); assert_eq!(Err(false), stream.poll()); assert_eq!(Ok(Async::Ready(Some(19))), stream.poll()); assert_eq!(Ok(Async::Ready(None)), stream.poll());