futures_util::compat

Trait AsyncRead01CompatExt

source
pub trait AsyncRead01CompatExt: AsyncRead01 {
    // Provided method
    fn compat(self) -> Compat01As03<Self> 
       where Self: Sized { ... }
}
Available on crate features io-compat and compat only.
Expand description

Extension trait for tokio-io AsyncRead

Provided Methods§

source

fn compat(self) -> Compat01As03<Self>
where Self: Sized,

Converts a tokio-io AsyncRead into a futures-io 0.3 AsyncRead.

use futures::io::AsyncReadExt;
use futures_util::compat::AsyncRead01CompatExt;

let input = b"Hello World!";
let reader /* : impl tokio_io::AsyncRead */ = std::io::Cursor::new(input);
let mut reader /* : impl futures::io::AsyncRead + Unpin */ = reader.compat();

let mut output = Vec::with_capacity(12);
reader.read_to_end(&mut output).await.unwrap();
assert_eq!(output, input);

Implementors§