OpenStreams

Trait OpenStreams 

Source
pub trait OpenStreams<B: Buf> {
    type BidiStream: SendStream<B> + RecvStream;
    type SendStream: SendStream<B>;
    type RecvStream: RecvStream;
    type Error: Into<Box<dyn Error>>;

    // Required methods
    fn poll_open_bidi(
        &mut self,
        cx: &mut Context<'_>,
    ) -> Poll<Result<Self::BidiStream, Self::Error>>;
    fn poll_open_send(
        &mut self,
        cx: &mut Context<'_>,
    ) -> Poll<Result<Self::SendStream, Self::Error>>;
    fn close(&mut self, code: Code, reason: &[u8]);
}
Expand description

Trait for opening outgoing streams

Required Associated Types§

Source

type BidiStream: SendStream<B> + RecvStream

The type produced by poll_open_bidi()

Source

type SendStream: SendStream<B>

The type produced by poll_open_send()

Source

type RecvStream: RecvStream

The type of the receiving part of BidiStream

Source

type Error: Into<Box<dyn Error>>

Error type yielded by these trait methods

Required Methods§

Source

fn poll_open_bidi( &mut self, cx: &mut Context<'_>, ) -> Poll<Result<Self::BidiStream, Self::Error>>

Poll the connection to create a new bidirectional stream.

Source

fn poll_open_send( &mut self, cx: &mut Context<'_>, ) -> Poll<Result<Self::SendStream, Self::Error>>

Poll the connection to create a new unidirectional stream.

Source

fn close(&mut self, code: Code, reason: &[u8])

Close the connection immediately

Implementors§