#[non_exhaustive]pub struct Reading {
pub source: String,
pub witness: Option<String>,
pub addr: SocketAddr,
}Expand description
One source’s report of this node’s reflexive address (SPEC.md §7.1).
#[non_exhaustive]: an additive field is a patch release for consumers, who construct this via
Reading::new rather than a struct literal.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.source: StringThe independence class of whoever reported this, rendered by SourceClass’s
Display impl (i.e. SourceClass::operator(..).to_string()).
Two readings corroborate each other exactly when their source strings DIFFER and their
addresses agree — string inequality is the ONLY independence comparison this crate defines.
witness: Option<String>Optional identity of the individual reporter (a peer_id, a resolved server address). For
diagnostics only; never consulted by establish.
addr: SocketAddrThe address the source said this node appears at. The PORT is carried but never compared —
only the IP participates in agreement (SPEC.md §7.3).