Struct plumtree::Node[][src]

pub struct Node<T: System> { /* fields omitted */ }

Plumtree node.

Methods

impl<T: System> Node<T>
[src]

Makes a new Node instance.

Makes a new Node instance with the given options.

Returns the identifier of the node.

Returns the options of the node.

Returns the peers with which the node uses eager push gossip for diffusing application messages.

Returns the peers with which the node uses lazy push gossip for diffusing application messages.

Broadcasts the given message.

Returns a reference to the messages kept by the node.

Forgets the specified message.

If the node does not have the target message, this method will return false.

For preventing memory shortage, this method needs to be called appropriately.

Polls the next action that the node wants to execute.

Handles the given incoming message.

Accepts new neighbor.

Removes downed neighbor.

Advances the logical time of the node by one unit.

Trait Implementations

impl<T: System> Debug for Node<T> where
    T::NodeId: Debug,
    T::MessageId: Debug,
    T::MessagePayload: Debug
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl<T> Send for Node<T> where
    <T as System>::MessageId: Send,
    <T as System>::MessagePayload: Send,
    <T as System>::NodeId: Send

impl<T> Sync for Node<T> where
    <T as System>::MessageId: Sync,
    <T as System>::MessagePayload: Sync,
    <T as System>::NodeId: Sync