pub struct PeerMeshReport {
pub did: String,
pub display_name: String,
pub active: bool,
pub has_wg_key: bool,
pub has_endpoint: bool,
pub dialable_now: bool,
pub reachable: bool,
pub note: String,
}Expand description
A per-peer report of whether the mesh can bring up a tunnel to them, and what (if anything) is missing. Drives the Connect/Directory UI’s “can I reach this peer?” affordance.
Fields§
§did: StringThe peer’s DID.
display_name: StringFriendly label.
active: boolThe peering is switched on (SocialPeer::active).
has_wg_key: boolThe peer has a usable WireGuard public key.
has_endpoint: boolA transport endpoint is known, so we can dial immediately (vs. waiting for the peer to reach us first, then learning their endpoint by roaming).
dialable_now: boolOverall: can a tunnel be brought up now (active + key + endpoint)?
reachable: boolCan a tunnel form at all once the peer initiates (active + key, endpoint learned by roaming)?
note: StringHuman-readable note on what is missing, or empty when dialable_now.
Trait Implementations§
Source§impl Clone for PeerMeshReport
impl Clone for PeerMeshReport
Source§fn clone(&self) -> PeerMeshReport
fn clone(&self) -> PeerMeshReport
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PeerMeshReport
impl Debug for PeerMeshReport
Source§impl<'de> Deserialize<'de> for PeerMeshReport
impl<'de> Deserialize<'de> for PeerMeshReport
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for PeerMeshReport
impl PartialEq for PeerMeshReport
Source§fn eq(&self, other: &PeerMeshReport) -> bool
fn eq(&self, other: &PeerMeshReport) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for PeerMeshReport
impl Serialize for PeerMeshReport
impl StructuralPartialEq for PeerMeshReport
Auto Trait Implementations§
impl Freeze for PeerMeshReport
impl RefUnwindSafe for PeerMeshReport
impl Send for PeerMeshReport
impl Sync for PeerMeshReport
impl Unpin for PeerMeshReport
impl UnsafeUnpin for PeerMeshReport
impl UnwindSafe for PeerMeshReport
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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 more