ouroboros-consensus
Safe HaskellNone
LanguageHaskell2010

Ouroboros.Consensus.Committee.EveryoneVotes

Description

A simple voting committee where pools with positive stake can vote.

Synopsis

Voting committee interface

data EveryoneVotes Source #

Tag for a simple voting committee where pools with positive stake can vote.

Instances

Instances details
(Ord (ElectionId crypto), CryptoSupportsAggregateVoteSigning crypto)CryptoSupportsVotingCommittee crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

PerasCertCompatibleWithVotingCommittee (PerasCert blk) PerasBLSCrypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Cert.V1

PerasVoteCompatibleWithVotingCommittee (PerasVote blk) PerasBLSCrypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Vote.V1

(Typeable crypto, FromCBOR (PublicKey crypto))FromCBOR (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

(Typeable crypto, ToCBOR (PublicKey crypto))ToCBOR (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Eq (PublicKey crypto) ⇒ Eq (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Eq (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Eq (PublicKey crypto) ⇒ Eq (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Typeable crypto ⇒ Exception (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Generic (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Associated Types

type Rep (VotingCommittee crypto EveryoneVotes) 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommittee crypto EveryoneVotes) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommittee" 'PrefixI 'True) ((S1 ('MetaSel ('Just "extWFAStakeDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))) :*: S1 ('MetaSel ('Just "candidateSeats") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PoolId SeatIndex))) :*: (S1 ('MetaSel ('Just "numActiveVoters") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NumPoolsWithPositiveStake) :*: S1 ('MetaSel ('Just "totalActiveStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalStake))))
Generic (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Generic (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Associated Types

type Rep (VotingCommitteeInput crypto EveryoneVotes) 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommitteeInput crypto EveryoneVotes) = D1 ('MetaData "VotingCommitteeInput" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommitteeInput" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto)))))
Show (PublicKey crypto) ⇒ Show (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Show (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Show (PublicKey crypto) ⇒ Show (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

NoThunks (PublicKey crypto) ⇒ NoThunks (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

NoThunks (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

NoThunks (PublicKey crypto) ⇒ NoThunks (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data Cert crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data EligibilityWitness crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data Vote crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data VotingCommittee crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data VotingCommitteeError crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data VotingCommitteeInput crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommittee crypto EveryoneVotes) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommittee" 'PrefixI 'True) ((S1 ('MetaSel ('Just "extWFAStakeDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))) :*: S1 ('MetaSel ('Just "candidateSeats") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PoolId SeatIndex))) :*: (S1 ('MetaSel ('Just "numActiveVoters") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NumPoolsWithPositiveStake) :*: S1 ('MetaSel ('Just "totalActiveStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalStake))))
type Rep (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommitteeInput crypto EveryoneVotes) = D1 ('MetaData "VotingCommitteeInput" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommitteeInput" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto)))))

data family VotingCommittee crypto committee Source #

Structure storing the voting committee context

NOTE: This data family is defined outside of the CryptoSupportsVotingCommittee class so that it can be instantiated for the HFC block without having to provide an instance of the whole class (because for HFC, we dispatch to a concrete era first so none of the methods/types of the class would actually be used).

Instances

Instances details
CanHardFork xs ⇒ FromCBOR (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) Source #

Hand-written rather than deriving via SerialiseNS: that derivation needs All (Compose Serialise WrapPerasVotingCommittee) xs, which GHC cannot solve from the CanHardFork xs (i.e. All SingleEraBlock xs) context for an abstract xs. We instead build the per-era codecs with hcpure proxySingle, where each era's Serialise (WrapPerasVotingCommittee blk) is reachable from SingleEraBlock blk via its StateSupportsPerasEpochContext superclass, and feed them to encodeNS and decodeNS, producing the same wire format a SerialiseNS derivation would.

Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

Typeable blk ⇒ FromCBOR (VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme) Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

(Typeable crypto, FromCBOR (PublicKey crypto))FromCBOR (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

(Typeable crypto, FromCBOR (PublicKey crypto))FromCBOR (VotingCommittee crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

CanHardFork xs ⇒ ToCBOR (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) Source # 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

Typeable blk ⇒ ToCBOR (VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme) Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

(Typeable crypto, ToCBOR (PublicKey crypto))ToCBOR (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

(Typeable crypto, ToCBOR (PublicKey crypto))ToCBOR (VotingCommittee crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Methods

toCBORVotingCommittee crypto WFALSEncoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (VotingCommittee crypto WFALS) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [VotingCommittee crypto WFALS] → Size Source #

CanHardFork xs ⇒ Eq (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) Source # 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

Eq (VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme) Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

Eq (PublicKey crypto) ⇒ Eq (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Eq (PublicKey crypto) ⇒ Eq (VotingCommittee crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Methods

(==)VotingCommittee crypto WFALSVotingCommittee crypto WFALSBool #

(/=)VotingCommittee crypto WFALSVotingCommittee crypto WFALSBool #

Generic (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) Source # 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

Associated Types

type Rep (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

type Rep (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.HardFork.Combinator.AcrossEras" "ouroboros-consensus-4.0.0.0-inplace" 'True) (C1 ('MetaCons "OneEraPerasVotingCommittee" 'PrefixI 'True) (S1 ('MetaSel ('Just "getOneEraPerasVotingCommittee") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NS WrapPerasVotingCommittee xs))))
Generic (VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme) Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

Generic (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Associated Types

type Rep (VotingCommittee crypto EveryoneVotes) 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommittee crypto EveryoneVotes) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommittee" 'PrefixI 'True) ((S1 ('MetaSel ('Just "extWFAStakeDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))) :*: S1 ('MetaSel ('Just "candidateSeats") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PoolId SeatIndex))) :*: (S1 ('MetaSel ('Just "numActiveVoters") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NumPoolsWithPositiveStake) :*: S1 ('MetaSel ('Just "totalActiveStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalStake))))
Generic (VotingCommittee crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Associated Types

type Rep (VotingCommittee crypto WFALS) 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

type Rep (VotingCommittee crypto WFALS) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.Committee.WFALS" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "WFALSVotingCommittee" 'PrefixI 'True) ((S1 ('MetaSel ('Just "extWFAStakeDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))) :*: (S1 ('MetaSel ('Just "candidateSeats") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PoolId SeatIndex)) :*: S1 ('MetaSel ('Just "persistentCommitteeSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PersistentCommitteeSize))) :*: ((S1 ('MetaSel ('Just "nonPersistentCommitteeSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NonPersistentCommitteeSize) :*: S1 ('MetaSel ('Just "totalPersistentStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalPersistentStake)) :*: (S1 ('MetaSel ('Just "totalNonPersistentStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalNonPersistentStake) :*: S1 ('MetaSel ('Just "epochNonce") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce)))))

