pub enum MirrorAdvertiseState {
AdvertisingOverride,
AdvertisingDerived,
Off,
NoPublicAddress,
UncorroboratedAddress,
NoRelay,
}Expand description
Which of dig-node#562’s AdvertiseState outcomes produced a MirrorAdvertiseView.
Restated here, under the SAME six spellings, so a client and the node cannot drift on what one
of them means — see the conformance KAT that pins each literal wire token. Named states rather
than a bare empty MirrorAdvertiseView::urls list, because the four ways of publishing
nothing have four different remedies and an empty list alone cannot tell them apart: a UI that
only sees [] cannot say “nothing configured”, “switched off”, “not discovered yet”, “waiting
on a second source” and “waiting on a relay” apart, and each of those calls for different
operator action (or none).
Variants§
AdvertisingOverride
Publishing the operator’s own override; their value always wins.
AdvertisingDerived
Publishing this node’s own reflexive peer address, because no operator override is set.
Off
The operator set an override and no entry in it is publishable.
NoPublicAddress
No operator override, and this node does not yet know a public address it could publish.
UncorroboratedAddress
Exactly one source has reported a public address for this node and nothing has confirmed it yet — a single source can be wrong without erroring.
NoRelay
A public address is known, but no path to this node (a relay reservation or a confirmed direct mapping) is currently held.
Implementations§
Source§impl MirrorAdvertiseState
impl MirrorAdvertiseState
Sourcepub const ALL: [MirrorAdvertiseState; 6]
pub const ALL: [MirrorAdvertiseState; 6]
Every variant, so a completeness test walks the SET rather than a chosen example.
Trait Implementations§
Source§impl Clone for MirrorAdvertiseState
impl Clone for MirrorAdvertiseState
Source§fn clone(&self) -> MirrorAdvertiseState
fn clone(&self) -> MirrorAdvertiseState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more