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

pub trait OutboundUpgradeSend: UpgradeInfoSend {
    type Output: 'static + Send;
    type Error: 'static + Send;
    type Future: 'static + Send + Future;
    pub fn upgrade_outbound(
        self,
        socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
        info: Self::Info
    ) -> Self::Future; }

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

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

Associated Types

type Output: 'static + Send[src]

Equivalent to OutboundUpgrade::Output.

type Error: 'static + Send[src]

Equivalent to OutboundUpgrade::Error.

type Future: 'static + Send + Future[src]

Equivalent to OutboundUpgrade::Future.

Loading content...

Required methods

pub fn upgrade_outbound(
    self,
    socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
    info: Self::Info
) -> Self::Future
[src]

Loading content...

Implementors

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

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

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

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

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

Loading content...