Expand description
§Honk-RPC
Implementation of the Honk-RPC remote procedure call protocol.
§Overview
The honk-rpc
crate is a bare-bones implementation of the Honk-RPC
protocol. This protocol is heavily inspired by JSON-RPC, but uses BSON as the underlying message format to enable more efficient transmission of large binary payloads.
Functionality is defined and implemented in namespace-scoped ApiSet
objects. A Honk-RPC client/server pair and all the associated communications and request handling is encapsulated in a Session
object.
For now, communications are presumed to take place over a Rust object implementing both std::io::Read
and std::io::Write
. In practice, this is presumed to be a std::io::TcpStream
.
§⚠ Unstable ⚠
The honk-rpc
crate’s API and the Honk-RPC
protocol specification are considered unstable. The honk-rpc
crate will likely be changed in the future to operate purely on bson
objects and lave the specifics of the transport layer up to consumers of the crate.