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
Boxed transport with concrete types
combined
Transport that combines two other transports
flumeflume-transport
Memory transport implementation using flume
hyperhyper-transport
http2 transport using hyper
irohiroh-transport
iroh transport implementation based on iroh
mapped
Transport with mapped input and output types.
misc
Miscellaneous transport utilities
quinnquinn-transport
QUIC transport implementation based on quinn

Enums§

LocalAddr
The kinds of local addresses a Listener can be bound to.

Traits§

ConnectionErrors
Errors that can happen when creating and using a Connector or Listener.
Connector
A connection to a specific remote machine
Listener
A listener that listens for connections
StreamTypes
Types that are common to both Connector and Listener.