transform-stream

Crates.io MIT licensed Docs CI Unsafe Forbidden

Lightweight async stream wrapper.

Usage

```rust use transform_stream::AsyncTryStream; use futures::StreamExt; use std::io;

let stream: AsyncTryStream, io::Error, > = AsyncTryStream::new(|mut y| async move { y.yieldok(vec![b'1', b'2']).await; y.yield_ok(vec![b'3', b'4']).await; Ok(()) });

futures::executor::blockon(async { futures::pinmut!(stream); asserteq!(stream.next().await.unwrap().unwrap(), vec![b'1', b'2']); asserteq!(stream.next().await.unwrap().unwrap(), vec![b'3', b'4']); assert!(stream.next().await.is_none()); }); ```