Struct libp2p_rs::swarm::substream::Substream [−][src]
Substream is the logical channel for the p2p connection. SubstreamMeta contains the meta information of the substream and IReadWrite provides the I/O operation to Substream.
Implementations
impl Substream[src]
pub fn to_view(&self) -> SubstreamView[src]
Builds a SubstreamView struct.
pub fn protocol(&self) -> &ProtocolId[src]
Returns the protocol of the sub stream.
pub fn dir(&self) -> Direction[src]
Returns the direction of the sub stream.
pub fn cid(&self) -> ConnectionId[src]
Returns the connection id of the sub stream.
pub fn id(&self) -> StreamId[src]
Returns the sub stream Id.
pub fn remote_multiaddr(&self) -> Multiaddr[src]
Returns the remote multiaddr of the sub stream.
pub fn local_multiaddr(&self) -> Multiaddr[src]
Returns the remote multiaddr of the sub stream.
pub fn remote_peer(&self) -> PeerId[src]
Returns the remote multiaddr of the sub stream.
pub fn info(&self) -> SubstreamInfo[src]
Returns the info of the sub stream.
Trait Implementations
impl Clone for Substream[src]
impl Debug for Substream[src]
impl Drop for Substream[src]
impl ReadEx for Substream[src]
pub fn read2<'life0, 'life1, 'async_trait>(
&'life0 mut self,
buf: &'life1 mut [u8]
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Substream: 'async_trait, [src]
&'life0 mut self,
buf: &'life1 mut [u8]
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Substream: 'async_trait,
#[must_use]pub fn read_exact2<'a, 'async_trait>(
&'a mut self,
buf: &'a mut [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'a: 'async_trait,
Self: 'async_trait, [src]
&'a mut self,
buf: &'a mut [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'a: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn read_fixed_u32<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn read_varint<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn read_one_fixed<'life0, 'async_trait>(
&'life0 mut self,
max_size: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<u8, Global>, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self,
max_size: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<u8, Global>, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn read_one<'life0, 'async_trait>(
&'life0 mut self,
max_size: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<u8, Global>, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self,
max_size: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<u8, Global>, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait,
impl WriteEx for Substream[src]
pub fn write2<'life0, 'life1, 'async_trait>(
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Substream: 'async_trait, [src]
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Substream: 'async_trait,
pub fn flush2<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Substream: 'async_trait, [src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Substream: 'async_trait,
pub fn close2<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Substream: 'async_trait, [src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Substream: 'async_trait,
#[must_use]pub fn write_all2<'life0, 'life1, 'async_trait>(
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn write_varint<'life0, 'async_trait>(
&'life0 mut self,
len: usize
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self,
len: usize
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn write_fixed_u32<'life0, 'async_trait>(
&'life0 mut self,
len: usize
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self,
len: usize
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn write_one_fixed<'life0, 'life1, 'async_trait>(
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
#[must_use]pub fn write_one<'life0, 'life1, 'async_trait>(
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait, [src]
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait + Send, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Auto Trait Implementations
impl !RefUnwindSafe for Substream
impl Send for Substream
impl !Sync for Substream
impl Unpin for Substream
impl !UnwindSafe for Substream
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,