quic_rpc

Module transport

Source
Expand description

Built in transports for quic-rpc

There are two sides to a transport, a server side where connections are accepted and a client side where connections are initiated.

Connections are bidirectional typed channels, with a distinct type for the send and receive side. They are unrelated to services.

In the transport module, the message types are referred to as In and Out.

A Connector can be used to open bidirectional typed channels using Connector::open. A Listener can be used to accept bidirectional typed channels from any of the currently opened connections to clients, using Listener::accept.

In both cases, the result is a tuple of a send side and a receive side. These types are defined by implementing the StreamTypes trait.

Errors for both sides are defined by implementing the ConnectionErrors trait.

Modules§

  • Boxed transport with concrete types
  • Transport that combines two other transports
  • Memory transport implementation using flume
  • http2 transport using hyper
  • iroh transport implementation based on iroh-net
  • Transport with mapped input and output types.
  • Miscellaneous transport utilities
  • QUIC transport implementation based on quinn

Enums§

Traits§