Struct libp2p::simple::SimpleProtocol
source · pub struct SimpleProtocol<F> { /* private fields */ }
Expand description
Implementation of ConnectionUpgrade
. Convenient to use with small protocols.
Implementations§
source§impl<F> SimpleProtocol<F>
impl<F> SimpleProtocol<F>
sourcepub fn new<N>(info: N, upgrade: F) -> SimpleProtocol<F>where
N: Into<Bytes>,
pub fn new<N>(info: N, upgrade: F) -> SimpleProtocol<F>where N: Into<Bytes>,
Builds a SimpleProtocol
.
Trait Implementations§
source§impl<F> Clone for SimpleProtocol<F>
impl<F> Clone for SimpleProtocol<F>
source§impl<F: Debug> Debug for SimpleProtocol<F>
impl<F: Debug> Debug for SimpleProtocol<F>
source§impl<C, F, O, A, E> InboundUpgrade<C> for SimpleProtocol<F>where
C: AsyncRead + AsyncWrite,
F: Fn(C) -> O,
O: Future<Output = Result<A, E>>,
impl<C, F, O, A, E> InboundUpgrade<C> for SimpleProtocol<F>where C: AsyncRead + AsyncWrite, F: Fn(C) -> O, O: Future<Output = Result<A, E>>,
source§impl<C, F, O, A, E> OutboundUpgrade<C> for SimpleProtocol<F>where
C: AsyncRead + AsyncWrite,
F: Fn(C) -> O,
O: Future<Output = Result<A, E>>,
impl<C, F, O, A, E> OutboundUpgrade<C> for SimpleProtocol<F>where C: AsyncRead + AsyncWrite, F: Fn(C) -> O, O: Future<Output = Result<A, E>>,
source§impl<F> UpgradeInfo for SimpleProtocol<F>
impl<F> UpgradeInfo for SimpleProtocol<F>
§type InfoIter = Once<<SimpleProtocol<F> as UpgradeInfo>::Info>
type InfoIter = Once<<SimpleProtocol<F> as UpgradeInfo>::Info>
Iterator returned by
protocol_info
.source§fn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
Auto Trait Implementations§
impl<F> RefUnwindSafe for SimpleProtocol<F>where F: RefUnwindSafe,
impl<F> Send for SimpleProtocol<F>where F: Send + Sync,
impl<F> Sync for SimpleProtocol<F>where F: Send + Sync,
impl<F> Unpin for SimpleProtocol<F>
impl<F> UnwindSafe for SimpleProtocol<F>where F: RefUnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<C, U> InboundUpgradeExt<C> for Uwhere
U: InboundUpgrade<C>,
impl<C, U> InboundUpgradeExt<C> for Uwhere U: InboundUpgrade<C>,
source§fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F>where
Self: Sized,
F: FnOnce(Self::Output) -> T,
fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F>where Self: Sized, F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Output
.source§fn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F>where
Self: Sized,
F: FnOnce(Self::Error) -> T,
fn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F>where Self: Sized, F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Error
.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
source§impl<C, U> OutboundUpgradeExt<C> for Uwhere
U: OutboundUpgrade<C>,
impl<C, U> OutboundUpgradeExt<C> for Uwhere U: OutboundUpgrade<C>,
source§fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F>where
Self: Sized,
F: FnOnce(Self::Output) -> T,
fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F>where Self: Sized, F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Output
.source§fn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F>where
Self: Sized,
F: FnOnce(Self::Error) -> T,
fn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F>where Self: Sized, F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Error
.