TransportProtocol

Trait TransportProtocol 

Source
pub trait TransportProtocol {
    type Stream: AsyncReadExt + AsyncWriteExt + Unpin;

    // Required method
    fn connect(&self) -> impl Future<Output = Result<Self::Stream>>;
}
Expand description

The communication protocol to use

Required Associated Types§

Source

type Stream: AsyncReadExt + AsyncWriteExt + Unpin

Bidirectional stream

Required Methods§

Source

fn connect(&self) -> impl Future<Output = Result<Self::Stream>>

Converts the protocol instance into the corresponding stream

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T: TransportProtocol> TransportProtocol for &T

Source§

type Stream = <T as TransportProtocol>::Stream

Source§

fn connect(&self) -> impl Future<Output = Result<Self::Stream>>

Implementors§