Skip to main content

Module simple_vote

Module simple_vote 

Source
Expand description

Implementations of the simple vote types.

Modules§

sealed 🔒
Sealed is used to make sure no other files can implement the Voteable trait. All simple voteable types should be implemented here. This prevents us from creating/using improper types when using the vote types.

Structs§

DaData
Data used for a DA vote.
DaData2
Data used for a DA vote.
EpochRootQuorumVote
EpochRootQuorumVote2
LightClientStateUpdateVote
Type for light client state update vote
LightClientStateUpdateVote2
Type for light client state update vote
LockView
Where a lock sits in the order locks are compared by: epoch first, then view.
NextEpochQuorumData2
Data used for a yes vote. Used to distinguish votes sent by the next epoch nodes.
QuorumData
Data used for a yes vote.
QuorumData2
Data used for a yes vote.
SimpleVote
A simple yes vote over some votable type.
TimeoutData
Data used for a timeout vote.
TimeoutData2
Data used for a timeout vote.
TimeoutData3
Data used for a timeout vote, binding the epoch the vote was cast in and the lock its signer held when it timed out.
UpgradeProposalData
Data used for a Upgrade vote.
UpgradeProposalData2
Data used for an upgrade vote, binding the epoch the vote was cast in.
VersionedVoteData
A wrapper for vote data that carries a view number and an upgrade_lock, allowing switching the commitment calculation dynamically depending on the version
ViewSyncCommitData
Data used for a Commit vote.
ViewSyncCommitData2
Data used for a Commit vote.
ViewSyncFinalizeData
Data used for a Finalize vote.
ViewSyncFinalizeData2
Data used for a Finalize vote.
ViewSyncPreCommitData
Data used for a Pre Commit vote.
ViewSyncPreCommitData2
Data used for a Pre Commit vote.
Vote2Data
Data used for a yes vote.

Enums§

TimeoutLock
The lock a timeout vote or certificate of some epoch carries, by what is checked of it.

Traits§

HasEpoch
A trait for types belonging for specific epoch
QuorumMarker
Marker that data should use the quorum cert type
Voteable
Marker trait for data or commitments that can be voted on. Only structs in this file can implement voteable. This is enforced with the Sealed trait Sealing this trait prevents creating new vote types outside this file.
Voteable2
Marker trait for data or commitments that can be voted on. Only structs in this file can implement voteable. This is enforced with the Sealed trait Sealing this trait prevents creating new vote types outside this file.

Functions§

view_and_relay_commit 🔒
This implements commit for all the types which contain a view and relay public key.

Type Aliases§

DaVote
DA vote type alias
DaVote2
DA vote 2 type alias
NextEpochQuorumVote2
Quorum vote Alias. This type is useful to distinguish the next epoch nodes’ votes.
QuorumVote
Quorum vote Alias
QuorumVote2
Quorum vote Alias
TimeoutVote
Timeout Vote type alias
TimeoutVote2
Timeout Vote 2 type alias
TimeoutVote3
Type alias for a TimeoutVote3, which is a SimpleVote over TimeoutData3
UpgradeVote
Upgrade proposal vote
UpgradeVote2
Upgrade vote binding its epoch
ViewSyncCommitVote
View Sync Commit Vote type alias
ViewSyncCommitVote2
View Sync Commit Vote 2 type alias
ViewSyncFinalizeVote
View Sync Finalize Vote type alias
ViewSyncFinalizeVote2
View Sync Finalize Vote 2 type alias
ViewSyncPreCommitVote
View Sync Pre Commit Vote type alias
ViewSyncPreCommitVote2
View Sync Pre Commit Vote 2 type alias