Crate rift [] [src]

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 Definitions

Result

Result type returned by all rift functions.