cardano-ledger-conway-1.24.0.0: Cardano ledger with an updated on-chain governance system.
Safe HaskellNone
LanguageHaskell2010

Cardano.Ledger.Conway.Governance

Synopsis

Documentation

class (EraPParams era, Eq (GovState era), Show (GovState era), NoThunks (GovState era), NFData (GovState era), EncCBOR (GovState era), DecCBOR (GovState era), DecShareCBOR (GovState era), Share (GovState era) ~ (Interns (Credential 'Staking), Interns (KeyHash 'StakePool), Interns (Credential 'DRepRole), Interns (Credential 'HotCommitteeRole)), ToCBOR (GovState era), FromCBOR (GovState era), Default (GovState era), ToJSON (GovState era)) ⇒ EraGov era where Source #

Associated Types

type GovState era = (r ∷ Type) | r → era Source #

Methods

emptyGovState ∷ GovState era Source #

Construct empty governance state

curPParamsGovStateL ∷ Lens' (GovState era) (PParams era) Source #

Lens for accessing current protocol parameters

prevPParamsGovStateL ∷ Lens' (GovState era) (PParams era) Source #

Lens for accessing the previous protocol parameters

futurePParamsGovStateL ∷ Lens' (GovState era) (FuturePParams era) Source #

Lens for accessing the future protocol parameters.

This lens will produce DefinitePParamsUpdate whenever we are absolutely sure that the new PParams will be updated. Which means there will be no chance of a DefinitePParamsUpdate value until we are past the point of no return, which is 2 stability windows before the end of the epoch. This lens is mostly intended for ledger usage and nextEpochUpdatedPParams should be used instead whenever definite results are desired.

obligationGovState ∷ GovState era → Obligations Source #

Instances

Instances details
EraGov AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.PParams

Associated Types

type GovState AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.PParams

EraGov AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.PParams

Associated Types

type GovState AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.PParams

EraGov BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.PParams

Associated Types

type GovState BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.PParams

EraGov ConwayEra Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Associated Types

type GovState ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Governance

EraGov MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.PParams

Associated Types

type GovState MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.PParams

EraGov ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Governance

Associated Types

type GovState ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Governance

data EnactState era Source #

Constructors

EnactState 

Fields

Instances

