tokio 0.3.0

An event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
Documentation
use tokio::stream::{self, Stream, StreamExt};
use tokio_test::{assert_pending, task};

#[tokio::test]
async fn basic_usage() {
    let mut stream = stream::pending::<i32>();

    for _ in 0..2 {
        assert_eq!(stream.size_hint(), (0, None));

        let mut next = task::spawn(async { stream.next().await });
        assert_pending!(next.poll());
    }
}