[][src]Trait libp2p::OutboundUpgrade

pub trait OutboundUpgrade<C>: UpgradeInfo where
    <Self::Future as Future>::Item == Self::Output,
    <Self::Future as Future>::Error == Self::Error
{ type Output; type Error; type Future: Future; fn upgrade_outbound(self, socket: C, info: Self::Info) -> Self::Future; }

Possible upgrade on an outbound connection or substream.

Associated Types

Output after the upgrade has been successfully negotiated and the handshake performed.

Possible error during the handshake.

Future that performs the handshake with the remote.

Loading content...

Required methods

After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake.

The info is the identifier of the protocol, as produced by protocol_info.

Loading content...

Implementations on Foreign Types

impl<C, A, B, TA, TB, EA, EB> OutboundUpgrade<C> for EitherUpgrade<A, B> where
    A: OutboundUpgrade<C, Output = TA, Error = EA>,
    B: OutboundUpgrade<C, Output = TB, Error = EB>, 
[src]

impl<C, U, F> OutboundUpgrade<C> for MapInboundUpgradeErr<U, F> where
    U: OutboundUpgrade<C>, 
[src]

impl<C, U, F> OutboundUpgrade<C> for MapInboundUpgrade<U, F> where
    U: OutboundUpgrade<C>, 
[src]

impl<C, A, B, TA, TB, EA, EB> OutboundUpgrade<C> for SelectUpgrade<A, B> where
    A: OutboundUpgrade<C, Output = TA, Error = EA>,
    B: OutboundUpgrade<C, Output = TB, Error = EB>, 
[src]

impl<C, U, F, T> OutboundUpgrade<C> for MapOutboundUpgrade<U, F> where
    F: FnOnce(<U as OutboundUpgrade<C>>::Output) -> T,
    U: OutboundUpgrade<C>, 
[src]

impl<C> OutboundUpgrade<C> for DeniedUpgrade
[src]

impl<C, U, F, T> OutboundUpgrade<C> for MapOutboundUpgradeErr<U, F> where
    F: FnOnce(<U as OutboundUpgrade<C>>::Error) -> T,
    U: OutboundUpgrade<C>, 
[src]

impl<C> OutboundUpgrade<C> for IdentifyProtocolConfig where
    C: AsyncRead + AsyncWrite
[src]

impl<C> OutboundUpgrade<C> for KademliaProtocolConfig where
    C: AsyncRead + AsyncWrite
[src]

impl<TSocket, TUserData> OutboundUpgrade<TSocket> for Ping<TUserData> where
    TSocket: AsyncRead + AsyncWrite
[src]

impl<TSocket> OutboundUpgrade<TSocket> for FloodsubConfig where
    TSocket: AsyncRead + AsyncWrite
[src]

impl<C> OutboundUpgrade<C> for MplexConfig where
    C: AsyncRead + AsyncWrite
[src]

impl<C> OutboundUpgrade<C> for PlainTextConfig
[src]

impl<T> OutboundUpgrade<T> for SecioConfig where
    T: AsyncRead + AsyncWrite + Send + 'static, 
[src]

impl<C> OutboundUpgrade<C> for Config where
    C: AsyncRead + AsyncWrite + 'static, 
[src]

Loading content...

Implementors

impl<C, F, O> OutboundUpgrade<C> for SimpleProtocol<F> where
    C: AsyncRead + AsyncWrite,
    F: Fn(C) -> O,
    O: IntoFuture<Error = IoError>, 
[src]

Loading content...