Crate rift

Source
Expand description

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:

  1. errors
  2. protocol
  3. transport
  4. server
  5. autogen

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 |
+-----------+

Modules§

protocol
Types used to send and receive primitives to/from a remote Thrift server or client.
server
Types required to implement the server half of a Thrift service.
transport
Types required to send and receive bytes over an I/O channel.

Structs§

ApplicationError
Encodes information about errors encountered within auto-generated code or within the user-implemented service handlers.
ProtocolError
Encodes information about errors encountered within rift library code.
TransportError
Encodes information about I/O errors encountered within the rift library.

Enums§

ApplicationErrorKind
A list specifying general categories of application error.
Error
Rift error type.
ProtocolErrorKind
A list specifying general categories of rift library error.
TransportErrorKind
A list specifying general categories of I/O error.

Traits§

TThriftClient
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.

Type Aliases§

Result
Result type returned by all rift functions.