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-net transport implementation based on iroh-net
- Transport with mapped input and output types.
- Miscellaneous transport utilities
- QUIC transport implementation based on quinn
Enums§
- The kinds of local addresses a Listener can be bound to.
Traits§
- A connection to a specific remote machine
- A listener that listens for connections