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