Module dialectic::backend [−][src]
The interface implemented by all transport backends for a Chan
.
A Chan<S, Tx, Rx>
is parameterized by its transmitting channel Tx
and its
receiving channel Rx
. In order to use a Chan
to run a session, these underlying channels
must implement the traits Transmitter
and Receiver
, as well as Transmit<T>
and Receive<T>
for at least the types T
used in those capacities in any given
session.
Functions which are generic over their backend will in turn need to specify the bounds
Transmit<T>
and Receive<T>
for all T
s they send and receive,
respectively. The Transmitter
and
Receiver
attribute macros make this bound specification succinct; see
their documentation for more details.
Re-exports
pub use call_by::By; |
pub use call_by::Convention; |
pub use call_by::Mut; |
pub use call_by::Ref; |
pub use call_by::Val; |
Structs
Choice | A |
OutOfBoundsChoiceError | When attempting to construct a |
Traits
Receive | If a transport is |
Receiver | A backend transport used for receiving (i.e. the |
Transmit | If a transport is |
Transmitter | A backend transport used for transmitting (i.e. the |