# Function futures_util::stream::poll_fn [−] [src]

    pub fn poll_fn<T, F>(f: F) -> PollFn<F> where
        F: FnMut(&mut Context<'_>) -> Poll<Option<T>>,

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()))
    });