Struct solana_gossip::contact_info::ContactInfo
source · [−]pub struct ContactInfo {Show 13 fields
pub id: Pubkey,
pub gossip: SocketAddr,
pub tvu: SocketAddr,
pub tvu_forwards: SocketAddr,
pub repair: SocketAddr,
pub tpu: SocketAddr,
pub tpu_forwards: SocketAddr,
pub tpu_vote: SocketAddr,
pub rpc: SocketAddr,
pub rpc_pubsub: SocketAddr,
pub serve_repair: SocketAddr,
pub wallclock: u64,
pub shred_version: u16,
}
Expand description
Structure representing a node on the network
Fields
id: Pubkey
gossip: SocketAddr
gossip address
tvu: SocketAddr
address to connect to for replication
tvu_forwards: SocketAddr
address to forward shreds to
repair: SocketAddr
address to send repair responses to
tpu: SocketAddr
transactions address
tpu_forwards: SocketAddr
address to forward unprocessed transactions to
tpu_vote: SocketAddr
address to which to send bank state requests
rpc: SocketAddr
address to which to send JSON-RPC requests
rpc_pubsub: SocketAddr
websocket for JSON-RPC push notifications
serve_repair: SocketAddr
address to send repair requests to
wallclock: u64
latest wallclock picked
shred_version: u16
node shred version
Implementations
sourceimpl ContactInfo
impl ContactInfo
pub fn new_localhost(id: &Pubkey, now: u64) -> Self
sourcepub fn new_rand<R: Rng>(rng: &mut R, pubkey: Option<Pubkey>) -> Self
pub fn new_rand<R: Rng>(rng: &mut R, pubkey: Option<Pubkey>) -> Self
New random ContactInfo for tests and simulations.
pub fn new_with_pubkey_socketaddr(
pubkey: &Pubkey,
bind_addr: &SocketAddr
) -> Self
pub fn new_with_socketaddr(bind_addr: &SocketAddr) -> Self
pub fn new_gossip_entry_point(gossip_addr: &SocketAddr) -> Self
pub fn is_valid_address(
addr: &SocketAddr,
socket_addr_space: &SocketAddrSpace
) -> bool
pub fn client_facing_addr(&self) -> (SocketAddr, SocketAddr)
pub fn valid_client_facing_addr(
&self,
socket_addr_space: &SocketAddrSpace
) -> Option<(SocketAddr, SocketAddr)>
Trait Implementations
sourceimpl AbiExample for ContactInfo
impl AbiExample for ContactInfo
sourceimpl Clone for ContactInfo
impl Clone for ContactInfo
sourcefn clone(&self) -> ContactInfo
fn clone(&self) -> ContactInfo
Returns a copy of the value. Read more
1.0.0 · sourceconst fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl<'a, 'b> CrdsEntry<'a, 'b> for &'a ContactInfo
impl<'a, 'b> CrdsEntry<'a, 'b> for &'a ContactInfo
type Key = Pubkey
fn get_entry(
table: &'a IndexMap<CrdsValueLabel, VersionedCrdsValue>,
key: Self::Key
) -> Option<Self>
sourceimpl Debug for ContactInfo
impl Debug for ContactInfo
sourceimpl Default for ContactInfo
impl Default for ContactInfo
sourceimpl<'de> Deserialize<'de> for ContactInfo
impl<'de> Deserialize<'de> for ContactInfo
sourcefn 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
sourceimpl Ord for ContactInfo
impl Ord for ContactInfo
sourcefn cmp(&self, other: &ContactInfo) -> Ordering
fn cmp(&self, other: &ContactInfo) -> Ordering
1.21.0 · sourceconst fn max(self, other: Self) -> Self
const fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourceconst fn min(self, other: Self) -> Self
const fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourceconst fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
const fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialEq<ContactInfo> for ContactInfo
impl PartialEq<ContactInfo> for ContactInfo
sourcefn eq(&self, other: &ContactInfo) -> bool
fn eq(&self, other: &ContactInfo) -> bool
sourceimpl PartialOrd<ContactInfo> for ContactInfo
impl PartialOrd<ContactInfo> for ContactInfo
sourcefn partial_cmp(&self, other: &ContactInfo) -> Option<Ordering>
fn partial_cmp(&self, other: &ContactInfo) -> Option<Ordering>
1.0.0 · sourceconst fn le(&self, other: &Rhs) -> bool
const fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresourceimpl Serialize for ContactInfo
impl Serialize for ContactInfo
impl Eq for ContactInfo
impl StructuralEq for ContactInfo
impl StructuralPartialEq for ContactInfo
Auto Trait Implementations
impl RefUnwindSafe for ContactInfo
impl Send for ContactInfo
impl Sync for ContactInfo
impl Unpin for ContactInfo
impl UnwindSafe for ContactInfo
Blanket Implementations
sourceimpl<T> AbiEnumVisitor for Twhere
T: Serialize + AbiExample + ?Sized,
impl<T> AbiEnumVisitor for Twhere
T: Serialize + AbiExample + ?Sized,
default fn visit_for_abi(
&self,
digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
sourceimpl<T> AbiEnumVisitor for Twhere
T: Serialize + ?Sized,
impl<T> AbiEnumVisitor for Twhere
T: Serialize + ?Sized,
default fn visit_for_abi(
&self,
_digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
sourceimpl<T> AbiExample for T
impl<T> AbiExample for T
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
sourcefn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request