pub fn poll_fn<T, F>(f: F) -> PollFn<F>where
F: FnMut(&mut Context<'_>) -> Poll<Option<T>>,
Expand description
Creates a new stream wrapping a function returning Poll<Option<T>>
.
Polling the returned stream calls the wrapped function.
Examples
use futures::stream::poll_fn;
use futures::task::Poll;
let mut counter = 1usize;
let read_stream = poll_fn(move |_| -> Poll<Option<String>> {
if counter == 0 { return Poll::Ready(None); }
counter -= 1;
Poll::Ready(Some("Hello, World!".to_owned()))
});