pub enum ShardedGossipWire {
Initiate(Initiate),
Accept(Accept),
Agents(Agents),
MissingAgents(MissingAgents),
OpBloom(OpBloom),
OpRegions(OpRegions),
MissingOpHashes(MissingOpHashes),
OpBatchReceived(OpBatchReceived),
Error(Error),
Busy(Busy),
NoAgents(NoAgents),
AlreadyInProgress(AlreadyInProgress),
}
Expand description
ShardedGossip Wire Protocol Codec
Variants§
Initiate(Initiate)
Initiate a round of gossip with a remote node
Accept(Accept)
Accept an incoming round of gossip from a remote node
Agents(Agents)
Send Agent Info Bloom
MissingAgents(MissingAgents)
Any agents that were missing from the remote bloom.
OpBloom(OpBloom)
Send Op Bloom filter
OpRegions(OpRegions)
Send Op region hashes
MissingOpHashes(MissingOpHashes)
Any ops that were missing from the remote bloom.
OpBatchReceived(OpBatchReceived)
I have received a complete batch of missing ops and I am ready to receive the next batch.
Error(Error)
The node you are gossiping with has hit an error condition and failed to respond to a request.
Busy(Busy)
The node currently is gossiping with too many other nodes and is too busy to accept your initiate. Please try again later.
NoAgents(NoAgents)
The node you are trying to gossip with has no agents anymore.
AlreadyInProgress(AlreadyInProgress)
You have sent a stale initiate to a node that already has an active round with you.
Implementations§
source§impl ShardedGossipWire
impl ShardedGossipWire
sourcepub fn initiate(
intervals: Vec<DhtArcRange>,
id: u32,
agent_list: Vec<AgentInfoSigned>
) -> Self
pub fn initiate( intervals: Vec<DhtArcRange>, id: u32, agent_list: Vec<AgentInfoSigned> ) -> Self
Variant constructor helper function.
sourcepub fn accept(
intervals: Vec<DhtArcRange>,
agent_list: Vec<AgentInfoSigned>
) -> Self
pub fn accept( intervals: Vec<DhtArcRange>, agent_list: Vec<AgentInfoSigned> ) -> Self
Variant constructor helper function.
sourcepub fn missing_agents(agents: Vec<Arc<AgentInfoSigned>>) -> Self
pub fn missing_agents(agents: Vec<Arc<AgentInfoSigned>>) -> Self
Variant constructor helper function.
sourcepub fn op_bloom(missing_hashes: EncodedTimedBloomFilter, finished: bool) -> Self
pub fn op_bloom(missing_hashes: EncodedTimedBloomFilter, finished: bool) -> Self
Variant constructor helper function.
sourcepub fn op_regions(region_set: RegionSetLtcs) -> Self
pub fn op_regions(region_set: RegionSetLtcs) -> Self
Variant constructor helper function.
sourcepub fn missing_op_hashes(ops: Vec<OpHashSized>, finished: u8) -> Self
pub fn missing_op_hashes(ops: Vec<OpHashSized>, finished: u8) -> Self
Variant constructor helper function.
sourcepub fn op_batch_received() -> Self
pub fn op_batch_received() -> Self
Variant constructor helper function.
sourcepub fn already_in_progress() -> Self
pub fn already_in_progress() -> Self
Variant constructor helper function.
Trait Implementations§
source§impl Clone for ShardedGossipWire
impl Clone for ShardedGossipWire
source§fn clone(&self) -> ShardedGossipWire
fn clone(&self) -> ShardedGossipWire
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Codec for ShardedGossipWire
impl Codec for ShardedGossipWire
source§fn variant_type(&self) -> &'static str
fn variant_type(&self) -> &'static str
source§fn encode<W>(&self, w: &mut W) -> Result<()>where
W: Write,
fn encode<W>(&self, w: &mut W) -> Result<()>where
W: Write,
source§fn decode<R>(r: &mut R) -> Result<Self, Error>where
R: Read,
fn decode<R>(r: &mut R) -> Result<Self, Error>where
R: Read,
source§impl Debug for ShardedGossipWire
impl Debug for ShardedGossipWire
source§impl PartialEq for ShardedGossipWire
impl PartialEq for ShardedGossipWire
source§fn eq(&self, other: &ShardedGossipWire) -> bool
fn eq(&self, other: &ShardedGossipWire) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for ShardedGossipWire
Auto Trait Implementations§
impl !Freeze for ShardedGossipWire
impl RefUnwindSafe for ShardedGossipWire
impl Send for ShardedGossipWire
impl Sync for ShardedGossipWire
impl Unpin for ShardedGossipWire
impl UnwindSafe for ShardedGossipWire
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.