[−][src]Trait libp2p_core::upgrade::UpgradeInfo
Common trait for upgrades that can be applied on inbound substreams, outbound substreams, or both.
Associated Types
type Info: ProtocolName + Clone
Opaque type representing a negotiable protocol.
type InfoIter: IntoIterator<Item = Self::Info>
Iterator returned by protocol_info
.
Required methods
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
Implementors
impl UpgradeInfo for DeniedUpgrade
[src]
type Info = &'static [u8]
type InfoIter = Empty<Self::Info>
fn protocol_info(&self) -> Self::InfoIter
[src]
impl<A, B> UpgradeInfo for EitherUpgrade<A, B> where
A: UpgradeInfo,
B: UpgradeInfo,
[src]
A: UpgradeInfo,
B: UpgradeInfo,
type Info = EitherName<A::Info, B::Info>
type InfoIter = EitherIter<<A::InfoIter as IntoIterator>::IntoIter, <B::InfoIter as IntoIterator>::IntoIter>
fn protocol_info(&self) -> Self::InfoIter
[src]
impl<A, B> UpgradeInfo for SelectUpgrade<A, B> where
A: UpgradeInfo,
B: UpgradeInfo,
[src]
A: UpgradeInfo,
B: UpgradeInfo,
type Info = EitherName<A::Info, B::Info>
type InfoIter = InfoIterChain<<A::InfoIter as IntoIterator>::IntoIter, <B::InfoIter as IntoIterator>::IntoIter>
fn protocol_info(&self) -> Self::InfoIter
[src]
impl<P, F> UpgradeInfo for FromFnUpgrade<P, F> where
P: ProtocolName + Clone,
[src]
P: ProtocolName + Clone,
impl<T> UpgradeInfo for OptionalUpgrade<T> where
T: UpgradeInfo,
[src]
T: UpgradeInfo,
type Info = T::Info
type InfoIter = Iter<<T::InfoIter as IntoIterator>::IntoIter>
fn protocol_info(&self) -> Self::InfoIter
[src]
impl<U, F> UpgradeInfo for MapInboundUpgrade<U, F> where
U: UpgradeInfo,
[src]
U: UpgradeInfo,
impl<U, F> UpgradeInfo for MapInboundUpgradeErr<U, F> where
U: UpgradeInfo,
[src]
U: UpgradeInfo,
impl<U, F> UpgradeInfo for MapOutboundUpgrade<U, F> where
U: UpgradeInfo,
[src]
U: UpgradeInfo,
impl<U, F> UpgradeInfo for MapOutboundUpgradeErr<U, F> where
U: UpgradeInfo,
[src]
U: UpgradeInfo,