Files
tokio/tokio-util/src/codec/mod.rs
T

44 lines
1.2 KiB
Rust
Raw Normal View History

//! Adaptors from AsyncRead/AsyncWrite to Stream/Sink
2018-06-04 22:36:06 -05:00
//!
//! Raw I/O objects work with byte sequences, but higher-level code
//! usually wants to batch these into meaningful chunks, called
//! "frames".
//!
//! This module contains adapters to go from streams of bytes,
//! [`AsyncRead`] and [`AsyncWrite`], to framed streams implementing
//! [`Sink`] and [`Stream`]. Framed streams are also known as
//! transports.
2018-06-04 22:36:06 -05:00
//!
//! [`AsyncRead`]: tokio::io::AsyncRead
//! [`AsyncWrite`]: tokio::io::AsyncWrite
//! [`Stream`]: tokio::stream::Stream
//! [`Sink`]: futures_sink::Sink
2018-06-04 22:36:06 -05:00
mod bytes_codec;
2019-10-22 10:13:49 -07:00
pub use self::bytes_codec::BytesCodec;
2019-06-27 18:10:29 +01:00
mod decoder;
2019-10-22 10:13:49 -07:00
pub use self::decoder::Decoder;
2019-06-27 18:10:29 +01:00
mod encoder;
2019-10-22 10:13:49 -07:00
pub use self::encoder::Encoder;
2020-05-12 12:47:38 +01:00
mod framed_impl;
#[allow(unused_imports)]
pub(crate) use self::framed_impl::{FramedImpl, RWFrames, ReadFrame, WriteFrame};
2019-06-27 18:10:29 +01:00
mod framed;
2019-10-22 10:13:49 -07:00
pub use self::framed::{Framed, FramedParts};
2019-06-27 18:10:29 +01:00
mod framed_read;
2019-10-22 10:13:49 -07:00
pub use self::framed_read::FramedRead;
2019-06-27 18:10:29 +01:00
mod framed_write;
2019-10-22 10:13:49 -07:00
pub use self::framed_write::FramedWrite;
pub mod length_delimited;
2019-10-22 10:13:49 -07:00
pub use self::length_delimited::{LengthDelimitedCodec, LengthDelimitedCodecError};
2018-06-04 22:36:06 -05:00
2019-10-22 10:13:49 -07:00
mod lines_codec;
pub use self::lines_codec::{LinesCodec, LinesCodecError};