Struct libp2p::core::muxing::StreamMuxerBox [−][src]
pub struct StreamMuxerBox { /* fields omitted */ }
Expand description
Abstract StreamMuxer
.
Implementations
pub fn new<T>(muxer: T) -> StreamMuxerBox where
T: 'static + StreamMuxer + Send + Sync,
<T as StreamMuxer>::OutboundSubstream: Send,
<T as StreamMuxer>::Substream: Send,
pub fn new<T>(muxer: T) -> StreamMuxerBox where
T: 'static + StreamMuxer + Send + Sync,
<T as StreamMuxer>::OutboundSubstream: Send,
<T as StreamMuxer>::Substream: Send,
Turns a stream muxer into a StreamMuxerBox
.
Trait Implementations
Type of the object that represents the raw substream where data can be read and written.
type OutboundSubstream = usize
type OutboundSubstream = usize
Future that will be resolved when the outgoing substream is open.
pub fn poll_event(
&self,
cx: &mut Context<'_>
) -> Poll<Result<StreamMuxerEvent<<StreamMuxerBox as StreamMuxer>::Substream>, <StreamMuxerBox as StreamMuxer>::Error>>
pub fn poll_event(
&self,
cx: &mut Context<'_>
) -> Poll<Result<StreamMuxerEvent<<StreamMuxerBox as StreamMuxer>::Substream>, <StreamMuxerBox as StreamMuxer>::Error>>
Polls for a connection-wide event. Read more
Opens a new outgoing substream, and produces the equivalent to a future that will be resolved when it becomes available. Read more
pub fn poll_outbound(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::OutboundSubstream
) -> Poll<Result<<StreamMuxerBox as StreamMuxer>::Substream, <StreamMuxerBox as StreamMuxer>::Error>>
pub fn poll_outbound(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::OutboundSubstream
) -> Poll<Result<<StreamMuxerBox as StreamMuxer>::Substream, <StreamMuxerBox as StreamMuxer>::Error>>
Polls the outbound substream. Read more
Destroys an outbound substream future. Use this after the outbound substream has finished, or if you want to interrupt it. Read more
pub fn read_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream,
buf: &mut [u8]
) -> Poll<Result<usize, <StreamMuxerBox as StreamMuxer>::Error>>
pub fn read_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream,
buf: &mut [u8]
) -> Poll<Result<usize, <StreamMuxerBox as StreamMuxer>::Error>>
Reads data from a substream. The behaviour is the same as futures::AsyncRead::poll_read
. Read more
pub fn write_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream,
buf: &[u8]
) -> Poll<Result<usize, <StreamMuxerBox as StreamMuxer>::Error>>
pub fn write_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream,
buf: &[u8]
) -> Poll<Result<usize, <StreamMuxerBox as StreamMuxer>::Error>>
Write data to a substream. The behaviour is the same as futures::AsyncWrite::poll_write
. Read more
pub fn flush_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
pub fn flush_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
Flushes a substream. The behaviour is the same as futures::AsyncWrite::poll_flush
. Read more
pub fn shutdown_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
pub fn shutdown_substream(
&self,
cx: &mut Context<'_>,
s: &mut <StreamMuxerBox as StreamMuxer>::Substream
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
Attempts to shut down the writing side of a substream. The behaviour is similar to
AsyncWrite::poll_close
. Read more
Destroys a substream.
pub fn close(
&self,
cx: &mut Context<'_>
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
pub fn close(
&self,
cx: &mut Context<'_>
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
Closes this StreamMuxer
. Read more
pub fn flush_all(
&self,
cx: &mut Context<'_>
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
pub fn flush_all(
&self,
cx: &mut Context<'_>
) -> Poll<Result<(), <StreamMuxerBox as StreamMuxer>::Error>>
Flush this StreamMuxer
. Read more
This method is unused and will be removed in the future
Returns true
if the remote has shown any sign of activity after the muxer has been open. Read more