Struct routing::MessageId
[−]
[src]
pub struct MessageId(_);
Unique ID for messages
This is used for deduplication: Since the network sends messages redundantly along different routes, the same message will usually arrive more than once at any given node. A message with an ID that is already in the cache will be ignored.
Methods
impl MessageId
[src]
fn new() -> MessageId
Generate a new MessageId
with random content.
fn zero() -> MessageId
Generate a MessageId
with value 0. This should only be used for messages where there is
no danger of duplication.
fn from_lost_node(name: XorName) -> MessageId
Generate a new MessageId
with contents extracted from lost node.
fn from_added_node(name: XorName) -> MessageId
Generate a new MessageId
with contents extracted from new node.
fn from_reverse(name: &MessageId) -> MessageId
Generate the reverse of the given MessageId
.
fn increment_first_byte(message_id: &MessageId) -> MessageId
Generate the increment (on the MSB only) of the given MessageId
.
fn decrement_first_byte(message_id: &MessageId) -> MessageId
Generate the decrement (on the MSB only) of the given MessageId
.
Trait Implementations
impl Ord for MessageId
[src]
fn cmp(&self, __arg_0: &MessageId) -> Ordering
This method returns an Ordering
between self
and other
. Read more
impl PartialOrd for MessageId
[src]
fn partial_cmp(&self, __arg_0: &MessageId) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, __arg_0: &MessageId) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, __arg_0: &MessageId) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, __arg_0: &MessageId) -> bool
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, __arg_0: &MessageId) -> bool
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Debug for MessageId
[src]
impl Clone for MessageId
[src]
fn clone(&self) -> MessageId
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Copy for MessageId
[src]
impl Eq for MessageId
[src]
impl PartialEq for MessageId
[src]
fn eq(&self, __arg_0: &MessageId) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &MessageId) -> bool
This method tests for !=
.
impl Encodable for MessageId
[src]
fn encode<__S: Encoder>(&self, __arg_0: &mut __S) -> Result<(), __S::Error>
Serialize a value using an Encoder
.
impl Decodable for MessageId
[src]
fn decode<__D: Decoder>(__arg_0: &mut __D) -> Result<MessageId, __D::Error>
Deserialize a value using a Decoder
.
impl Hash for MessageId
[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.