Crate async_proto
source · [−]Expand description
This is async-proto, a library crate facilitating simple binary network protocols with async support.
The main feature is the Protocol trait, which allows reading a value of an implementing type from an async or sync stream, as well as writing one to an async or sync sink.
Protocol can be derived for enums and structs if all fields implement Protocol.
Features
The following features can be enabled via Cargo:
blocking: Shorthand for enabling bothread-syncandwrite-sync.chrono-tz: Adds a dependency on thechrono-tzcrate and implementsProtocolfor itsTztype.read-sync: Adds a blockingread_syncmethod to theProtocoltrait.serde_json: Adds a dependency on theserde_jsoncrate and implementsProtocolfor itsValue,Map, andNumbertypes.tokio-tungstenite: Adds a dependency on thetokio-tungstenitecrate and convenience methods for reading/writingProtocoltypes from/to its websockets.warp: Adds a dependency on thewarpcrate and convenience methods for reading/writingProtocoltypes from/to its websockets.write-sync: Adds a blockingwrite_syncmethod to theProtocoltrait.
Macros
Implements Protocol for a type defined using the bitflags::bitflags macro.
Enums
The error returned from the write and write_sync methods.
Traits
This trait allows reading a value of an implementing type from an async or sync stream, as well as writing one to an async or sync sink.
Derive Macros
Implements the Protocol trait for this type.