pub struct PersistedPeerInfo {
pub record: NodeRecord,
pub kind: PeerKind,
pub fork_id: Option<ForkId>,
pub reputation: i32,
}Expand description
Peer info persisted to disk.
Contains richer metadata than a plain [NodeRecord], preserving the peer’s kind, fork ID,
and reputation across restarts.
Fields§
§record: NodeRecordThe node record (id, address, ports).
kind: PeerKindThe kind of peer.
fork_id: Option<ForkId>The [ForkId] that the peer announced via discovery.
reputation: i32The peer’s reputation at the time of persisting.
Implementations§
Source§impl PersistedPeerInfo
impl PersistedPeerInfo
Sourcepub const fn from_node_record(record: NodeRecord) -> Self
pub const fn from_node_record(record: NodeRecord) -> Self
Converts a legacy [NodeRecord] into a PersistedPeerInfo with default metadata.
Trait Implementations§
Source§impl Clone for PersistedPeerInfo
impl Clone for PersistedPeerInfo
Source§fn clone(&self) -> PersistedPeerInfo
fn clone(&self) -> PersistedPeerInfo
Returns a duplicate of the value. Read more
1.0.0 · 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 PersistedPeerInfo
impl Debug for PersistedPeerInfo
Source§impl<'de> Deserialize<'de> for PersistedPeerInfo
impl<'de> Deserialize<'de> for PersistedPeerInfo
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 PersistedPeerInfo
impl PartialEq for PersistedPeerInfo
Source§impl Serialize for PersistedPeerInfo
impl Serialize for PersistedPeerInfo
impl Eq for PersistedPeerInfo
impl StructuralPartialEq for PersistedPeerInfo
Auto Trait Implementations§
impl Freeze for PersistedPeerInfo
impl RefUnwindSafe for PersistedPeerInfo
impl Send for PersistedPeerInfo
impl Sync for PersistedPeerInfo
impl Unpin for PersistedPeerInfo
impl UnsafeUnpin for PersistedPeerInfo
impl UnwindSafe for PersistedPeerInfo
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§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>
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 120 bytes