Struct VersionMessage
pub struct VersionMessage {
pub version: u32,
pub services: ServiceFlags,
pub timestamp: i64,
pub receiver: Address,
pub sender: Address,
pub nonce: u64,
pub user_agent: String,
pub start_height: i32,
pub relay: bool,
}Expand description
Some simple messages
The version message
Fields§
§version: u32The P2P network protocol version
services: ServiceFlagsA bitmask describing the services supported by this node
timestamp: i64The time at which the version message was sent
receiver: AddressThe network address of the peer receiving the message
sender: AddressThe network address of the peer sending the message
nonce: u64A random nonce used to detect loops in the network
user_agent: StringA string describing the peer’s software
start_height: i32The height of the maximum-work blockchain that the peer is aware of
relay: boolWhether the receiving peer should relay messages to the sender; used if the sender is bandwidth-limited and would like to support bloom filtering. Defaults to false.
Implementations§
§impl VersionMessage
impl VersionMessage
pub fn new(
services: ServiceFlags,
timestamp: i64,
receiver: Address,
sender: Address,
nonce: u64,
user_agent: String,
start_height: i32,
) -> VersionMessage
pub fn new( services: ServiceFlags, timestamp: i64, receiver: Address, sender: Address, nonce: u64, user_agent: String, start_height: i32, ) -> VersionMessage
Constructs a new version message with relay set to false
Trait Implementations§
§impl Clone for VersionMessage
impl Clone for VersionMessage
§fn clone(&self) -> VersionMessage
fn clone(&self) -> VersionMessage
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 more§impl Debug for VersionMessage
impl Debug for VersionMessage
§impl Decodable for VersionMessage
impl Decodable for VersionMessage
§fn consensus_decode_from_finite_reader<R>(
r: &mut R,
) -> Result<VersionMessage, Error>
fn consensus_decode_from_finite_reader<R>( r: &mut R, ) -> Result<VersionMessage, Error>
Decode
Self from a size-limited reader. Read more§fn consensus_decode<R>(r: &mut R) -> Result<VersionMessage, Error>
fn consensus_decode<R>(r: &mut R) -> Result<VersionMessage, Error>
Decode an object with a well-defined format. Read more
§impl Encodable for VersionMessage
impl Encodable for VersionMessage
§impl PartialEq for VersionMessage
impl PartialEq for VersionMessage
impl Eq for VersionMessage
impl StructuralPartialEq for VersionMessage
Auto Trait Implementations§
impl Freeze for VersionMessage
impl RefUnwindSafe for VersionMessage
impl Send for VersionMessage
impl Sync for VersionMessage
impl Unpin for VersionMessage
impl UnwindSafe for VersionMessage
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Forward to the method defined on the type
Any.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Forward to the method defined on the type
Any.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.§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
Checks if this value is equivalent to the given key. Read more
§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<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
Checks if this value is equivalent to the given key. Read more
§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
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request