[][src]Trait libp2p::swarm::protocols_handler::InboundUpgradeSend

pub trait InboundUpgradeSend: UpgradeInfoSend where
    <Self::Future as Future>::Output == Result<Self::Output, Self::Error>, 
{ type Output: 'static + Send; type Error: 'static + Send; type Future: 'static + Send + Future; fn upgrade_inbound(
        self,
        socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
        info: Self::Info
    ) -> Self::Future; }

Implemented automatically on all types that implement InboundUpgrade and Send + 'static.

Do not implement this trait yourself. Instead, please implement InboundUpgrade.

Associated Types

type Output: 'static + Send

Equivalent to InboundUpgrade::Output.

type Error: 'static + Send

Equivalent to InboundUpgrade::Error.

type Future: 'static + Send + Future

Equivalent to InboundUpgrade::Future.

Loading content...

Required methods

fn upgrade_inbound(
    self,
    socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
    info: Self::Info
) -> Self::Future

Loading content...

Implementors

impl<K, H> InboundUpgradeSend for Upgrade<K, H> where
    H: InboundUpgradeSend,
    K: Send + 'static, 
[src]

type Output = (K, <H as InboundUpgradeSend>::Output)

type Error = (K, <H as InboundUpgradeSend>::Error)

type Future = Pin<Box<dyn Future<Output = Result<<Upgrade<K, H> as InboundUpgradeSend>::Output, <Upgrade<K, H> as InboundUpgradeSend>::Error>> + 'static + Send>>

impl<T, TInfo> InboundUpgradeSend for T where
    T: InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>, Info = TInfo> + UpgradeInfoSend<Info = TInfo>,
    TInfo: ProtocolName + Clone + Send + 'static,
    <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: Send,
    <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: 'static,
    <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: Send,
    <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: 'static,
    <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: Send,
    <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: 'static, 
[src]

type Output = <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output

type Error = <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error

type Future = <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future

Loading content...