Rift: Thrift implementation library for Rust.
This crate implements the components required to build a working Thrift server and client. It is divided into the following modules:
The modules are layered as shown. The
generated layer is code
generated by the Thrift compiler's Rust plugin. It uses the components
defined in this crate to serialize and deserialize types and implement
RPC. Users interact with these types and services by writing their own
code on top.
+-----------+ | app dev | +-----------+ | generated | <-> errors/results +-----------+ | protocol | +-----------+ | transport | +-----------+
Types used to send and receive primitives to/from a remote Thrift server or client.
Types required to implement the server half of a Thrift service.
Types required to send and receive bytes over an I/O channel.
Encodes information about errors encountered within auto-generated code or within the user-implemented service handlers.
Encodes information about errors encountered within rift library code.
Encodes information about I/O errors encountered within the rift library.
A list specifying general categories of application error.
Rift error type.
A list specifying general categories of rift library error.
A list specifying general categories of I/O error.
Identifies an auto-generated Thrift client and specifies the minimum set of functions implementations should provide for auto-generated code to properly send and receive messages to/from a Thrift server.
Result type returned by all rift functions.