21个版本
新版本 0.8.0 | 2024年8月13日 |
---|---|
0.7.3 | 2023年12月20日 |
0.7.2 | 2023年10月27日 |
0.7.0 | 2023年7月3日 |
0.3.0 | 2021年2月1日 |
在编码类别中排名794
每月下载量464
在26个crate中(直接使用25个)
82KB
1.5K SLoC
destream
Rust异步流(反)序列化库
lib.rs
:
提供FromStream
、Decoder
、ToStream
和Encoder
特质,它们是serde
的Deserialize
、Deserializer
、Serialize
和Serializer
的流/异步对应物。
这个crate的结构和内容基于serde
,但与它不兼容(主要是因为serde
不支持异步)。组成destream
的大部分代码直接从serde
复制,只做了少量修改。
serde
采用MIT和Apache-2.0双许可,可在https://github.com/serde-rs/serde/blob/master/LICENSE-MIT和https://github.com/serde-rs/serde/blob/master/LICENSE-APACHE找到。
destream
和serde
的重要区别
destream
支持从futures::Stream
解码和编码(显然)。destream
目前不支持derive
宏,因此不能推导出FromStream
或ToStream
,也没有内置功能用于解码/编码给定的struct
。Decoder
假设静态生命周期,只支持拥有类型,而Encoder
使用特定的生命周期'en
。这与serde
相反。
destream
本身不实现对任何特定序列化格式的支持。 destream_json
提供了对流式 JSON 的支持。
依赖项
~1.5–2.2MB
~44K SLoC