Expand description
Common data types and abstractions for the consensus engine.
Structs§
- Commit
Certificate - Represents a certificate containing the message (height, round, value_id) and the commit signatures.
- Commit
Signature - Represents a signature for a commit certificate, with the address of the validator that produced it.
- Enter
Round Certificate - Represents a local certificate that triggered or will trigger the start of a new round.
- Polka
Certificate - Represents a certificate witnessing a Polka at a given height and round.
- Polka
Signature - Represents a signature for a polka certificate, with the address of the validator that produced it.
- Round
Certificate - Represents a certificate used to justify entering a new round at a given height.
- Round
Signature - Represents a signature for a round certificate, with the address of the validator that produced it.
- Signed
Message - A signed message, ie. a message emitted by a validator and signed by its private key.
- Threshold
Param - Represents the different quorum thresholds.
- Threshold
Params - Represents the different quorum thresholds.
- Timeout
- A timeout for a round step.
- Value
Response - Represents a response to a value request.
- Vote
Extensions - A set of vote extensions.
Enums§
- Certificate
Error - Represents an error that can occur when verifying a certificate.
- NilOr
Val - Represents either
Nilor a value of typeValue. - Round
- A round number.
- Round
Certificate Type - Describes the type of a
RoundCertificate. - Threshold
- Represents the different quorum thresholds.
- Timeout
Kind - The timeout type. There may be multiple timeouts running in a given step.
- Validity
- Whether or not a proposal is valid.
- Value
Origin - Protocols that diseminate
Value - Value
Payload - The possible messages used to deliver proposals
- Vote
Type - A type of vote.
Traits§
- Address
- Defines the requirements for an address.
- Context
- This trait allows to abstract over the various datatypes that are used in the consensus engine.
- Extension
- Vote extensions allows applications to extend the pre-commit vote with arbitrary data. This allows applications to force their validators to do more than just validate blocks within consensus.
- Height
- Defines the requirements for a height type.
- Proposal
- Defines the requirements for a proposal type.
- Proposal
Part - Defines the requirements for a proposal part type.
- Signing
Provider - A provider of signing functionality for the consensus engine.
- Signing
Provider Ext - Extension trait providing additional certificate verification functionality for signing providers.
- Signing
Scheme - A signing scheme that can be used to sign votes and verify such signatures.
- Validator
- Defines the requirements for a validator.
- Validator
Set - Defines the requirements for a validator set.
- Value
- The
Valuetype denotes the valuevcarried by theProposalconsensus message broadcast by the proposer of a round of consensus. - Vote
- Defines the requirements for a vote.
Type Aliases§
- Private
Key - Type alias to make it easier to refer the
PrivateKeytype. - Public
Key - Type alias to make it easier to refer the
PublicKeytype. - Signature
- Type alias to make it easier to refer the
Signaturetype. - Signed
Extension - A signed vote extension
- Signed
Proposal - A signed proposal
- Signed
Proposal Part - A signed proposal part
- Signed
Vote - A signed vote
- ValueId
- Type alias to make it easier to refer the
ValueIdtype. - Voting
Power - Voting power held by a validator.