dialectic-tokio-serde

Crates.iodialectic-tokio-serde
lib.rsdialectic-tokio-serde
version0.1.0
sourcesrc
created_at2021-04-01 22:19:28.248424
updated_at2021-04-01 22:19:28.248424
descriptionA backend builder for the Dialectic crate using Serde serialization over Tokio transport
homepagehttps://github.com/boltlabs-inc/dialectic
repositoryhttps://github.com/boltlabs-inc/dialectic
max_upload_size
id377067
size23,038
J. Ayo Akinyele (jakinyele)

documentation

README

Rust license: MIT crates.io docs.rs documentation

The dialectic-tokio-serde crate provides Dialectic Transmitter and Receiver types which are capable of sending/receiving any serde-Serialize/Deserialize type. These are generic over their transport, and require three additional parameters to function:

  • Async-capable writer/reader types which implement the Tokio AsyncWrite and AsyncRead traits.
  • A Tokio codec, for encoding and decoding frames which are written to/read from the asynchronous writer/reader.
  • A dialectic_tokio_serde::Serializer/Deserializer for converting the sent/received types to/from the wire format. PLEASE NOTE! These are not the serde Serializer/Deserializer traits but rather similar traits which also define the possible output/input types of the Serializer/Deserializer.

Tokio/serde backends for Dialectic

Currently, two formats are implemented as sister crates:

  • The dialectic-tokio-serde-bincode crate, which when provided an AsyncWrite/AsyncRead transport enables serialization to/from the bincode format and using the tokio_util LengthDelimitedCodec for a wire encoding.
  • The dialectic-tokio-serde-json crate, which when provided an AsyncWrite/AsyncRead transport enables serialization to/from the JSON format and using the tokio_util LinesCodec for a wire encoding.
Commit count: 435

cargo fmt