Methods

fromVotingCommittee crypto WFALSRep (VotingCommittee crypto WFALS) x #

toRep (VotingCommittee crypto WFALS) x → VotingCommittee crypto WFALS #

CanHardFork xs ⇒ Show (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) Source # 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

Show (VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme) Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

Show (PublicKey crypto) ⇒ Show (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Show (PublicKey crypto) ⇒ Show (VotingCommittee crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Methods

showsPrecIntVotingCommittee crypto WFALSShowS #

showVotingCommittee crypto WFALSString #

showList ∷ [VotingCommittee crypto WFALS] → ShowS #

CanHardFork xs ⇒ NoThunks (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) Source # 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

NoThunks (VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme) Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

NoThunks (PublicKey crypto) ⇒ NoThunks (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

NoThunks (PublicKey crypto) ⇒ NoThunks (VotingCommittee crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

data VotingCommittee crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data VotingCommittee crypto WFALS Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

newtype VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

newtype VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs) Source # 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

type Rep (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) Source # 
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.AcrossEras

type Rep (VotingCommittee (OneEraPerasCrypto xs) (OneEraPerasVotingCommitteeScheme xs)) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.HardFork.Combinator.AcrossEras" "ouroboros-consensus-4.0.0.0-inplace" 'True) (C1 ('MetaCons "OneEraPerasVotingCommittee" 'PrefixI 'True) (S1 ('MetaSel ('Just "getOneEraPerasVotingCommittee") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NS WrapPerasVotingCommittee xs))))
type Rep (VotingCommittee (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme) Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

type Rep (VotingCommittee crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommittee crypto EveryoneVotes) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommittee" 'PrefixI 'True) ((S1 ('MetaSel ('Just "extWFAStakeDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))) :*: S1 ('MetaSel ('Just "candidateSeats") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PoolId SeatIndex))) :*: (S1 ('MetaSel ('Just "numActiveVoters") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NumPoolsWithPositiveStake) :*: S1 ('MetaSel ('Just "totalActiveStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalStake))))
type Rep (VotingCommittee crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

type Rep (VotingCommittee crypto WFALS) = D1 ('MetaData "VotingCommittee" "Ouroboros.Consensus.Committee.WFALS" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "WFALSVotingCommittee" 'PrefixI 'True) ((S1 ('MetaSel ('Just "extWFAStakeDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))) :*: (S1 ('MetaSel ('Just "candidateSeats") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PoolId SeatIndex)) :*: S1 ('MetaSel ('Just "persistentCommitteeSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PersistentCommitteeSize))) :*: ((S1 ('MetaSel ('Just "nonPersistentCommitteeSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NonPersistentCommitteeSize) :*: S1 ('MetaSel ('Just "totalPersistentStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalPersistentStake)) :*: (S1 ('MetaSel ('Just "totalNonPersistentStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TotalNonPersistentStake) :*: S1 ('MetaSel ('Just "epochNonce") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce)))))

data family VotingCommitteeInput crypto committee Source #

Input information needed to construct a voting committee

Instances

Instances details
Eq (PublicKey crypto) ⇒ Eq (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Eq (PublicKey crypto) ⇒ Eq (VotingCommitteeInput crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Generic (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Associated Types

type Rep (VotingCommitteeInput crypto EveryoneVotes) 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommitteeInput crypto EveryoneVotes) = D1 ('MetaData "VotingCommitteeInput" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommitteeInput" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto)))))
Generic (VotingCommitteeInput crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Associated Types

type Rep (VotingCommitteeInput crypto WFALS) 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

type Rep (VotingCommitteeInput crypto WFALS) = D1 ('MetaData "VotingCommitteeInput" "Ouroboros.Consensus.Committee.WFALS" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "WFALSVotingCommitteeInput" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce) :*: (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TargetCommitteeSize) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))))))
Show (PublicKey crypto) ⇒ Show (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Show (PublicKey crypto) ⇒ Show (VotingCommitteeInput crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

NoThunks (PublicKey crypto) ⇒ NoThunks (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

NoThunks (PublicKey crypto) ⇒ NoThunks (VotingCommitteeInput crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

data VotingCommitteeInput crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data VotingCommitteeInput crypto WFALS Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

newtype VotingCommitteeInput (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

type Rep (VotingCommitteeInput crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommitteeInput crypto EveryoneVotes) = D1 ('MetaData "VotingCommitteeInput" "Ouroboros.Consensus.Committee.EveryoneVotes" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "EveryoneVotesVotingCommitteeInput" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto)))))
type Rep (VotingCommitteeInput crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

type Rep (VotingCommitteeInput crypto WFALS) = D1 ('MetaData "VotingCommitteeInput" "Ouroboros.Consensus.Committee.WFALS" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "WFALSVotingCommitteeInput" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce) :*: (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TargetCommitteeSize) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ExtWFAStakeDistr (PublicKey crypto))))))

data family VotingCommitteeError crypto committee Source #

Errors that can occur when operating on a voting committee

Instances

Instances details
Eq (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Eq (VotingCommitteeError crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Typeable crypto ⇒ Exception (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Typeable crypto ⇒ Exception (VotingCommitteeError crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Generic (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Generic (VotingCommitteeError crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

Associated Types

type Rep (VotingCommitteeError crypto WFALS) 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

type Rep (VotingCommitteeError crypto WFALS) = D1 ('MetaData "VotingCommitteeError" "Ouroboros.Consensus.Committee.WFALS" "ouroboros-consensus-4.0.0.0-inplace" 'False) (((C1 ('MetaCons "WFAError" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 WFAError)) :+: C1 ('MetaCons "MissingPoolId" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PoolId))) :+: (C1 ('MetaCons "NotAPersistentMember" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SeatIndex)) :+: C1 ('MetaCons "NotANonPersistentMember" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SeatIndex)))) :+: ((C1 ('MetaCons "ZeroNonPersistentSeats" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SeatIndex)) :+: C1 ('MetaCons "InvalidVoteSignature" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) :+: (C1 ('MetaCons "InvalidVoterEligibilityProof" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :+: (C1 ('MetaCons "InvalidCertSignature" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :+: C1 ('MetaCons "CryptoError" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))))
Show (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

Show (VotingCommitteeError crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

NoThunks (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

NoThunks (VotingCommitteeError crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

data VotingCommitteeError crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data VotingCommitteeError crypto WFALS Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

newtype VotingCommitteeError (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

type Rep (VotingCommitteeError crypto EveryoneVotes) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

type Rep (VotingCommitteeError crypto WFALS) Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

type Rep (VotingCommitteeError crypto WFALS) = D1 ('MetaData "VotingCommitteeError" "Ouroboros.Consensus.Committee.WFALS" "ouroboros-consensus-4.0.0.0-inplace" 'False) (((C1 ('MetaCons "WFAError" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 WFAError)) :+: C1 ('MetaCons "MissingPoolId" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PoolId))) :+: (C1 ('MetaCons "NotAPersistentMember" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SeatIndex)) :+: C1 ('MetaCons "NotANonPersistentMember" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SeatIndex)))) :+: ((C1 ('MetaCons "ZeroNonPersistentSeats" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SeatIndex)) :+: C1 ('MetaCons "InvalidVoteSignature" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) :+: (C1 ('MetaCons "InvalidVoterEligibilityProof" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :+: (C1 ('MetaCons "InvalidCertSignature" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :+: C1 ('MetaCons "CryptoError" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))))

data family EligibilityWitness crypto committee Source #

Witness attesting that a party is eligible to vote in a given election

NOTE: this is not necessarily the same as the cryptographic proof of eligibility used in concrete votes and certificates sent over the wire.

data family Vote crypto committee Source #

Abstract vote cast by a committee member in a given election

data family Cert crypto committee Source #

Abstract certificate attesting the winner of a given election

Instances

Instances details
data Cert crypto EveryoneVotes Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.EveryoneVotes

data Cert crypto WFALS Source # 
Instance details

Defined in Ouroboros.Consensus.Committee.WFALS

data Cert crypto WFALS = WFALSCert !(ElectionId crypto) !(VoteCandidate crypto) !(NE (Map SeatIndex (Maybe (VRFOutput crypto)))) !(AggregateVoteSignature crypto)
newtype Cert (VoidPerasCrypto blk) VoidPerasVotingCommitteeScheme Source # 
Instance details

Defined in Ouroboros.Consensus.Peras.Void

Metrics about the voting committee composition