Struct libp2p_gossipsub::protocol::ProtocolConfig
source · [−]pub struct ProtocolConfig { /* private fields */ }
Expand description
Implementation of InboundUpgrade
and OutboundUpgrade
for the Gossipsub protocol.
Implementations
sourceimpl ProtocolConfig
impl ProtocolConfig
sourcepub fn new(
id: Cow<'static, str>,
custom_id_peer_kind: Option<GossipsubVersion>,
max_transmit_size: usize,
validation_mode: ValidationMode,
support_floodsub: bool
) -> ProtocolConfig
pub fn new(
id: Cow<'static, str>,
custom_id_peer_kind: Option<GossipsubVersion>,
max_transmit_size: usize,
validation_mode: ValidationMode,
support_floodsub: bool
) -> ProtocolConfig
Builds a new ProtocolConfig
.
Sets the maximum gossip transmission size.
Trait Implementations
sourceimpl Clone for ProtocolConfig
impl Clone for ProtocolConfig
sourcefn clone(&self) -> ProtocolConfig
fn clone(&self) -> ProtocolConfig
Returns a copy of the value. Read more
1.0.0 · sourceconst fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl Debug for ProtocolConfig
impl Debug for ProtocolConfig
sourceimpl<TSocket> InboundUpgrade<TSocket> for ProtocolConfigwhere
TSocket: AsyncRead + AsyncWrite + Unpin + Send + 'static,
impl<TSocket> InboundUpgrade<TSocket> for ProtocolConfigwhere
TSocket: AsyncRead + AsyncWrite + Unpin + Send + 'static,
type Output = (Framed<TSocket, GossipsubCodec>, PeerKind)
type Output = (Framed<TSocket, GossipsubCodec>, PeerKind)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = GossipsubHandlerError
type Error = GossipsubHandlerError
Possible error during the handshake.
type Future = Pin<Box<dyn Future<Output = Result<<ProtocolConfig as InboundUpgrade<TSocket>>::Output, <ProtocolConfig as InboundUpgrade<TSocket>>::Error>> + Send + 'static, Global>>
type Future = Pin<Box<dyn Future<Output = Result<<ProtocolConfig as InboundUpgrade<TSocket>>::Output, <ProtocolConfig as InboundUpgrade<TSocket>>::Error>> + Send + 'static, Global>>
Future that performs the handshake with the remote.
sourcefn upgrade_inbound(self, socket: TSocket, protocol_id: Self::Info) -> Self::Future
fn upgrade_inbound(self, socket: TSocket, protocol_id: Self::Info) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this
method is called to start the handshake. Read more
sourceimpl<TSocket> OutboundUpgrade<TSocket> for ProtocolConfigwhere
TSocket: AsyncWrite + AsyncRead + Unpin + Send + 'static,
impl<TSocket> OutboundUpgrade<TSocket> for ProtocolConfigwhere
TSocket: AsyncWrite + AsyncRead + Unpin + Send + 'static,
type Output = (Framed<TSocket, GossipsubCodec>, PeerKind)
type Output = (Framed<TSocket, GossipsubCodec>, PeerKind)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = GossipsubHandlerError
type Error = GossipsubHandlerError
Possible error during the handshake.
type Future = Pin<Box<dyn Future<Output = Result<<ProtocolConfig as OutboundUpgrade<TSocket>>::Output, <ProtocolConfig as OutboundUpgrade<TSocket>>::Error>> + Send + 'static, Global>>
type Future = Pin<Box<dyn Future<Output = Result<<ProtocolConfig as OutboundUpgrade<TSocket>>::Output, <ProtocolConfig as OutboundUpgrade<TSocket>>::Error>> + Send + 'static, Global>>
Future that performs the handshake with the remote.
sourcefn upgrade_outbound(
self,
socket: TSocket,
protocol_id: Self::Info
) -> Self::Future
fn upgrade_outbound(
self,
socket: TSocket,
protocol_id: Self::Info
) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this
method is called to start the handshake. Read more
sourceimpl UpgradeInfo for ProtocolConfig
impl UpgradeInfo for ProtocolConfig
type Info = ProtocolId
type Info = ProtocolId
Opaque type representing a negotiable protocol.
type InfoIter = Vec<<ProtocolConfig as UpgradeInfo>::Info, Global>
type InfoIter = Vec<<ProtocolConfig as UpgradeInfo>::Info, Global>
Iterator returned by
protocol_info
.sourcefn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
Auto Trait Implementations
impl RefUnwindSafe for ProtocolConfig
impl Send for ProtocolConfig
impl Sync for ProtocolConfig
impl Unpin for ProtocolConfig
impl UnwindSafe for ProtocolConfig
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<C, U> InboundUpgradeExt<C> for Uwhere
U: InboundUpgrade<C>,
impl<C, U> InboundUpgradeExt<C> for Uwhere
U: InboundUpgrade<C>,
sourcefn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F>where
F: FnOnce(Self::Output) -> T,
fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F>where
F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Output
.sourcefn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F>where
F: FnOnce(Self::Error) -> T,
fn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F>where
F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Error
.sourceimpl<C, U> OutboundUpgradeExt<C> for Uwhere
U: OutboundUpgrade<C>,
impl<C, U> OutboundUpgradeExt<C> for Uwhere
U: OutboundUpgrade<C>,
sourcefn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F>where
F: FnOnce(Self::Output) -> T,
fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F>where
F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Output
.sourcefn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F>where
F: FnOnce(Self::Error) -> T,
fn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F>where
F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around
Self
and applies a closure to the Error
.