pub trait DuplexConnection {
    // Required methods
    fn as_receiver(&mut self) -> &mut dyn RecvFrame;
    fn as_sender(&mut self) -> &mut dyn SendFrame;
    fn split(self) -> (Box<dyn RecvFrame + Send>, Box<dyn SendFrame + Send>);
}
Expand description

Marker trait for types that can provide a concrete implementation for both frame parser implementing RecvFrame and frame composer implementing SendFrame. These types must also implement amplify::Bipolar, i.e. they must be splittable into the receiving and sending half-types.

Required Methods§

source

fn as_receiver(&mut self) -> &mut dyn RecvFrame

source

fn as_sender(&mut self) -> &mut dyn SendFrame

source

fn split(self) -> (Box<dyn RecvFrame + Send>, Box<dyn SendFrame + Send>)

Implementors§

source§

impl DuplexConnection for internet2::transport::unencrypted::Stream

source§

impl DuplexConnection for internet2::transport::zeromq::Connection

source§

impl<S: Stream + DuplexConnection> DuplexConnection for internet2::transport::connect::Connection<S>

source§

impl<const LEN_SIZE: usize> DuplexConnection for internet2::transport::encrypted::Stream<LEN_SIZE>