pub struct PeerInfo {
pub instance_id: InstanceId,
pub worker_address: WorkerAddress,
}Expand description
Peer information combining instance ID and worker address.
This is the primary type returned by discovery lookups. It contains everything needed to connect to and identify a peer.
§Example
use velo_common::{InstanceId, PeerInfo};
let instance_id = InstanceId::new_v4();
let peer_info = PeerInfo::new(instance_id, address);
assert_eq!(peer_info.instance_id(), instance_id);
assert_eq!(peer_info.worker_id(), instance_id.worker_id());Fields§
§instance_id: InstanceIdThe instance ID of the peer
worker_address: WorkerAddressThe worker address for connecting to the peer
Implementations§
Source§impl PeerInfo
impl PeerInfo
Sourcepub fn new(instance_id: InstanceId, worker_address: WorkerAddress) -> Self
pub fn new(instance_id: InstanceId, worker_address: WorkerAddress) -> Self
Create a new PeerInfo.
Sourcepub fn instance_id(&self) -> InstanceId
pub fn instance_id(&self) -> InstanceId
Get the instance ID.
Sourcepub fn worker_address(&self) -> &WorkerAddress
pub fn worker_address(&self) -> &WorkerAddress
Get a reference to the worker address.
Sourcepub fn address_checksum(&self) -> u64
pub fn address_checksum(&self) -> u64
Get the worker address checksum for validation.
Sourcepub fn into_address(self) -> WorkerAddress
pub fn into_address(self) -> WorkerAddress
Consume self and return the worker address.
Sourcepub fn into_parts(self) -> (InstanceId, WorkerAddress)
pub fn into_parts(self) -> (InstanceId, WorkerAddress)
Decompose into instance ID and worker address.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PeerInfo
impl<'de> Deserialize<'de> for PeerInfo
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 PeerInfo
impl StructuralPartialEq for PeerInfo
Auto Trait Implementations§
impl !Freeze for PeerInfo
impl RefUnwindSafe for PeerInfo
impl Send for PeerInfo
impl Sync for PeerInfo
impl Unpin for PeerInfo
impl UnsafeUnpin for PeerInfo
impl UnwindSafe for PeerInfo
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