pub struct HandshakeMsg {
pub supported_protocols: BTreeMap<MessagingProtocolVersion, ProtocolIdSet>,
pub chain_id: ChainId,
pub network_id: NetworkId,
}Expand description
The HandshakeMsg contains a mapping from MessagingProtocolVersion
suppported by the node to a bit-vector specifying application-level protocols
supported over that version.
Fields
supported_protocols: BTreeMap<MessagingProtocolVersion, ProtocolIdSet>chain_id: ChainIdnetwork_id: NetworkIdImplementations
sourceimpl HandshakeMsg
impl HandshakeMsg
sourcepub fn perform_handshake(
&self,
other: &HandshakeMsg
) -> Result<(MessagingProtocolVersion, ProtocolIdSet), HandshakeError>
pub fn perform_handshake(
&self,
other: &HandshakeMsg
) -> Result<(MessagingProtocolVersion, ProtocolIdSet), HandshakeError>
This function:
- verifies that both HandshakeMsg are compatible and
- finds out the intersection of protocols that is supported
Trait Implementations
sourceimpl Clone for HandshakeMsg
impl Clone for HandshakeMsg
sourcefn clone(&self) -> HandshakeMsg
fn clone(&self) -> HandshakeMsg
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl Debug for HandshakeMsg
impl Debug for HandshakeMsg
sourceimpl Default for HandshakeMsg
impl Default for HandshakeMsg
sourcefn default() -> HandshakeMsg
fn default() -> HandshakeMsg
Returns the “default value” for a type. Read more
sourceimpl<'de> Deserialize<'de> for HandshakeMsg
impl<'de> Deserialize<'de> for HandshakeMsg
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 Display for HandshakeMsg
impl Display for HandshakeMsg
sourceimpl Serialize for HandshakeMsg
impl Serialize for HandshakeMsg
Auto Trait Implementations
impl RefUnwindSafe for HandshakeMsg
impl Send for HandshakeMsg
impl Sync for HandshakeMsg
impl Unpin for HandshakeMsg
impl UnwindSafe for HandshakeMsg
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
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<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> PersistableConfig for T where
T: Serialize + DeserializeOwned + ?Sized,
impl<T> PersistableConfig for T where
T: Serialize + DeserializeOwned + ?Sized,
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> Serialize for T where
T: Serialize + ?Sized,
impl<T> Serialize for T where
T: Serialize + ?Sized,
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>
sourceimpl<T> TestOnlyHash for T where
T: Serialize + ?Sized,
impl<T> TestOnlyHash for T where
T: Serialize + ?Sized,
sourcefn test_only_hash(&self) -> HashValue
fn test_only_hash(&self) -> HashValue
Generates a hash used only for tests.
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn 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>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more