pub trait UpgradeInfo {
    type Info: ProtocolName + Clone;
    type InfoIter: IntoIterator<Item = Self::Info>;
    fn protocol_info(&self) -> Self::InfoIter;
}
Expand description

Common trait for upgrades that can be applied on inbound substreams, outbound substreams, or both.

Associated Types

Opaque type representing a negotiable protocol.

Iterator returned by protocol_info.

Required methods

Returns the list of protocols that are supported. Used during the negotiation process.

Implementors

impl<R> UpgradeInfo for NoiseConfig<IK, X25519, R>

impl<P, C: Zeroize, R> UpgradeInfo for NoiseAuthenticated<P, C, R> where
    NoiseConfig<P, C, R>: UpgradeInfo

impl UpgradeInfo for Ping

impl<TCodec> UpgradeInfo for ResponseProtocol<TCodec> where
    TCodec: RequestResponseCodec

impl<TCodec> UpgradeInfo for RequestProtocol<TCodec> where
    TCodec: RequestResponseCodec