[−][src]Struct libp2prs_core::pnet::PnetOutput
The result of a handshake. This implements AsyncRead and AsyncWrite and can therefore be used as base for additional upgrades.
Trait Implementations
impl<S: ConnectionInfo + SplitEx> ConnectionInfo for PnetOutput<S>
[src]
pub fn local_multiaddr(&self) -> Multiaddr
[src]
pub fn remote_multiaddr(&self) -> Multiaddr
[src]
impl<S> ReadEx for PnetOutput<S> where
S: SplittableReadWrite,
[src]
S: SplittableReadWrite,
pub fn read2<'life0, 'life1, 'async_trait>(
&'life0 mut self,
buf: &'life1 mut [u8]
) -> Pin<Box<dyn Future<Output = Result<usize>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
buf: &'life1 mut [u8]
) -> Pin<Box<dyn Future<Output = Result<usize>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: '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<S: SplittableReadWrite> SplitEx for PnetOutput<S>
[src]
type Reader = CryptReader<S::Reader>
read half
type Writer = CryptWriter<S::Writer>
write half
pub fn split(self) -> (Self::Reader, Self::Writer)
[src]
impl<S> WriteEx for PnetOutput<S> where
S: SplittableReadWrite,
[src]
S: SplittableReadWrite,
pub fn write2<'life0, 'life1, 'async_trait>(
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<usize>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
buf: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<usize>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
pub fn flush2<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
pub fn close2<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: '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<S> RefUnwindSafe for PnetOutput<S> where
<S as SplitEx>::Reader: RefUnwindSafe,
<S as SplitEx>::Writer: RefUnwindSafe,
[src]
<S as SplitEx>::Reader: RefUnwindSafe,
<S as SplitEx>::Writer: RefUnwindSafe,
impl<S> Send for PnetOutput<S> where
<S as SplitEx>::Reader: Send,
<S as SplitEx>::Writer: Send,
[src]
<S as SplitEx>::Reader: Send,
<S as SplitEx>::Writer: Send,
impl<S> Sync for PnetOutput<S> where
<S as SplitEx>::Reader: Sync,
<S as SplitEx>::Writer: Sync,
[src]
<S as SplitEx>::Reader: Sync,
<S as SplitEx>::Writer: Sync,
impl<S> Unpin for PnetOutput<S> where
<S as SplitEx>::Reader: Unpin,
<S as SplitEx>::Writer: Unpin,
[src]
<S as SplitEx>::Reader: Unpin,
<S as SplitEx>::Writer: Unpin,
impl<S> UnwindSafe for PnetOutput<S> where
<S as SplitEx>::Reader: UnwindSafe,
<S as SplitEx>::Writer: UnwindSafe,
[src]
<S as SplitEx>::Reader: UnwindSafe,
<S as SplitEx>::Writer: UnwindSafe,
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> Same<T> for T
type Output = T
Should always be Self
impl<T> SplittableReadWrite for T where
T: 'static + SplitEx + ReadEx + WriteEx + Unpin,
[src]
T: 'static + SplitEx + ReadEx + WriteEx + Unpin,
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>,