#[non_exhaustive]pub enum DiscoverySource {
SeedPeer,
Mdns,
Kademlia,
PeerExchange,
Manual,
}Expand description
How a peer was discovered.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
SeedPeer
Static seed peer from configuration.
Mdns
Discovered via mDNS on the local network.
Kademlia
Discovered via Kademlia DHT.
PeerExchange
Learned from another peer’s peer list exchange.
Manual
Manually added by operator.
Trait Implementations§
Source§impl Clone for DiscoverySource
impl Clone for DiscoverySource
impl Copy for DiscoverySource
Source§impl Debug for DiscoverySource
impl Debug for DiscoverySource
Source§impl<'de> Deserialize<'de> for DiscoverySource
impl<'de> Deserialize<'de> for DiscoverySource
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
impl Eq for DiscoverySource
Source§impl PartialEq for DiscoverySource
impl PartialEq for DiscoverySource
Source§impl Serialize for DiscoverySource
impl Serialize for DiscoverySource
impl StructuralPartialEq for DiscoverySource
Auto Trait Implementations§
impl Freeze for DiscoverySource
impl RefUnwindSafe for DiscoverySource
impl Send for DiscoverySource
impl Sync for DiscoverySource
impl Unpin for DiscoverySource
impl UnsafeUnpin for DiscoverySource
impl UnwindSafe for DiscoverySource
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<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> ⓘ
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