logo
pub trait UpgradeInfo {
    type Info: ProtocolName + Clone;
    type InfoIter: IntoIterator;
    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

Note: This is not currentlyy a standardised upgrade.

Note: This is not currently a standardised upgrade.

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