Struct libp2p_core::upgrade::FromFnUpgrade
source · [−]pub struct FromFnUpgrade<P, F> { /* private fields */ }Expand description
Implements the UpgradeInfo, InboundUpgrade and OutboundUpgrade traits.
The upgrade consists in calling the function passed when creating this struct.
Trait Implementations
impl<C, P, F, Fut, Err, Out> InboundUpgrade<C> for FromFnUpgrade<P, F> where
P: ProtocolName + Clone,
F: FnOnce(C, Endpoint) -> Fut,
Fut: Future<Output = Result<Out, Err>>,
impl<C, P, F, Fut, Err, Out> InboundUpgrade<C> for FromFnUpgrade<P, F> where
P: ProtocolName + Clone,
F: FnOnce(C, Endpoint) -> Fut,
Fut: Future<Output = Result<Out, Err>>,
type Output = Out
type Output = Out
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = Err
type Error = Err
Possible error during the handshake.
type Future = Fut
type Future = Fut
Future that performs the handshake with the remote.
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
impl<C, P, F, Fut, Err, Out> OutboundUpgrade<C> for FromFnUpgrade<P, F> where
P: ProtocolName + Clone,
F: FnOnce(C, Endpoint) -> Fut,
Fut: Future<Output = Result<Out, Err>>,
impl<C, P, F, Fut, Err, Out> OutboundUpgrade<C> for FromFnUpgrade<P, F> where
P: ProtocolName + Clone,
F: FnOnce(C, Endpoint) -> Fut,
Fut: Future<Output = Result<Out, Err>>,
type Output = Out
type Output = Out
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = Err
type Error = Err
Possible error during the handshake.
type Future = Fut
type Future = Fut
Future that performs the handshake with the remote.
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
Auto Trait Implementations
impl<P, F> RefUnwindSafe for FromFnUpgrade<P, F> where
F: RefUnwindSafe,
P: RefUnwindSafe,
impl<P, F> Send for FromFnUpgrade<P, F> where
F: Send,
P: Send,
impl<P, F> Sync for FromFnUpgrade<P, F> where
F: Sync,
P: Sync,
impl<P, F> Unpin for FromFnUpgrade<P, F> where
F: Unpin,
P: Unpin,
impl<P, F> UnwindSafe for FromFnUpgrade<P, F> where
F: UnwindSafe,
P: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
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.
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.
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.
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.