Instances details
EraPParams era ⇒ ToJSON (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

EraPParams era ⇒ DecCBOR (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

decCBOR ∷ Decoder s (EnactState era) Source #

dropCBOR ∷ Proxy (EnactState era) → Decoder s () Source #

label ∷ Proxy (EnactState era) → Text Source #

EraPParams era ⇒ DecShareCBOR (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Associated Types

type Share (EnactState era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

EraPParams era ⇒ EncCBOR (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

encCBOR ∷ EnactState era → Encoding Source #

EraPParams era ⇒ ToKeyValuePairs (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ EnactState era → [kv] Source #

EraPParams era ⇒ Default (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

def ∷ EnactState era Source #

EraPParams era ⇒ NFData (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

rnf ∷ EnactState era → () #

Generic (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Associated Types

type Rep (EnactState era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (EnactState era) = D1 ('MetaData "EnactState" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "EnactState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "ensCommittee") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (Committee era))) :*: (S1 ('MetaSel ('Just "ensConstitution") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Constitution era)) :*: S1 ('MetaSel ('Just "ensCurPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era)))) :*: ((S1 ('MetaSel ('Just "ensPrevPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era)) :*: S1 ('MetaSel ('Just "ensTreasury") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Coin)) :*: (S1 ('MetaSel ('Just "ensWithdrawals") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'Staking) Coin)) :*: S1 ('MetaSel ('Just "ensPrevGovActionIds") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovRelation StrictMaybe))))))

Methods

from ∷ EnactState era → Rep (EnactState era) x #

to ∷ Rep (EnactState era) x → EnactState era #

(Era era, Show (PParams era)) ⇒ Show (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

showsPrec ∷ Int → EnactState era → ShowS #

show ∷ EnactState era → String #

showList ∷ [EnactState era] → ShowS #

(Era era, Eq (PParams era)) ⇒ Eq (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

(==) ∷ EnactState era → EnactState era → Bool #

(/=) ∷ EnactState era → EnactState era → Bool #

EraPParams era ⇒ NoThunks (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Share (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (EnactState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (EnactState era) = D1 ('MetaData "EnactState" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "EnactState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "ensCommittee") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (Committee era))) :*: (S1 ('MetaSel ('Just "ensConstitution") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Constitution era)) :*: S1 ('MetaSel ('Just "ensCurPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era)))) :*: ((S1 ('MetaSel ('Just "ensPrevPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era)) :*: S1 ('MetaSel ('Just "ensTreasury") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Coin)) :*: (S1 ('MetaSel ('Just "ensWithdrawals") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'Staking) Coin)) :*: S1 ('MetaSel ('Just "ensPrevGovActionIds") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovRelation StrictMaybe))))))

data RatifyState era Source #

RatifyState stores information about what will happen to the active governance actions at the next epoch boundary.

Constructors

RatifyState 

Fields

  • rsEnactState ∷ !(EnactState era)

    This is the currently active EnactState. It contains all the changes that were applied to it at the last epoch boundary by all the proposals that were enacted.

  • rsEnacted ∷ !(Seq (GovActionState era))

    Governance actions that are going to be enacted at the next epoch boundary.

  • rsExpired ∷ !(Set GovActionId)

    Governance actions that are going to be removed at the next epoch boundary, either due to expiring or because they would become invalid after another governance action gets enacted or expired before it

  • rsDelayed ∷ !Bool

    This flag is set to true if one of the proposals that was ratified at the last epoch boundary was a delaying action. This means that no other proposals will be ratified this epoch and each active proposal that has not become invalid will have its expiry date extended by one epoch.

    This flag is reset at each epoch boundary before the RATIFY rule gets called, but it might immediately be set to True again after the RATIFY rule has finished execution.

Instances

Instances details
EraPParams era ⇒ ToJSON (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

EraPParams era ⇒ DecCBOR (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

EraPParams era ⇒ DecShareCBOR (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

EraPParams era ⇒ EncCBOR (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

encCBOR ∷ RatifyState era → Encoding Source #

EraPParams era ⇒ ToKeyValuePairs (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ RatifyState era → [kv] Source #

EraPParams era ⇒ Default (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

def ∷ RatifyState era Source #

EraPParams era ⇒ NFData (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

rnf ∷ RatifyState era → () #

Generic (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Associated Types

type Rep (RatifyState era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (RatifyState era) = D1 ('MetaData "RatifyState" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "RatifyState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "rsEnactState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (EnactState era)) :*: S1 ('MetaSel ('Just "rsEnacted") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Seq (GovActionState era)))) :*: (S1 ('MetaSel ('Just "rsExpired") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set GovActionId)) :*: S1 ('MetaSel ('Just "rsDelayed") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool))))

Methods

from ∷ RatifyState era → Rep (RatifyState era) x #

to ∷ Rep (RatifyState era) x → RatifyState era #

EraPParams era ⇒ Show (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

showsPrec ∷ Int → RatifyState era → ShowS #

show ∷ RatifyState era → String #

showList ∷ [RatifyState era] → ShowS #

EraPParams era ⇒ Eq (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

(==) ∷ RatifyState era → RatifyState era → Bool #

(/=) ∷ RatifyState era → RatifyState era → Bool #

EraPParams era ⇒ NoThunks (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

(EraPParams era, NFData (InstantStake era), NFData (Accounts era)) ⇒ NFData (DRepPulser era Identity (RatifyState era)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

rnf ∷ DRepPulser era Identity (RatifyState era) → () #

(EraPParams era, EraStake era, ConwayEraAccounts era) ⇒ Eq (DRepPulser era Identity (RatifyState era)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

(EraPParams era, NoThunks (InstantStake era), NoThunks (Accounts era)) ⇒ NoThunks (DRepPulser era Identity (RatifyState era)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Share (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (RatifyState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (RatifyState era) = D1 ('MetaData "RatifyState" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "RatifyState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "rsEnactState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (EnactState era)) :*: S1 ('MetaSel ('Just "rsEnacted") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Seq (GovActionState era)))) :*: (S1 ('MetaSel ('Just "rsExpired") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set GovActionId)) :*: S1 ('MetaSel ('Just "rsDelayed") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool))))

data RatifyEnv era Source #

Instances

Instances details
CanGetInstantStake RatifyEnv Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

CanSetInstantStake RatifyEnv Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

(Era era, DecCBOR (InstantStake era), DecCBOR (Accounts era)) ⇒ DecCBOR (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

decCBOR ∷ Decoder s (RatifyEnv era) Source #

dropCBOR ∷ Proxy (RatifyEnv era) → Decoder s () Source #

label ∷ Proxy (RatifyEnv era) → Text Source #

(Era era, EncCBOR (InstantStake era), EncCBOR (Accounts era)) ⇒ EncCBOR (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

encCBOR ∷ RatifyEnv era → Encoding Source #

(Default (InstantStake era), Default (Accounts era)) ⇒ Default (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

def ∷ RatifyEnv era Source #

(Era era, NFData (InstantStake era), NFData (Accounts era)) ⇒ NFData (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

rnf ∷ RatifyEnv era → () #

Generic (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Associated Types

type Rep (RatifyEnv era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

from ∷ RatifyEnv era → Rep (RatifyEnv era) x #

to ∷ Rep (RatifyEnv era) x → RatifyEnv era #

(Show (InstantStake era), Show (Accounts era)) ⇒ Show (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

showsPrec ∷ Int → RatifyEnv era → ShowS #

show ∷ RatifyEnv era → String #

showList ∷ [RatifyEnv era] → ShowS #

(Eq (InstantStake era), Eq (Accounts era)) ⇒ Eq (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

(==) ∷ RatifyEnv era → RatifyEnv era → Bool #

(/=) ∷ RatifyEnv era → RatifyEnv era → Bool #

(Typeable era, NoThunks (InstantStake era), NoThunks (Accounts era)) ⇒ NoThunks (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (RatifyEnv era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

newtype RatifySignal era Source #

Constructors

RatifySignal 

Instances

Instances details
EraPParams era ⇒ DecCBOR (RatifySignal era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

EraPParams era ⇒ EncCBOR (RatifySignal era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

encCBOR ∷ RatifySignal era → Encoding Source #

EraPParams era ⇒ NFData (RatifySignal era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

rnf ∷ RatifySignal era → () #

Generic (RatifySignal era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Associated Types

type Rep (RatifySignal era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (RatifySignal era) = D1 ('MetaData "RatifySignal" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "RatifySignal" 'PrefixI 'True) (S1 ('MetaSel ('Just "unRatifySignal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (StrictSeq (GovActionState era)))))

Methods

from ∷ RatifySignal era → Rep (RatifySignal era) x #

to ∷ Rep (RatifySignal era) x → RatifySignal era #

EraPParams era ⇒ Show (RatifySignal era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

showsPrec ∷ Int → RatifySignal era → ShowS #

show ∷ RatifySignal era → String #

showList ∷ [RatifySignal era] → ShowS #

EraPParams era ⇒ Eq (RatifySignal era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

(==) ∷ RatifySignal era → RatifySignal era → Bool #

(/=) ∷ RatifySignal era → RatifySignal era → Bool #

type Rep (RatifySignal era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep (RatifySignal era) = D1 ('MetaData "RatifySignal" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "RatifySignal" 'PrefixI 'True) (S1 ('MetaSel ('Just "unRatifySignal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (StrictSeq (GovActionState era)))))

data ConwayGovState era Source #

Conway governance state

Constructors

ConwayGovState 

Fields

Instances

Instances details
(ConwayEraAccounts era, EraPParams era, EraStake era) ⇒ ToJSON (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

EraPParams era ⇒ FromCBOR (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

(ConwayEraAccounts era, EraPParams era, EraStake era) ⇒ ToCBOR (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Methods

toCBOR ∷ ConwayGovState era → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (ConwayGovState era) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [ConwayGovState era] → Size Source #

EraPParams era ⇒ DecCBOR (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

EraPParams era ⇒ DecShareCBOR (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

(ConwayEraAccounts era, EraPParams era, EraStake era) ⇒ EncCBOR (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

(ConwayEraAccounts era, EraPParams era, EraStake era) ⇒ ToKeyValuePairs (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ ConwayGovState era → [kv] Source #

EraPParams era ⇒ Default (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Methods

def ∷ ConwayGovState era Source #

(EraPParams era, NFData (InstantStake era), NFData (Accounts era)) ⇒ NFData (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Methods

rnf ∷ ConwayGovState era → () #

Generic (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Associated Types

type Rep (ConwayGovState era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance

type Rep (ConwayGovState era) = D1 ('MetaData "ConwayGovState" "Cardano.Ledger.Conway.Governance" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "ConwayGovState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "cgsProposals") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Proposals era)) :*: (S1 ('MetaSel ('Just "cgsCommittee") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (Committee era))) :*: S1 ('MetaSel ('Just "cgsConstitution") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Constitution era)))) :*: ((S1 ('MetaSel ('Just "cgsCurPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era)) :*: S1 ('MetaSel ('Just "cgsPrevPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era))) :*: (S1 ('MetaSel ('Just "cgsFuturePParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (FuturePParams era)) :*: S1 ('MetaSel ('Just "cgsDRepPulsingState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (DRepPulsingState era))))))

Methods

from ∷ ConwayGovState era → Rep (ConwayGovState era) x #

to ∷ Rep (ConwayGovState era) x → ConwayGovState era #

(EraPParams era, ConwayEraAccounts era, EraStake era) ⇒ Show (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Methods

showsPrec ∷ Int → ConwayGovState era → ShowS #

show ∷ ConwayGovState era → String #

showList ∷ [ConwayGovState era] → ShowS #

(ConwayEraAccounts era, EraPParams era, EraStake era) ⇒ Eq (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

Methods

(==) ∷ ConwayGovState era → ConwayGovState era → Bool #

(/=) ∷ ConwayGovState era → ConwayGovState era → Bool #

(EraPParams era, NoThunks (InstantStake era), NoThunks (Accounts era)) ⇒ NoThunks (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

type Share (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

type Rep (ConwayGovState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance

type Rep (ConwayGovState era) = D1 ('MetaData "ConwayGovState" "Cardano.Ledger.Conway.Governance" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "ConwayGovState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "cgsProposals") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Proposals era)) :*: (S1 ('MetaSel ('Just "cgsCommittee") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (Committee era))) :*: S1 ('MetaSel ('Just "cgsConstitution") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Constitution era)))) :*: ((S1 ('MetaSel ('Just "cgsCurPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era)) :*: S1 ('MetaSel ('Just "cgsPrevPParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParams era))) :*: (S1 ('MetaSel ('Just "cgsFuturePParams") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (FuturePParams era)) :*: S1 ('MetaSel ('Just "cgsDRepPulsingState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (DRepPulsingState era))))))

predictFuturePParams ∷ (ConwayEraAccounts era, EraStake era) ⇒ ConwayGovState era → ConwayGovState era Source #

This function updates the thunk, which will contain new PParams once evaluated or Nothing when there was no update. At the same time if we already know the future of PParams, then it will act as an identity function.

data Committee era Source #

Constructors

Committee 

Fields

Instances

Instances details
Era era ⇒ FromJSON (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSON (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ DecCBOR (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

decCBOR ∷ Decoder s (Committee era) Source #

dropCBOR ∷ Proxy (Committee era) → Decoder s () Source #

label ∷ Proxy (Committee era) → Text Source #

Era era ⇒ EncCBOR (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

encCBOR ∷ Committee era → Encoding Source #

ToKeyValuePairs (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ Committee era → [kv] Source #

Default (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

def ∷ Committee era Source #

Era era ⇒ NFData (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ Committee era → () #

Generic (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (Committee era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (Committee era) = D1 ('MetaData "Committee" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "Committee" 'PrefixI 'True) (S1 ('MetaSel ('Just "committeeMembers") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'ColdCommitteeRole) EpochNo)) :*: S1 ('MetaSel ('Just "committeeThreshold") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitInterval)))

Methods

from ∷ Committee era → Rep (Committee era) x #

to ∷ Rep (Committee era) x → Committee era #

Show (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → Committee era → ShowS #

show ∷ Committee era → String #

showList ∷ [Committee era] → ShowS #

Eq (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ Committee era → Committee era → Bool #

(/=) ∷ Committee era → Committee era → Bool #

Era era ⇒ NoThunks (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (Committee era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (Committee era) = D1 ('MetaData "Committee" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "Committee" 'PrefixI 'True) (S1 ('MetaSel ('Just "committeeMembers") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'ColdCommitteeRole) EpochNo)) :*: S1 ('MetaSel ('Just "committeeThreshold") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitInterval)))

committeeThresholdL ∷ ∀ era f. Functor f ⇒ (UnitInterval → f UnitInterval) → Committee era → f (Committee era) Source #

authorizedElectedHotCommitteeCredentials ∷ StrictMaybe (Committee era) → CommitteeState era → Set (Credential 'HotCommitteeRole) Source #

Extract all unique hot credential authorizations for the current committee that is elected.

data GovAction era Source #

Note that the previous governance action id is only optional for the very first governance action of the same purpose.

Constructors

ParameterChange 

Fields

HardForkInitiation 

Fields

TreasuryWithdrawals 

Fields

NoConfidence 

Fields

UpdateCommittee 

Fields

NewConstitution 

Fields

InfoAction 

Instances

Instances details
EraPParams era ⇒ FromJSON (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToJSON (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ DecCBOR (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

decCBOR ∷ Decoder s (GovAction era) Source #

dropCBOR ∷ Proxy (GovAction era) → Decoder s () Source #

label ∷ Proxy (GovAction era) → Text Source #

EraPParams era ⇒ EncCBOR (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

encCBOR ∷ GovAction era → Encoding Source #

EraPParams era ⇒ NFData (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ GovAction era → () #

Generic (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (GovAction era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovAction era) = D1 ('MetaData "GovAction" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) ((C1 ('MetaCons "ParameterChange" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'PParamUpdatePurpose))) :*: (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParamsUpdate era)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ScriptHash)))) :+: (C1 ('MetaCons "HardForkInitiation" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'HardForkPurpose))) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ProtVer)) :+: C1 ('MetaCons "TreasuryWithdrawals" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map AccountAddress Coin)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ScriptHash))))) :+: ((C1 ('MetaCons "NoConfidence" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'CommitteePurpose)))) :+: C1 ('MetaCons "UpdateCommittee" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'CommitteePurpose))) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set (Credential 'ColdCommitteeRole)))) :*: (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'ColdCommitteeRole) EpochNo)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitInterval)))) :+: (C1 ('MetaCons "NewConstitution" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'ConstitutionPurpose))) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Constitution era))) :+: C1 ('MetaCons "InfoAction" 'PrefixI 'False) (U1 ∷ Type → Type))))

Methods

from ∷ GovAction era → Rep (GovAction era) x #

to ∷ Rep (GovAction era) x → GovAction era #

EraPParams era ⇒ Show (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → GovAction era → ShowS #

show ∷ GovAction era → String #

showList ∷ [GovAction era] → ShowS #

EraPParams era ⇒ Eq (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ GovAction era → GovAction era → Bool #

(/=) ∷ GovAction era → GovAction era → Bool #

EraPParams era ⇒ Ord (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

compare ∷ GovAction era → GovAction era → Ordering #

(<) ∷ GovAction era → GovAction era → Bool #

(<=) ∷ GovAction era → GovAction era → Bool #

(>) ∷ GovAction era → GovAction era → Bool #

(>=) ∷ GovAction era → GovAction era → Bool #

max ∷ GovAction era → GovAction era → GovAction era #

min ∷ GovAction era → GovAction era → GovAction era #

EraPParams era ⇒ NoThunks (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovAction era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovAction era) = D1 ('MetaData "GovAction" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) ((C1 ('MetaCons "ParameterChange" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'PParamUpdatePurpose))) :*: (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PParamsUpdate era)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ScriptHash)))) :+: (C1 ('MetaCons "HardForkInitiation" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'HardForkPurpose))) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ProtVer)) :+: C1 ('MetaCons "TreasuryWithdrawals" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map AccountAddress Coin)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ScriptHash))))) :+: ((C1 ('MetaCons "NoConfidence" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'CommitteePurpose)))) :+: C1 ('MetaCons "UpdateCommittee" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'CommitteePurpose))) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set (Credential 'ColdCommitteeRole)))) :*: (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'ColdCommitteeRole) EpochNo)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitInterval)))) :+: (C1 ('MetaCons "NewConstitution" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe (GovPurposeId 'ConstitutionPurpose))) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Constitution era))) :+: C1 ('MetaCons "InfoAction" 'PrefixI 'False) (U1 ∷ Type → Type))))

data GovActionState era Source #

Instances

Instances details
HasOKey GovActionId (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToJSON (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ DecCBOR (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ DecShareCBOR (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ EncCBOR (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToKeyValuePairs (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ GovActionState era → [kv] Source #

EraPParams era ⇒ NFData (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ GovActionState era → () #

Generic (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (GovActionState era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovActionState era) = D1 ('MetaData "GovActionState" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "GovActionState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "gasId") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 GovActionId) :*: (S1 ('MetaSel ('Just "gasCommitteeVotes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'HotCommitteeRole) Vote)) :*: S1 ('MetaSel ('Just "gasDRepVotes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'DRepRole) Vote)))) :*: ((S1 ('MetaSel ('Just "gasStakePoolVotes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'StakePool) Vote)) :*: S1 ('MetaSel ('Just "gasProposalProcedure") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ProposalProcedure era))) :*: (S1 ('MetaSel ('Just "gasProposedIn") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochNo) :*: S1 ('MetaSel ('Just "gasExpiresAfter") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochNo)))))

Methods

from ∷ GovActionState era → Rep (GovActionState era) x #

to ∷ Rep (GovActionState era) x → GovActionState era #

EraPParams era ⇒ Show (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → GovActionState era → ShowS #

show ∷ GovActionState era → String #

showList ∷ [GovActionState era] → ShowS #

EraPParams era ⇒ Eq (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ GovActionState era → GovActionState era → Bool #

(/=) ∷ GovActionState era → GovActionState era → Bool #

EraPParams era ⇒ Ord (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ NoThunks (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Share (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovActionState era) = D1 ('MetaData "GovActionState" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "GovActionState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "gasId") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 GovActionId) :*: (S1 ('MetaSel ('Just "gasCommitteeVotes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'HotCommitteeRole) Vote)) :*: S1 ('MetaSel ('Just "gasDRepVotes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'DRepRole) Vote)))) :*: ((S1 ('MetaSel ('Just "gasStakePoolVotes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'StakePool) Vote)) :*: S1 ('MetaSel ('Just "gasProposalProcedure") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ProposalProcedure era))) :*: (S1 ('MetaSel ('Just "gasProposedIn") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochNo) :*: S1 ('MetaSel ('Just "gasExpiresAfter") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochNo)))))

newtype GovActionIx Source #

Constructors

GovActionIx 

Fields

Instances

Instances details
FromJSON GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSON GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

DecCBOR GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EncCBOR GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

NFData GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ GovActionIx → () #

Generic GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep GovActionIx 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionIx = D1 ('MetaData "GovActionIx" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "GovActionIx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unGovActionIx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))
Show GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Eq GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Ord GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

NoThunks GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionIx Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionIx = D1 ('MetaData "GovActionIx" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "GovActionIx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unGovActionIx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))

data GovActionId Source #

Constructors

GovActionId 

Instances

Instances details
FromJSON GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

FromJSONKey GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSON GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSONKey GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

DecCBOR GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EncCBOR GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToKeyValuePairs GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ GovActionId → [kv] Source #

NFData GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ GovActionId → () #

Generic GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep GovActionId 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionId = D1 ('MetaData "GovActionId" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "GovActionId" 'PrefixI 'True) (S1 ('MetaSel ('Just "gaidTxId") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TxId) :*: S1 ('MetaSel ('Just "gaidGovActionIx") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 GovActionIx)))
Show GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Eq GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Ord GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

NoThunks GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

HasOKey GovActionId (GovActionState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionId Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionId = D1 ('MetaData "GovActionId" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "GovActionId" 'PrefixI 'True) (S1 ('MetaSel ('Just "gaidTxId") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TxId) :*: S1 ('MetaSel ('Just "gaidGovActionIx") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 GovActionIx)))

data GovActionPurpose Source #

Instances

Instances details
Generic GovActionPurpose Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep GovActionPurpose 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionPurpose = D1 ('MetaData "GovActionPurpose" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) ((C1 ('MetaCons "PParamUpdatePurpose" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "HardForkPurpose" 'PrefixI 'False) (U1 ∷ Type → Type)) :+: (C1 ('MetaCons "CommitteePurpose" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "ConstitutionPurpose" 'PrefixI 'False) (U1 ∷ Type → Type)))
Show GovActionPurpose Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Eq GovActionPurpose Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionPurpose Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep GovActionPurpose = D1 ('MetaData "GovActionPurpose" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) ((C1 ('MetaCons "PParamUpdatePurpose" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "HardForkPurpose" 'PrefixI 'False) (U1 ∷ Type → Type)) :+: (C1 ('MetaCons "CommitteePurpose" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "ConstitutionPurpose" 'PrefixI 'False) (U1 ∷ Type → Type)))

data DRepPulsingState era Source #

Instances

Instances details
EraPParams era ⇒ DecCBOR (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

EraPParams era ⇒ DecShareCBOR (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

(ConwayEraAccounts era, EraStake era, EraPParams era) ⇒ EncCBOR (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

(EraPParams era, NFData (InstantStake era), NFData (Accounts era)) ⇒ NFData (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

rnf ∷ DRepPulsingState era → () #

Generic (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Associated Types

type Rep (DRepPulsingState era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Rep (DRepPulsingState era) = D1 ('MetaData "DRepPulsingState" "Cardano.Ledger.Conway.Governance.DRepPulser" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "DRPulsing" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (DRepPulser era Identity (RatifyState era)))) :+: C1 ('MetaCons "DRComplete" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PulsingSnapshot era)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (RatifyState era))))

Methods

from ∷ DRepPulsingState era → Rep (DRepPulsingState era) x #

to ∷ Rep (DRepPulsingState era) x → DRepPulsingState era #

(ConwayEraAccounts era, EraStake era, EraPParams era) ⇒ Show (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

(ConwayEraAccounts era, EraStake era, EraPParams era) ⇒ Eq (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

(==) ∷ DRepPulsingState era → DRepPulsingState era → Bool #

(/=) ∷ DRepPulsingState era → DRepPulsingState era → Bool #

(EraPParams era, NoThunks (InstantStake era), NoThunks (Accounts era)) ⇒ NoThunks (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Share (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Rep (DRepPulsingState era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Rep (DRepPulsingState era) = D1 ('MetaData "DRepPulsingState" "Cardano.Ledger.Conway.Governance.DRepPulser" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "DRPulsing" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (DRepPulser era Identity (RatifyState era)))) :+: C1 ('MetaCons "DRComplete" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (PulsingSnapshot era)) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (RatifyState era))))

data DRepPulser era (m ∷ Type → Type) ans where Source #

The type of a Pulser which uses computeDRepDistr as its underlying function. Note that we use two type equality (~) constraints to fix both the monad m and the ans type, to the context where we will use the type as a Pulser. The type DRepPulser must have m and ans as its last two parameters so we can make a Pulsable instance. We will always use this instantiation (DRepPulser era Identity (RatifyState era))

Constructors

DRepPulser 

Fields

Instances

Instances details
(EraStake era, ConwayEraAccounts era) ⇒ Pulsable (DRepPulser era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

done ∷ ∀ (m ∷ Type → Type) ans. DRepPulser era m ans → Bool Source #

current ∷ ∀ (m ∷ Type → Type) ans. DRepPulser era m ans → ans Source #

pulseM ∷ Monad m ⇒ DRepPulser era m ans → m (DRepPulser era m ans) Source #

completeM ∷ Monad m ⇒ DRepPulser era m ans → m ans Source #

(EraPParams era, NFData (InstantStake era), NFData (Accounts era)) ⇒ NFData (DRepPulser era Identity (RatifyState era)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

rnf ∷ DRepPulser era Identity (RatifyState era) → () #

(EraPParams era, Show (InstantStake era), Show (Accounts era), Show ans) ⇒ Show (DRepPulser era m ans) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

showsPrec ∷ Int → DRepPulser era m ans → ShowS #

show ∷ DRepPulser era m ans → String #

showList ∷ [DRepPulser era m ans] → ShowS #

(EraPParams era, EraStake era, ConwayEraAccounts era) ⇒ Eq (DRepPulser era Identity (RatifyState era)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

(EraPParams era, NoThunks (InstantStake era), NoThunks (Accounts era)) ⇒ NoThunks (DRepPulser era Identity (RatifyState era)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

data Voter Source #

Instances

Instances details
FromJSON Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

FromJSONKey Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSON Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSONKey Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

DecCBOR Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EncCBOR Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

encCBOR ∷ Voter → Encoding Source #

NFData Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ Voter → () #

Generic Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep Voter 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep Voter = D1 ('MetaData "Voter" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "CommitteeVoter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Credential 'HotCommitteeRole))) :+: (C1 ('MetaCons "DRepVoter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Credential 'DRepRole))) :+: C1 ('MetaCons "StakePoolVoter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (KeyHash 'StakePool)))))

Methods

from ∷ Voter → Rep Voter x #

to ∷ Rep Voter x → Voter #

Show Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → Voter → ShowS #

show ∷ Voter → String #

showList ∷ [Voter] → ShowS #

Eq Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ Voter → Voter → Bool #

(/=) ∷ Voter → Voter → Bool #

Ord Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

compare ∷ Voter → Voter → Ordering #

(<) ∷ Voter → Voter → Bool #

(<=) ∷ Voter → Voter → Bool #

(>) ∷ Voter → Voter → Bool #

(>=) ∷ Voter → Voter → Bool #

max ∷ Voter → Voter → Voter #

min ∷ Voter → Voter → Voter #

NoThunks Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Indexable Voter (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep Voter Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep Voter = D1 ('MetaData "Voter" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "CommitteeVoter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Credential 'HotCommitteeRole))) :+: (C1 ('MetaCons "DRepVoter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Credential 'DRepRole))) :+: C1 ('MetaCons "StakePoolVoter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (KeyHash 'StakePool)))))

data Vote Source #

Constructors

VoteNo 
VoteYes 
Abstain 

Instances

Instances details
FromJSON Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSON Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

DecCBOR Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EncCBOR Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

encCBOR ∷ Vote → Encoding Source #

NFData Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ Vote → () #

Bounded Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

minBound ∷ Vote #

maxBound ∷ Vote #

Enum Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

succ ∷ Vote → Vote #

pred ∷ Vote → Vote #

toEnum ∷ Int → Vote #

fromEnum ∷ Vote → Int #

enumFrom ∷ Vote → [Vote] #

enumFromThen ∷ Vote → Vote → [Vote] #

enumFromTo ∷ Vote → Vote → [Vote] #

enumFromThenTo ∷ Vote → Vote → Vote → [Vote] #

Generic Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep Vote 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep Vote = D1 ('MetaData "Vote" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "VoteNo" 'PrefixI 'False) (U1 ∷ Type → Type) :+: (C1 ('MetaCons "VoteYes" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "Abstain" 'PrefixI 'False) (U1 ∷ Type → Type)))

Methods

from ∷ Vote → Rep Vote x #

to ∷ Rep Vote x → Vote #

Show Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → Vote → ShowS #

show ∷ Vote → String #

showList ∷ [Vote] → ShowS #

Eq Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ Vote → Vote → Bool #

(/=) ∷ Vote → Vote → Bool #

Ord Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

compare ∷ Vote → Vote → Ordering #

(<) ∷ Vote → Vote → Bool #

(<=) ∷ Vote → Vote → Bool #

(>) ∷ Vote → Vote → Bool #

(>=) ∷ Vote → Vote → Bool #

max ∷ Vote → Vote → Vote #

min ∷ Vote → Vote → Vote #

NoThunks Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep Vote Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep Vote = D1 ('MetaData "Vote" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "VoteNo" 'PrefixI 'False) (U1 ∷ Type → Type) :+: (C1 ('MetaCons "VoteYes" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "Abstain" 'PrefixI 'False) (U1 ∷ Type → Type)))

data VotingProcedure era Source #

Constructors

VotingProcedure 

Instances

Instances details
EraPParams era ⇒ FromJSON (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToJSON (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ DecCBOR (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ EncCBOR (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToKeyValuePairs (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ VotingProcedure era → [kv] Source #

NFData (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ VotingProcedure era → () #

Generic (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (VotingProcedure era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (VotingProcedure era) = D1 ('MetaData "VotingProcedure" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "VotingProcedure" 'PrefixI 'True) (S1 ('MetaSel ('Just "vProcVote") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Vote) :*: S1 ('MetaSel ('Just "vProcAnchor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe Anchor))))

Methods

from ∷ VotingProcedure era → Rep (VotingProcedure era) x #

to ∷ Rep (VotingProcedure era) x → VotingProcedure era #

Show (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → VotingProcedure era → ShowS #

show ∷ VotingProcedure era → String #

showList ∷ [VotingProcedure era] → ShowS #

Eq (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ VotingProcedure era → VotingProcedure era → Bool #

(/=) ∷ VotingProcedure era → VotingProcedure era → Bool #

Ord (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

NoThunks (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (VotingProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (VotingProcedure era) = D1 ('MetaData "VotingProcedure" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "VotingProcedure" 'PrefixI 'True) (S1 ('MetaSel ('Just "vProcVote") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Vote) :*: S1 ('MetaSel ('Just "vProcAnchor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe Anchor))))

newtype VotingProcedures era Source #

Instances

Instances details
Indexable Voter (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ FromJSON (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToJSON (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ DecCBOR (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ EncCBOR (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ NFData (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ VotingProcedures era → () #

Monoid (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Semigroup (VotingProcedures era) Source #

Replace earlier votes with latter ones, i.e. use a right biased union on votes for the same GovActionId

Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Generic (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (VotingProcedures era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (VotingProcedures era) = D1 ('MetaData "VotingProcedures" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "VotingProcedures" 'PrefixI 'True) (S1 ('MetaSel ('Just "unVotingProcedures") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Voter (Map GovActionId (VotingProcedure era))))))

Methods

from ∷ VotingProcedures era → Rep (VotingProcedures era) x #

to ∷ Rep (VotingProcedures era) x → VotingProcedures era #

Show (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Eq (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ VotingProcedures era → VotingProcedures era → Bool #

(/=) ∷ VotingProcedures era → VotingProcedures era → Bool #

Ord (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

NoThunks (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (VotingProcedures era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (VotingProcedures era) = D1 ('MetaData "VotingProcedures" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "VotingProcedures" 'PrefixI 'True) (S1 ('MetaSel ('Just "unVotingProcedures") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Voter (Map GovActionId (VotingProcedure era))))))

foldlVotingProcedures Source #

Arguments

∷ (c → Voter → GovActionId → VotingProcedure era → c)

Accumulating function

→ c

Initial accumulator

→ VotingProcedures era

Procedures to fold over

→ c 

foldrVotingProcedures Source #

Arguments

∷ (Voter → GovActionId → VotingProcedure era → c → c)

Accumulating function

→ c

Initial accumulator

→ VotingProcedures era

Procedures to fold over

→ c 

data ProposalProcedure era Source #

Instances

Instances details
EraPParams era ⇒ FromJSON (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToJSON (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ DecCBOR (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ EncCBOR (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ ToKeyValuePairs (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ ProposalProcedure era → [kv] Source #

EraPParams era ⇒ NFData (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ ProposalProcedure era → () #

Generic (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (ProposalProcedure era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (ProposalProcedure era) = D1 ('MetaData "ProposalProcedure" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "ProposalProcedure" 'PrefixI 'True) ((S1 ('MetaSel ('Just "pProcDeposit") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Coin) :*: S1 ('MetaSel ('Just "pProcReturnAddr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 AccountAddress)) :*: (S1 ('MetaSel ('Just "pProcGovAction") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovAction era)) :*: S1 ('MetaSel ('Just "pProcAnchor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Anchor))))

Methods

from ∷ ProposalProcedure era → Rep (ProposalProcedure era) x #

to ∷ Rep (ProposalProcedure era) x → ProposalProcedure era #

EraPParams era ⇒ Show (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ Eq (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ Ord (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EraPParams era ⇒ NoThunks (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (ProposalProcedure era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (ProposalProcedure era) = D1 ('MetaData "ProposalProcedure" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "ProposalProcedure" 'PrefixI 'True) ((S1 ('MetaSel ('Just "pProcDeposit") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Coin) :*: S1 ('MetaSel ('Just "pProcReturnAddr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 AccountAddress)) :*: (S1 ('MetaSel ('Just "pProcGovAction") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovAction era)) :*: S1 ('MetaSel ('Just "pProcAnchor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Anchor))))

data Anchor Source #

Constructors

Anchor 

Instances

Instances details
FromJSON Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

ToJSON Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

DecCBOR Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

EncCBOR Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

encCBOR ∷ Anchor → Encoding Source #

ToKeyValuePairs Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ Anchor → [kv] Source #

Default Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

def ∷ Anchor Source #

NFData Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

rnf ∷ Anchor → () #

Generic Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Associated Types

type Rep Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

type Rep Anchor = D1 ('MetaData "Anchor" "Cardano.Ledger.BaseTypes" "cardano-ledger-core-1.22.0.0-inplace" 'False) (C1 ('MetaCons "Anchor" 'PrefixI 'True) (S1 ('MetaSel ('Just "anchorUrl") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Url) :*: S1 ('MetaSel ('Just "anchorDataHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (SafeHash AnchorData))))

Methods

from ∷ Anchor → Rep Anchor x #

to ∷ Rep Anchor x → Anchor #

Show Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

showsPrec ∷ Int → Anchor → ShowS #

show ∷ Anchor → String #

showList ∷ [Anchor] → ShowS #

Eq Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

(==) ∷ Anchor → Anchor → Bool #

(/=) ∷ Anchor → Anchor → Bool #

Ord Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

Methods

compare ∷ Anchor → Anchor → Ordering #

(<) ∷ Anchor → Anchor → Bool #

(<=) ∷ Anchor → Anchor → Bool #

(>) ∷ Anchor → Anchor → Bool #

(>=) ∷ Anchor → Anchor → Bool #

max ∷ Anchor → Anchor → Anchor #

min ∷ Anchor → Anchor → Anchor #

NoThunks Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

type Rep Anchor 
Instance details

Defined in Cardano.Ledger.BaseTypes

type Rep Anchor = D1 ('MetaData "Anchor" "Cardano.Ledger.BaseTypes" "cardano-ledger-core-1.22.0.0-inplace" 'False) (C1 ('MetaCons "Anchor" 'PrefixI 'True) (S1 ('MetaSel ('Just "anchorUrl") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Url) :*: S1 ('MetaSel ('Just "anchorDataHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (SafeHash AnchorData))))

indexedGovProps ∷ Seq (ProposalProcedure era) → Seq (GovActionIx, ProposalProcedure era) Source #

Attaches indices to a sequence of proposal procedures. The indices grow from left to right.

data Constitution era Source #

Instances

Instances details
Era era ⇒ FromJSON (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSON (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ FromCBOR (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ ToCBOR (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toCBOR ∷ Constitution era → Encoding Source #

encodedSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy (Constitution era) → Size Source #

encodedListSizeExpr ∷ (∀ t. ToCBOR t ⇒ Proxy t → Size) → Proxy [Constitution era] → Size Source #

Era era ⇒ DecCBOR (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Era era ⇒ EncCBOR (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

encCBOR ∷ Constitution era → Encoding Source #

ToKeyValuePairs (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ Constitution era → [kv] Source #

Era era ⇒ Default (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

def ∷ Constitution era Source #

Era era ⇒ NFData (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ Constitution era → () #

Generic (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (Constitution era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (Constitution era) = D1 ('MetaData "Constitution" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "Constitution" 'PrefixI 'True) (S1 ('MetaSel ('Just "constitutionAnchor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Anchor) :*: S1 ('MetaSel ('Just "constitutionGuardrailsScriptHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ScriptHash))))

Methods

from ∷ Constitution era → Rep (Constitution era) x #

to ∷ Rep (Constitution era) x → Constitution era #

Show (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → Constitution era → ShowS #

show ∷ Constitution era → String #

showList ∷ [Constitution era] → ShowS #

Eq (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ Constitution era → Constitution era → Bool #

(/=) ∷ Constitution era → Constitution era → Bool #

Ord (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

compare ∷ Constitution era → Constitution era → Ordering #

(<) ∷ Constitution era → Constitution era → Bool #

(<=) ∷ Constitution era → Constitution era → Bool #

(>) ∷ Constitution era → Constitution era → Bool #

(>=) ∷ Constitution era → Constitution era → Bool #

max ∷ Constitution era → Constitution era → Constitution era #

min ∷ Constitution era → Constitution era → Constitution era #

Era era ⇒ NoThunks (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (Constitution era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (Constitution era) = D1 ('MetaData "Constitution" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "Constitution" 'PrefixI 'True) (S1 ('MetaSel ('Just "constitutionAnchor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Anchor) :*: S1 ('MetaSel ('Just "constitutionGuardrailsScriptHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe ScriptHash))))

data Proposals era Source #

Self-contained representation of all 4 proposals trees. This forest is made up of only action-ids for nodes - full GovActionStates are stored only once in the OMap. All functions in this module prefixed with the string proposals- operate on this data-type keeping it consistent.

NOTE: The correct way to think about this data-structure is similar to 4 of the following, one for each GovActionPurpose

  data Tree a = Node (StrictMaybe a) [Tree a]

but because this does not allow us to look-up a node's edges in predictable time, we use a map from nodes to their edges (parent and children) to capture the graph (PGraph). We also need to always know the roots of the 4 trees, and those we store in the PRoot

NOTE: At the end of an epoch boundary, we expect pRoots to be the same as the PrevGovActionIds from the EnactState

Instances

Instances details
EraPParams era ⇒ ToJSON (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

EraPParams era ⇒ DecCBOR (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

decCBOR ∷ Decoder s (Proposals era) Source #

dropCBOR ∷ Proxy (Proposals era) → Decoder s () Source #

label ∷ Proxy (Proposals era) → Text Source #

EraPParams era ⇒ DecShareCBOR (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

EraPParams era ⇒ EncCBOR (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

encCBOR ∷ Proposals era → Encoding Source #

Default (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

def ∷ Proposals era Source #

EraPParams era ⇒ NFData (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

rnf ∷ Proposals era → () #

Generic (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Associated Types

type Rep (Proposals era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (Proposals era) = D1 ('MetaData "Proposals" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "Proposals" 'PrefixI 'True) (S1 ('MetaSel ('Just "pProps") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (OMap GovActionId (GovActionState era))) :*: (S1 ('MetaSel ('Just "pRoots") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovRelation PRoot)) :*: S1 ('MetaSel ('Just "pGraph") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovRelation PGraph)))))

Methods

from ∷ Proposals era → Rep (Proposals era) x #

to ∷ Rep (Proposals era) x → Proposals era #

EraPParams era ⇒ Show (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

showsPrec ∷ Int → Proposals era → ShowS #

show ∷ Proposals era → String #

showList ∷ [Proposals era] → ShowS #

EraPParams era ⇒ Eq (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

(==) ∷ Proposals era → Proposals era → Bool #

(/=) ∷ Proposals era → Proposals era → Bool #

EraPParams era ⇒ NoThunks (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Share (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (Proposals era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (Proposals era) = D1 ('MetaData "Proposals" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "Proposals" 'PrefixI 'True) (S1 ('MetaSel ('Just "pProps") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (OMap GovActionId (GovActionState era))) :*: (S1 ('MetaSel ('Just "pRoots") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovRelation PRoot)) :*: S1 ('MetaSel ('Just "pGraph") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (GovRelation PGraph)))))

mkProposals ∷ (EraPParams era, MonadFail m) ⇒ GovRelation StrictMaybe → OMap GovActionId (GovActionState era) → m (Proposals era) Source #

Reconstruct the Proposals forest from an OMap of GovActionStates and the 4 roots (PrevGovActionIds)

unsafeMkProposals ∷ (HasCallStack, EraPParams era) ⇒ GovRelation StrictMaybe → OMap GovActionId (GovActionState era) → Proposals era Source #

Reconstruct the Proposals forest from an OMap of GovActionStates and the 4 roots (PrevGovActionIds). This function can fail and may return a malformed Proposals if not given correct inputs.

WARNING: Should only be used for testing!

newtype GovPurposeId (p ∷ GovActionPurpose) Source #

Constructors

GovPurposeId 

Instances

Instances details
FromJSON (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

FromJSONKey (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSON (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

ToJSONKey (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Typeable p ⇒ DecCBOR (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

EncCBOR (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

NFData (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ GovPurposeId p → () #

Generic (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (GovPurposeId p) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovPurposeId p) = D1 ('MetaData "GovPurposeId" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "GovPurposeId" 'PrefixI 'True) (S1 ('MetaSel ('Just "unGovPurposeId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GovActionId)))

Methods

from ∷ GovPurposeId p → Rep (GovPurposeId p) x #

to ∷ Rep (GovPurposeId p) x → GovPurposeId p #

Show (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → GovPurposeId p → ShowS #

show ∷ GovPurposeId p → String #

showList ∷ [GovPurposeId p] → ShowS #

Show (TreeMaybe (GovPurposeId p)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Eq (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ GovPurposeId p → GovPurposeId p → Bool #

(/=) ∷ GovPurposeId p → GovPurposeId p → Bool #

Ord (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

NoThunks (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovPurposeId p) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovPurposeId p) = D1 ('MetaData "GovPurposeId" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "GovPurposeId" 'PrefixI 'True) (S1 ('MetaSel ('Just "unGovPurposeId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GovActionId)))

data PRoot a Source #

The root of a single Proposals tree. prRoot is always expected to be equal to the respective PrevGovActionId at the end of every epoch boundary

Constructors

PRoot 

Fields

Instances

Instances details
Default (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

def ∷ PRoot a Source #

NFData a ⇒ NFData (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

rnf ∷ PRoot a → () #

Generic (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Associated Types

type Rep (PRoot a) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PRoot a) = D1 ('MetaData "PRoot" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "PRoot" 'PrefixI 'True) (S1 ('MetaSel ('Just "prRoot") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe a)) :*: S1 ('MetaSel ('Just "prChildren") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set a))))

Methods

from ∷ PRoot a → Rep (PRoot a) x #

to ∷ Rep (PRoot a) x → PRoot a #

Show a ⇒ Show (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

showsPrec ∷ Int → PRoot a → ShowS #

show ∷ PRoot a → String #

showList ∷ [PRoot a] → ShowS #

Eq a ⇒ Eq (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

(==) ∷ PRoot a → PRoot a → Bool #

(/=) ∷ PRoot a → PRoot a → Bool #

Ord a ⇒ Ord (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

compare ∷ PRoot a → PRoot a → Ordering #

(<) ∷ PRoot a → PRoot a → Bool #

(<=) ∷ PRoot a → PRoot a → Bool #

(>) ∷ PRoot a → PRoot a → Bool #

(>=) ∷ PRoot a → PRoot a → Bool #

max ∷ PRoot a → PRoot a → PRoot a #

min ∷ PRoot a → PRoot a → PRoot a #

NoThunks a ⇒ NoThunks (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PRoot a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PRoot a) = D1 ('MetaData "PRoot" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "PRoot" 'PrefixI 'True) (S1 ('MetaSel ('Just "prRoot") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe a)) :*: S1 ('MetaSel ('Just "prChildren") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set a))))

data PEdges a Source #

A non-root edges in a Proposals tree. peParent is expected to be a SNothing only at the begining when no governance actions has been enacted yet.

Constructors

PEdges 

Fields

Instances

Instances details
Default (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

def ∷ PEdges a Source #

NFData a ⇒ NFData (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

rnf ∷ PEdges a → () #

Generic (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Associated Types

type Rep (PEdges a) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PEdges a) = D1 ('MetaData "PEdges" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "PEdges" 'PrefixI 'True) (S1 ('MetaSel ('Just "peParent") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe a)) :*: S1 ('MetaSel ('Just "peChildren") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set a))))

Methods

from ∷ PEdges a → Rep (PEdges a) x #

to ∷ Rep (PEdges a) x → PEdges a #

Show a ⇒ Show (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

showsPrec ∷ Int → PEdges a → ShowS #

show ∷ PEdges a → String #

showList ∷ [PEdges a] → ShowS #

Eq a ⇒ Eq (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

(==) ∷ PEdges a → PEdges a → Bool #

(/=) ∷ PEdges a → PEdges a → Bool #

Ord a ⇒ Ord (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

compare ∷ PEdges a → PEdges a → Ordering #

(<) ∷ PEdges a → PEdges a → Bool #

(<=) ∷ PEdges a → PEdges a → Bool #

(>) ∷ PEdges a → PEdges a → Bool #

(>=) ∷ PEdges a → PEdges a → Bool #

max ∷ PEdges a → PEdges a → PEdges a #

min ∷ PEdges a → PEdges a → PEdges a #

NoThunks a ⇒ NoThunks (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PEdges a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PEdges a) = D1 ('MetaData "PEdges" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "PEdges" 'PrefixI 'True) (S1 ('MetaSel ('Just "peParent") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictMaybe a)) :*: S1 ('MetaSel ('Just "peChildren") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set a))))

newtype PGraph a Source #

A single proposal-tree. This map represents all the action-ids that form a tree.

Constructors

PGraph 

Fields

Instances

Instances details
Default (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

def ∷ PGraph a Source #

NFData a ⇒ NFData (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

rnf ∷ PGraph a → () #

Generic (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Associated Types

type Rep (PGraph a) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PGraph a) = D1 ('MetaData "PGraph" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "PGraph" 'PrefixI 'True) (S1 ('MetaSel ('Just "unPGraph") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map a (PEdges a)))))

Methods

from ∷ PGraph a → Rep (PGraph a) x #

to ∷ Rep (PGraph a) x → PGraph a #

Show a ⇒ Show (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

showsPrec ∷ Int → PGraph a → ShowS #

show ∷ PGraph a → String #

showList ∷ [PGraph a] → ShowS #

Eq a ⇒ Eq (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

(==) ∷ PGraph a → PGraph a → Bool #

(/=) ∷ PGraph a → PGraph a → Bool #

Ord a ⇒ Ord (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

compare ∷ PGraph a → PGraph a → Ordering #

(<) ∷ PGraph a → PGraph a → Bool #

(<=) ∷ PGraph a → PGraph a → Bool #

(>) ∷ PGraph a → PGraph a → Bool #

(>=) ∷ PGraph a → PGraph a → Bool #

max ∷ PGraph a → PGraph a → PGraph a #

min ∷ PGraph a → PGraph a → PGraph a #

NoThunks a ⇒ NoThunks (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PGraph a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

type Rep (PGraph a) = D1 ('MetaData "PGraph" "Cardano.Ledger.Conway.Governance.Proposals" "cardano-ledger-conway-1.24.0.0-inplace" 'True) (C1 ('MetaCons "PGraph" 'PrefixI 'True) (S1 ('MetaSel ('Just "unPGraph") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map a (PEdges a)))))

pRootsL ∷ ∀ era f. Functor f ⇒ (GovRelation PRoot → f (GovRelation PRoot)) → Proposals era → f (Proposals era) Source #

pPropsL ∷ ∀ era f. Functor f ⇒ (OMap GovActionId (GovActionState era) → f (OMap GovActionId (GovActionState era))) → Proposals era → f (Proposals era) Source #

prRootL ∷ ∀ a f. Functor f ⇒ (StrictMaybe a → f (StrictMaybe a)) → PRoot a → f (PRoot a) Source #

prChildrenL ∷ ∀ a f. Functor f ⇒ (Set a → f (Set a)) → PRoot a → f (PRoot a) Source #

peChildrenL ∷ ∀ a f. Functor f ⇒ (Set a → f (Set a)) → PEdges a → f (PEdges a) Source #

pGraphL ∷ ∀ era f. Functor f ⇒ (GovRelation PGraph → f (GovRelation PGraph)) → Proposals era → f (Proposals era) Source #

pGraphNodesL ∷ ∀ a f. Functor f ⇒ (Map a (PEdges a) → f (Map a (PEdges a))) → PGraph a → f (PGraph a) Source #

data GovRelation (f ∷ Type → Type) Source #

Abstract data type for representing relationship of governance action with the same purpose

Instances

Instances details
(∀ (p ∷ GovActionPurpose). ToJSON (f (GovPurposeId p))) ⇒ ToJSON (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

(Typeable f, ∀ (p ∷ GovActionPurpose). Typeable p ⇒ DecCBOR (f (GovPurposeId p))) ⇒ DecCBOR (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

(∀ (p ∷ GovActionPurpose). Typeable p ⇒ EncCBOR (f (GovPurposeId p))) ⇒ EncCBOR (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

(∀ (p ∷ GovActionPurpose). ToJSON (f (GovPurposeId p))) ⇒ ToKeyValuePairs (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ GovRelation f → [kv] Source #

(∀ (p ∷ GovActionPurpose). Default (f (GovPurposeId p))) ⇒ Default (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

def ∷ GovRelation f Source #

(∀ (p ∷ GovActionPurpose). NFData (f (GovPurposeId p))) ⇒ NFData (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

rnf ∷ GovRelation f → () #

(∀ (p ∷ GovActionPurpose). Monoid (f (GovPurposeId p))) ⇒ Monoid (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

(∀ (p ∷ GovActionPurpose). Semigroup (f (GovPurposeId p))) ⇒ Semigroup (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Generic (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Associated Types

type Rep (GovRelation f) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovRelation f) = D1 ('MetaData "GovRelation" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "GovRelation" 'PrefixI 'True) ((S1 ('MetaSel ('Just "grPParamUpdate") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'PParamUpdatePurpose))) :*: S1 ('MetaSel ('Just "grHardFork") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'HardForkPurpose)))) :*: (S1 ('MetaSel ('Just "grCommittee") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'CommitteePurpose))) :*: S1 ('MetaSel ('Just "grConstitution") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'ConstitutionPurpose))))))

Methods

from ∷ GovRelation f → Rep (GovRelation f) x #

to ∷ Rep (GovRelation f) x → GovRelation f #

(∀ (p ∷ GovActionPurpose). Show (f (GovPurposeId p))) ⇒ Show (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

showsPrec ∷ Int → GovRelation f → ShowS #

show ∷ GovRelation f → String #

showList ∷ [GovRelation f] → ShowS #

(∀ (p ∷ GovActionPurpose). Eq (f (GovPurposeId p))) ⇒ Eq (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

Methods

(==) ∷ GovRelation f → GovRelation f → Bool #

(/=) ∷ GovRelation f → GovRelation f → Bool #

(∀ (p ∷ GovActionPurpose). NoThunks (f (GovPurposeId p))) ⇒ NoThunks (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovRelation f) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Procedures

type Rep (GovRelation f) = D1 ('MetaData "GovRelation" "Cardano.Ledger.Conway.Governance.Procedures" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "GovRelation" 'PrefixI 'True) ((S1 ('MetaSel ('Just "grPParamUpdate") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'PParamUpdatePurpose))) :*: S1 ('MetaSel ('Just "grHardFork") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'HardForkPurpose)))) :*: (S1 ('MetaSel ('Just "grCommittee") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'CommitteePurpose))) :*: S1 ('MetaSel ('Just "grConstitution") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (f (GovPurposeId 'ConstitutionPurpose))))))

hoistGovRelation ∷ (∀ a. f a → g a) → GovRelation f → GovRelation g Source #

withGovActionParent Source #

Arguments

∷ GovActionState era 
→ a

The result to be used for governance actions that can't have a parent

→ (∀ (p ∷ GovActionPurpose). (∀ (f1 ∷ Type → Type) (f2 ∷ Type → Type). Functor f2 ⇒ (f1 (GovPurposeId p) → f2 (f1 (GovPurposeId p))) → GovRelation f1 → f2 (GovRelation f1)) → StrictMaybe (GovPurposeId p) → GovPurposeId p → a)

Function that will be applied to a lens and a parent

→ a 

Apply a function to a GovAction that can have a parent.

grHardForkL ∷ ∀ f1 f2. Functor f2 ⇒ (f1 (GovPurposeId 'HardForkPurpose) → f2 (f1 (GovPurposeId 'HardForkPurpose))) → GovRelation f1 → f2 (GovRelation f1) Source #

grCommitteeL ∷ ∀ f1 f2. Functor f2 ⇒ (f1 (GovPurposeId 'CommitteePurpose) → f2 (f1 (GovPurposeId 'CommitteePurpose))) → GovRelation f1 → f2 (GovRelation f1) Source #

proposalsDeposits ∷ Proposals era → Map (Credential 'Staking) (CompactForm Coin) Source #

Get a mapping from the account-address staking credentials to deposits of all proposals.

proposalsAddAction ∷ (EraPParams era, HasCallStack) ⇒ GovActionState era → Proposals era → Maybe (Proposals era) Source #

Add a single GovActionState to the Proposals forest. The tree to which it is added is picked according to its GovActionPurpose. Returns Nothing when the operation cannot succeed.

proposalsRemoveWithDescendants ∷ EraPParams era ⇒ Set GovActionId → Proposals era → (Proposals era, Map GovActionId (GovActionState era)) Source #

Remove the set of given action-ids with their descendants from the Proposals forest. Cannot be used for removing enacted GovActionIds (i.e. roots)

proposalsAddVote ∷ Voter → Vote → GovActionId → Proposals era → Proposals era Source #

Add a vote to an existing GovActionState. This is a no-op if the provided GovActionId does not already exist

proposalsApplyEnactment ∷ EraPParams era ⇒ Seq (GovActionState era) → Set GovActionId → Proposals era → (Proposals era, Map GovActionId (GovActionState era), Map GovActionId (GovActionState era), Map GovActionId (GovActionState era)) Source #

For use in the EPOCH rule. Apply the result of extractDRepPulsingState to the Proposals forest, so that: i. all the expired action-ids and their descendants are removed, and ii. the sequence of enacted action-ids is promoted to the root, removing competing/sibling action-ids and their descendants at each step

proposalsWithPurpose ∷ ∀ (p ∷ GovActionPurpose) era. ToGovActionPurpose p ⇒ (∀ (f1 ∷ Type → Type) (f2 ∷ Type → Type). Functor f2 ⇒ (f1 (GovPurposeId p) → f2 (f1 (GovPurposeId p))) → GovRelation f1 → f2 (GovRelation f1)) → Proposals era → Map (GovPurposeId p) (GovActionState era) Source #

cgsProposalsL ∷ ∀ era f. Functor f ⇒ (Proposals era → f (Proposals era)) → ConwayGovState era → f (ConwayGovState era) Source #

cgsDRepPulsingStateL ∷ ∀ era f. Functor f ⇒ (DRepPulsingState era → f (DRepPulsingState era)) → ConwayGovState era → f (ConwayGovState era) Source #

cgsCurPParamsL ∷ ∀ era f. Functor f ⇒ (PParams era → f (PParams era)) → ConwayGovState era → f (ConwayGovState era) Source #

cgsPrevPParamsL ∷ ∀ era f. Functor f ⇒ (PParams era → f (PParams era)) → ConwayGovState era → f (ConwayGovState era) Source #

cgsFuturePParamsL ∷ ∀ era f. Functor f ⇒ (FuturePParams era → f (FuturePParams era)) → ConwayGovState era → f (ConwayGovState era) Source #

cgsCommitteeL ∷ ∀ era f. Functor f ⇒ (StrictMaybe (Committee era) → f (StrictMaybe (Committee era))) → ConwayGovState era → f (ConwayGovState era) Source #

cgsConstitutionL ∷ ∀ era f. Functor f ⇒ (Constitution era → f (Constitution era)) → ConwayGovState era → f (ConwayGovState era) Source #

ensCommitteeL ∷ ∀ era f. Functor f ⇒ (StrictMaybe (Committee era) → f (StrictMaybe (Committee era))) → EnactState era → f (EnactState era) Source #

ensConstitutionL ∷ ∀ era f. Functor f ⇒ (Constitution era → f (Constitution era)) → EnactState era → f (EnactState era) Source #

ensCurPParamsL ∷ ∀ era f. Functor f ⇒ (PParams era → f (PParams era)) → EnactState era → f (EnactState era) Source #

ensPrevPParamsL ∷ ∀ era f. Functor f ⇒ (PParams era → f (PParams era)) → EnactState era → f (EnactState era) Source #

ensWithdrawalsL ∷ ∀ era f. Functor f ⇒ (Map (Credential 'Staking) Coin → f (Map (Credential 'Staking) Coin)) → EnactState era → f (EnactState era) Source #

ensTreasuryL ∷ ∀ era f. Functor f ⇒ (Coin → f Coin) → EnactState era → f (EnactState era) Source #

rsEnactStateL ∷ ∀ era f. Functor f ⇒ (EnactState era → f (EnactState era)) → RatifyState era → f (RatifyState era) Source #

rsExpiredL ∷ ∀ era f. Functor f ⇒ (Set GovActionId → f (Set GovActionId)) → RatifyState era → f (RatifyState era) Source #

rsEnactedL ∷ ∀ era f. Functor f ⇒ (Seq (GovActionState era) → f (Seq (GovActionState era))) → RatifyState era → f (RatifyState era) Source #

rsDelayedL ∷ ∀ era f. Functor f ⇒ (Bool → f Bool) → RatifyState era → f (RatifyState era) Source #

constitutionAnchorL ∷ ∀ era f. Functor f ⇒ (Anchor → f Anchor) → Constitution era → f (Constitution era) Source #

gasIdL ∷ ∀ era f. Functor f ⇒ (GovActionId → f GovActionId) → GovActionState era → f (GovActionState era) Source #

gasDepositL ∷ ∀ era f. Functor f ⇒ (Coin → f Coin) → GovActionState era → f (GovActionState era) Source #

gasDRepVotesL ∷ ∀ era f. Functor f ⇒ (Map (Credential 'DRepRole) Vote → f (Map (Credential 'DRepRole) Vote)) → GovActionState era → f (GovActionState era) Source #

gasExpiresAfterL ∷ ∀ era f. Functor f ⇒ (EpochNo → f EpochNo) → GovActionState era → f (GovActionState era) Source #

gasActionL ∷ ∀ era f. Functor f ⇒ (GovAction era → f (GovAction era)) → GovActionState era → f (GovActionState era) Source #

gasReturnAddrL ∷ ∀ era f. Functor f ⇒ (AccountAddress → f AccountAddress) → GovActionState era → f (GovActionState era) Source #

gasProposedInL ∷ ∀ era f. Functor f ⇒ (EpochNo → f EpochNo) → GovActionState era → f (GovActionState era) Source #

gasProposalProcedureL ∷ ∀ era f. Functor f ⇒ (ProposalProcedure era → f (ProposalProcedure era)) → GovActionState era → f (GovActionState era) Source #

pProcDepositL ∷ ∀ era f. Functor f ⇒ (Coin → f Coin) → ProposalProcedure era → f (ProposalProcedure era) Source #

pProcGovActionL ∷ ∀ era f. Functor f ⇒ (GovAction era → f (GovAction era)) → ProposalProcedure era → f (ProposalProcedure era) Source #

pProcAnchorL ∷ ∀ era f. Functor f ⇒ (Anchor → f Anchor) → ProposalProcedure era → f (ProposalProcedure era) Source #

epochStateStakeDistrL ∷ ∀ era f. Functor f ⇒ (ActiveStake → f ActiveStake) → EpochState era → f (EpochState era) Source #

forceDRepPulsingState ∷ ConwayEraGov era ⇒ NewEpochState era → NewEpochState era Source #

Force computation of DRep stake distribution and figure out the next enact state. This operation is useful in cases when access to new EnactState or DRep stake distribution is needed more than once. It is safe to call this function at any point. Whenever pulser is already in computed state this will be a noop.

computeDRepDistr ∷ (EraStake era, ConwayEraAccounts era) ⇒ InstantStake era → Map (Credential 'DRepRole) DRepState → Map (Credential 'Staking) (CompactForm Coin) → VotingStakePoolDistr → Map DRep (CompactForm Coin) → Map (Credential 'Staking) (AccountState era) → (Map DRep (CompactForm Coin), VotingStakePoolDistr) Source #

We iterate over a pulse-sized chunk of the Accounts.

For each staking credential in the chunk that has delegated to a DRep, add the stake distribution, rewards, and proposal deposits for that credential to the DRep distribution, if the DRep is a DRepCredential (also, AlwaysAbstain or AlwaysNoConfidence) and a member of the registered DReps. If the DRepCredential is not a member of the registered DReps, ignore and skip that DRep.

For each staking credential in the chunk that has delegated to an SPO, add only the proposal deposits for that credential to the stake pool distribution, since the rewards and stake are already added to it by the SNAP rule.

Give or take, this operation has roughly O (a * (log(b) + log(c) + log(d) + log(e) + log(f))) complexity, where, (a) is the size of the chunk of the Accounts, which is the pulse-size, iterate over (b) is the size of the StakeDistr, lookup (c) is the size of the DRepDistr, insertWith (d) is the size of the dpProposalDeposits, lookup (e) is the size of the registered DReps, lookup (f) is the size of the VotingStakePoolDistr, insert

psDRepDistrG ∷ (EraStake era, ConwayEraAccounts era) ⇒ SimpleGetter (DRepPulsingState era) (Map DRep (CompactForm Coin)) Source #

This is potentially an expensive getter. Make sure not to use it in the first 80% of the epoch.

data PulsingSnapshot era Source #

A snapshot of information from the previous epoch stored inside the Pulser. After the pulser completes, but before the epoch turns, this information is store in the DRComplete constructor of the DRepPulsingState These are the values at the start of the current epoch. This allows the API To access these "previous" values, both during and after pulsing.

Instances

Instances details
EraPParams era ⇒ ToJSON (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

EraPParams era ⇒ DecCBOR (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

EraPParams era ⇒ DecShareCBOR (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

EraPParams era ⇒ EncCBOR (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

EraPParams era ⇒ ToKeyValuePairs (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

toKeyValuePairs ∷ KeyValue e kv ⇒ PulsingSnapshot era → [kv] Source #

Default (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

def ∷ PulsingSnapshot era Source #

EraPParams era ⇒ NFData (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

rnf ∷ PulsingSnapshot era → () #

Generic (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Associated Types

type Rep (PulsingSnapshot era) 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Rep (PulsingSnapshot era) = D1 ('MetaData "PulsingSnapshot" "Cardano.Ledger.Conway.Governance.DRepPulser" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "PulsingSnapshot" 'PrefixI 'True) ((S1 ('MetaSel ('Just "psProposals") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictSeq (GovActionState era))) :*: S1 ('MetaSel ('Just "psDRepDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map DRep (CompactForm Coin)))) :*: (S1 ('MetaSel ('Just "psDRepState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'DRepRole) DRepState)) :*: S1 ('MetaSel ('Just "psPoolDistr") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map (KeyHash 'StakePool) (CompactForm Coin))))))

Methods

from ∷ PulsingSnapshot era → Rep (PulsingSnapshot era) x #

to ∷ Rep (PulsingSnapshot era) x → PulsingSnapshot era #

EraPParams era ⇒ Show (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

showsPrec ∷ Int → PulsingSnapshot era → ShowS #

show ∷ PulsingSnapshot era → String #

showList ∷ [PulsingSnapshot era] → ShowS #

EraPParams era ⇒ Eq (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

Methods

(==) ∷ PulsingSnapshot era → PulsingSnapshot era → Bool #

(/=) ∷ PulsingSnapshot era → PulsingSnapshot era → Bool #

EraPParams era ⇒ NoThunks (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Share (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Rep (PulsingSnapshot era) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.DRepPulser

type Rep (PulsingSnapshot era) = D1 ('MetaData "PulsingSnapshot" "Cardano.Ledger.Conway.Governance.DRepPulser" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "PulsingSnapshot" 'PrefixI 'True) ((S1 ('MetaSel ('Just "psProposals") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictSeq (GovActionState era))) :*: S1 ('MetaSel ('Just "psDRepDistr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map DRep (CompactForm Coin)))) :*: (S1 ('MetaSel ('Just "psDRepState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'DRepRole) DRepState)) :*: S1 ('MetaSel ('Just "psPoolDistr") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map (KeyHash 'StakePool) (CompactForm Coin))))))

setFreshDRepPulsingState ∷ ∀ era (m ∷ Type → Type). (GovState era ~ ConwayGovState era, Monad m, RunConwayRatify era, ConwayEraGov era, ConwayEraCertState era) ⇒ EpochNo → PoolDistr → EpochState era → ReaderT Globals m (EpochState era) Source #

Refresh the pulser in the EpochState using all the new data that is needed to compute the RatifyState when pulsing completes.

psProposalsL ∷ ∀ era f. Functor f ⇒ (StrictSeq (GovActionState era) → f (StrictSeq (GovActionState era))) → PulsingSnapshot era → f (PulsingSnapshot era) Source #

psDRepDistrL ∷ ∀ era f. Functor f ⇒ (Map DRep (CompactForm Coin) → f (Map DRep (CompactForm Coin))) → PulsingSnapshot era → f (PulsingSnapshot era) Source #

class (STS (RATIFY era), Signal (RATIFY era) ~ RatifySignal era, BaseM (RATIFY era) ~ Reader Globals, Environment (RATIFY era) ~ RatifyEnv era, State (RATIFY era) ~ RatifyState era, PredicateFailure (RATIFY era) ~ Void) ⇒ RunConwayRatify era where Source #

Minimal complete definition

Nothing

Methods

runConwayRatify ∷ Globals → RatifyEnv era → RatifyState era → RatifySignal era → RatifyState era Source #

ratifySignalL ∷ ∀ era f. Functor f ⇒ (StrictSeq (GovActionState era) → f (StrictSeq (GovActionState era))) → RatifySignal era → f (RatifySignal era) Source #

reDRepDistrL ∷ ∀ era f. Functor f ⇒ (Map DRep (CompactForm Coin) → f (Map DRep (CompactForm Coin))) → RatifyEnv era → f (RatifyEnv era) Source #

reDRepStateL ∷ ∀ era f. Functor f ⇒ (Map (Credential 'DRepRole) DRepState → f (Map (Credential 'DRepRole) DRepState)) → RatifyEnv era → f (RatifyEnv era) Source #

reCurrentEpochL ∷ ∀ era f. Functor f ⇒ (EpochNo → f EpochNo) → RatifyEnv era → f (RatifyEnv era) Source #

reCommitteeStateL ∷ ∀ era f. Functor f ⇒ (CommitteeState era → f (CommitteeState era)) → RatifyEnv era → f (RatifyEnv era) Source #

data VotingStakePoolDistr Source #

A map of stake pool IDs to the absolute amount of stake delegated. Unlike the Stake pool distribution used for leader election, this one also includes proposals deposits

Constructors

VotingStakePoolDistr 

Fields

Instances

Instances details
ToJSON VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

DecCBOR VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

EncCBOR VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Default VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

NFData VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Methods

rnf ∷ VotingStakePoolDistr → () #

Generic VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Associated Types

type Rep VotingStakePoolDistr 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep VotingStakePoolDistr = D1 ('MetaData "VotingStakePoolDistr" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "VotingStakePoolDistr" 'PrefixI 'True) (S1 ('MetaSel ('Just "vspdIndividualStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'StakePool) (CompactForm Coin))) :*: S1 ('MetaSel ('Just "vspdTotalVotingStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonZero Coin))))
Show VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

Eq VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

NoThunks VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep VotingStakePoolDistr Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Internal

type Rep VotingStakePoolDistr = D1 ('MetaData "VotingStakePoolDistr" "Cardano.Ledger.Conway.Governance.Internal" "cardano-ledger-conway-1.24.0.0-inplace" 'False) (C1 ('MetaCons "VotingStakePoolDistr" 'PrefixI 'True) (S1 ('MetaSel ('Just "vspdIndividualStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'StakePool) (CompactForm Coin))) :*: S1 ('MetaSel ('Just "vspdTotalVotingStake") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonZero Coin))))

data DefaultVote Source #

Default vote that will be used for Stake Pool.

Constructors

DefaultNo

Account address is delegated to a DRepKeyHash, DRepScriptHash or undelegated: default vote is No.

DefaultAbstain

Account address is delegated to DRepAlwaysAbstain: default vote is Abstain, except for HardForkInitiation actions.

DefaultNoConfidence

Account address is delegated to DRepAlwaysNoConfidence: default vote is Yes in case of a NoConfidence action, otherwise No.

defaultStakePoolVote Source #

Arguments

∷ ConwayEraAccounts era 
⇒ KeyHash 'StakePool

Specify the key hash of the pool whose default vote should be returned.

→ Map (KeyHash 'StakePool) StakePoolState

Registered Stake Pools

→ Accounts era

Delegations of staking credneitals to a DRep

→ DefaultVote 

Exported for testing

data TreeMaybe a Source #

Wraper type, which serves as a composition of Tree . StrictMaybe

Also its Show instance will print a nice tree structure.

Constructors

TreeMaybe 

Fields

Instances

Instances details
Show (TreeMaybe (GovPurposeId p)) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Eq a ⇒ Eq (TreeMaybe a) Source # 
Instance details

Defined in Cardano.Ledger.Conway.Governance.Proposals

Methods

(==) ∷ TreeMaybe a → TreeMaybe a → Bool #

(/=) ∷ TreeMaybe a → TreeMaybe a → Bool #

Orphan instances