#codec #future #async #frame #async-await #decoding #framed

asynchronous-codec

使用 async/await 编码和解码帧的实用工具

5个不稳定版本

0.7.0 2023年10月11日
0.6.2 2023年7月20日
0.6.1 2022年11月8日
0.6.0 2021年2月1日
0.5.0 2021年1月6日

#84 in 异步

Download history 91786/week @ 2024-03-14 101783/week @ 2024-03-21 93413/week @ 2024-03-28 110272/week @ 2024-04-04 92750/week @ 2024-04-11 91160/week @ 2024-04-18 83963/week @ 2024-04-25 88257/week @ 2024-05-02 88779/week @ 2024-05-09 83550/week @ 2024-05-16 94264/week @ 2024-05-23 91417/week @ 2024-05-30 76694/week @ 2024-06-06 88770/week @ 2024-06-13 82027/week @ 2024-06-20 64076/week @ 2024-06-27

326,153 每月下载量
用于 434 个crate(69 个直接使用)

MIT 许可证

53KB
1K SLoC

异步编解码器

使用 async/await 编码和解码帧的实用工具。

这是由 futures-codec(作者:Matt Hunzinger)的分支,从 tokio-codec 中借用了许多概念。

包含适配器,可以将字节数据流、AsyncReadAsyncWrite 转换为实现 SinkStream 的帧流。帧流也称为传输。

Latest Version Rust Documentation LICENSE

示例

use asynchronous_codec::{LinesCodec, Framed};

async fn main() {
    // let stream = ...
    let mut framed = Framed::new(stream, LinesCodec {});

    while let Some(line) = framed.try_next().await.unwrap() {
        println!("{:?}", line);
    }
}

依赖项

~0.9–1.6MB
~29K SLoC