1 个不稳定版本
0.1.0 | 2021 年 4 月 1 日 |
---|
#39 在 #async-channel
在 3 个库中使用
170KB
2K SLoC
dialectic-tokio-serde
库提供了 Dialectic 的 Transmitter
和 Receiver
类型,这些类型能够发送/接收任何 serde-Serialize
/Deserialize
类型。这些类型对它们的传输是泛型的,并且需要三个额外的参数才能运行。
- 异步能力的写入器/读取器类型,实现了 Tokio 的
AsyncWrite
和AsyncRead
特性。 - 一个 Tokio 编码器,用于编码和解码写入到/从异步写入器/读取器读取的帧。
- 一个
dialectic_tokio_serde::Serializer
/Deserializer
,用于将发送/接收的类型转换为/从线格式。 请注意!这并不是 serde 的Serializer
/Deserializer
特性,而是一组类似的特性,它们也定义了Serializer
/Deserializer
的可能输出/输入类型。
Dialectic 的 Tokio/serde 后端
目前,已实现两种格式作为姐妹库
dialectic-tokio-serde-bincode
库,当提供一个AsyncWrite
/AsyncRead
传输时,它能够将数据序列化到/从 bincode 格式,并使用tokio_util
的LengthDelimitedCodec
进行线编码。dialectic-tokio-serde-json
库,当提供一个AsyncWrite
/AsyncRead
传输时,它能够将数据序列化到/从 JSON 格式,并使用tokio_util
的LinesCodec
进行线编码。
依赖关系
~7–14MB
~165K SLoC