diff options
Diffstat (limited to 'src/io/mod.rs')
-rw-r--r-- | src/io/mod.rs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/io/mod.rs b/src/io/mod.rs new file mode 100644 index 0000000..6c40d73 --- /dev/null +++ b/src/io/mod.rs @@ -0,0 +1,31 @@ +//! Helpers for IO related tasks. +//! +//! The stream types are often used in combination with hyper or reqwest, as they +//! allow converting between a hyper [`Body`] and [`AsyncRead`]. +//! +//! The [`SyncIoBridge`] type converts from the world of async I/O +//! to synchronous I/O; this may often come up when using synchronous APIs +//! inside [`tokio::task::spawn_blocking`]. +//! +//! [`Body`]: https://docs.rs/hyper/0.13/hyper/struct.Body.html +//! [`AsyncRead`]: tokio::io::AsyncRead + +mod copy_to_bytes; +mod inspect; +mod read_buf; +mod reader_stream; +mod sink_writer; +mod stream_reader; + +cfg_io_util! { + mod sync_bridge; + pub use self::sync_bridge::SyncIoBridge; +} + +pub use self::copy_to_bytes::CopyToBytes; +pub use self::inspect::{InspectReader, InspectWriter}; +pub use self::read_buf::read_buf; +pub use self::reader_stream::ReaderStream; +pub use self::sink_writer::SinkWriter; +pub use self::stream_reader::StreamReader; +pub use crate::util::{poll_read_buf, poll_write_buf}; |