cardano-ledger-shelley-1.12.2.1: Shelley Ledger Executable Model
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Ledger.Shelley.Rules.Tick

Synopsis

Documentation

data ShelleyTICK era Source #

Instances

Instances details
(EraGov era, Embed (EraRule "NEWEPOCH" era) (ShelleyTICK era), Embed (EraRule "RUPD" era) (ShelleyTICK era), State (ShelleyTICK era) ~ NewEpochState era, BaseM (ShelleyTICK era) ~ ShelleyBase, Environment (EraRule "RUPD" era) ~ RupdEnv era, State (EraRule "RUPD" era) ~ StrictMaybe (PulsingRewUpdate (EraCrypto era)), Signal (EraRule "RUPD" era) ~ SlotNo, Environment (EraRule "NEWEPOCH" era) ~ (), State (EraRule "NEWEPOCH" era) ~ NewEpochState era, Signal (EraRule "NEWEPOCH" era) ~ EpochNo) ⇒ STS (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

Associated Types

type State (ShelleyTICK era) Source #

type Signal (ShelleyTICK era) Source #

type Environment (ShelleyTICK era) Source #

type BaseM (ShelleyTICK era) ∷ TypeType Source #

type Event (ShelleyTICK era) Source #

type PredicateFailure (ShelleyTICK era) Source #

(STS (ShelleyNEWEPOCH era), PredicateFailure (EraRule "NEWEPOCH" era) ~ ShelleyNewEpochPredFailure era, Event (EraRule "NEWEPOCH" era) ~ ShelleyNewEpochEvent era) ⇒ Embed (ShelleyNEWEPOCH era) (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

(Era era, STS (ShelleyRUPD era), PredicateFailure (EraRule "RUPD" era) ~ ShelleyRupdPredFailure era, Event (EraRule "RUPD" era) ~ RupdEvent (EraCrypto era)) ⇒ Embed (ShelleyRUPD era) (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type BaseM (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Environment (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Environment (ShelleyTICK era) = ()
type Event (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type PredicateFailure (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Signal (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type State (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type family State a Source #

Type of the state which the system transitions between.

Instances

Instances details
type State (ShelleyBBODY era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Bbody

type State (ShelleyDELEG era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Deleg

type State (ShelleyDELEG era) = DState era
type State (ShelleyDELEGS era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delegs

type State (ShelleyDELEGS era) = CertState era
type State (ShelleyDELPL era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delpl

type State (ShelleyDELPL era) = CertState era
type State (ShelleyEPOCH era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Epoch

type State (ShelleyEPOCH era) = EpochState era
type State (ShelleyLEDGER era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledger

type State (ShelleyLEDGERS era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledgers

type State (ShelleyMIR era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Mir

type State (ShelleyMIR era) = EpochState era
type State (ShelleyNEWEPOCH era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.NewEpoch

type State (ShelleyNEWPP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Newpp

type State (ShelleyPOOL era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Pool

type State (ShelleyPOOL era) = PState era
type State (ShelleyPOOLREAP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.PoolReap

type State (ShelleyPPUP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ppup

type State (ShelleyRUPD era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Rupd

type State (ShelleySNAP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Snap

type State (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type State (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type State (ShelleyUPEC era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Upec

type State (ShelleyUPEC era) = UpecState era
type State (ShelleyUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxo

type State (ShelleyUTXO era) = UTxOState era
type State (ShelleyUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxow

type State (ShelleyUTXOW era) = UTxOState era
type State (STUB e st si f m) 
Instance details

Defined in Control.State.Transition.Extended

type State (STUB e st si f m) = st

data ShelleyTickPredFailure era Source #

Constructors

NewEpochFailure (PredicateFailure (EraRule "NEWEPOCH" era)) 
RupdFailure (PredicateFailure (EraRule "RUPD" era)) 

Instances

Instances details
Generic (ShelleyTickPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

Associated Types

type Rep (ShelleyTickPredFailure era) ∷ TypeType Source #

(Show (PredicateFailure (EraRule "NEWEPOCH" era)), Show (PredicateFailure (EraRule "RUPD" era))) ⇒ Show (ShelleyTickPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

(NFData (PredicateFailure (EraRule "NEWEPOCH" era)), NFData (PredicateFailure (EraRule "RUPD" era))) ⇒ NFData (ShelleyTickPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

Methods

rnfShelleyTickPredFailure era → () Source #

(Eq (PredicateFailure (EraRule "NEWEPOCH" era)), Eq (PredicateFailure (EraRule "RUPD" era))) ⇒ Eq (ShelleyTickPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

(NoThunks (PredicateFailure (EraRule "NEWEPOCH" era)), NoThunks (PredicateFailure (EraRule "RUPD" era))) ⇒ NoThunks (ShelleyTickPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Rep (ShelleyTickPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Rep (ShelleyTickPredFailure era) = D1 ('MetaData "ShelleyTickPredFailure" "Cardano.Ledger.Shelley.Rules.Tick" "cardano-ledger-shelley-1.12.2.1-inplace" 'False) (C1 ('MetaCons "NewEpochFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (EraRule "NEWEPOCH" era)))) :+: C1 ('MetaCons "RupdFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (EraRule "RUPD" era)))))

data ShelleyTickEvent era Source #

Constructors

TickNewEpochEvent (Event (EraRule "NEWEPOCH" era)) 
TickRupdEvent (Event (EraRule "RUPD" era)) 

Instances

Instances details
Generic (ShelleyTickEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

Associated Types

type Rep (ShelleyTickEvent era) ∷ TypeType Source #

(NFData (Event (EraRule "NEWEPOCH" era)), NFData (Event (EraRule "RUPD" era))) ⇒ NFData (ShelleyTickEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

Methods

rnfShelleyTickEvent era → () Source #

(Eq (Event (EraRule "NEWEPOCH" era)), Eq (Event (EraRule "RUPD" era))) ⇒ Eq (ShelleyTickEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Rep (ShelleyTickEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Rep (ShelleyTickEvent era) = D1 ('MetaData "ShelleyTickEvent" "Cardano.Ledger.Shelley.Rules.Tick" "cardano-ledger-shelley-1.12.2.1-inplace" 'False) (C1 ('MetaCons "TickNewEpochEvent" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Event (EraRule "NEWEPOCH" era)))) :+: C1 ('MetaCons "TickRupdEvent" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Event (EraRule "RUPD" era)))))

type family PredicateFailure a Source #

Descriptive type for the possible failures which might cause a transition to fail.

As a convention, PredicateFailures which are "structural" (meaning that they are not "throwable" in practice, and are used to pass control from one transition rule to another) are prefixed with S_.

Structural PredicateFailures represent conditions between rules where the disjunction of all rules' preconditions is equal to True. That is, either one rule will throw a structural PredicateFailure and the other will succeed, or vice-versa.

Instances

Instances details
type PredicateFailure (ShelleyBBODY era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Bbody

type PredicateFailure (ShelleyDELEG era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Deleg

type PredicateFailure (ShelleyDELEGS era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delegs

type PredicateFailure (ShelleyDELPL era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delpl

type PredicateFailure (ShelleyEPOCH era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Epoch

type PredicateFailure (ShelleyLEDGER era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledger

type PredicateFailure (ShelleyLEDGERS era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledgers

type PredicateFailure (ShelleyMIR era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Mir

type PredicateFailure (ShelleyNEWEPOCH era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.NewEpoch

type PredicateFailure (ShelleyNEWPP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Newpp

type PredicateFailure (ShelleyPOOL era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Pool

type PredicateFailure (ShelleyPOOLREAP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.PoolReap

type PredicateFailure (ShelleyPPUP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ppup

type PredicateFailure (ShelleyRUPD era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Rupd

type PredicateFailure (ShelleySNAP era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Snap

type PredicateFailure (ShelleyTICK era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type PredicateFailure (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type PredicateFailure (ShelleyUPEC era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Upec

type PredicateFailure (ShelleyUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxo

type PredicateFailure (ShelleyUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxow

type PredicateFailure (STUB e st si f m) 
Instance details

Defined in Control.State.Transition.Extended

type PredicateFailure (STUB e st si f m) = f

data ShelleyTICKF era Source #

Instances

Instances details
(EraGov era, GovState era ~ ShelleyGovState era, State (EraRule "PPUP" era) ~ ShelleyGovState era, Signal (EraRule "UPEC" era) ~ (), State (EraRule "UPEC" era) ~ UpecState era, Environment (EraRule "UPEC" era) ~ LedgerState era, Embed (EraRule "UPEC" era) (ShelleyTICKF era)) ⇒ STS (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

(Era era, STS (ShelleyUPEC era), PredicateFailure (EraRule "UPEC" era) ~ ShelleyUpecPredFailure era, Event (EraRule "UPEC" era) ~ Void) ⇒ Embed (ShelleyUPEC era) (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type BaseM (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Environment (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Environment (ShelleyTICKF era) = ()
type Event (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Event (ShelleyTICKF era)
type PredicateFailure (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Signal (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type State (ShelleyTICKF era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

data ShelleyTickfPredFailure era Source #

Instances

Instances details
Generic (ShelleyTickfPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

Associated Types

type Rep (ShelleyTickfPredFailure era) ∷ TypeType Source #

(Era era, Show (PredicateFailure (EraRule "UPEC" era))) ⇒ Show (ShelleyTickfPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

(Era era, Eq (PredicateFailure (EraRule "UPEC" era))) ⇒ Eq (ShelleyTickfPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

NoThunks (PredicateFailure (EraRule "UPEC" era)) ⇒ NoThunks (ShelleyTickfPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Rep (ShelleyTickfPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type Rep (ShelleyTickfPredFailure era) = D1 ('MetaData "ShelleyTickfPredFailure" "Cardano.Ledger.Shelley.Rules.Tick" "cardano-ledger-shelley-1.12.2.1-inplace" 'True) (C1 ('MetaCons "TickfUpecFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (EraRule "UPEC" era)))))

validatingTickTransition ∷ ∀ tick era. (EraGov era, Embed (EraRule "NEWEPOCH" era) (tick era), STS (tick era), State (tick era) ~ NewEpochState era, BaseM (tick era) ~ ShelleyBase, Environment (EraRule "NEWEPOCH" era) ~ (), State (EraRule "NEWEPOCH" era) ~ NewEpochState era, Signal (EraRule "NEWEPOCH" era) ~ EpochNo) ⇒ NewEpochState era → SlotNoTransitionRule (tick era) Source #

This is a limited version of bheadTransition which is suitable for the future ledger view.

validatingTickTransitionFORECAST ∷ ∀ tick era. (State (tick era) ~ NewEpochState era, BaseM (tick era) ~ ShelleyBase, State (EraRule "UPEC" era) ~ UpecState era, Signal (EraRule "UPEC" era) ~ (), Environment (EraRule "UPEC" era) ~ LedgerState era, Embed (EraRule "UPEC" era) (tick era), STS (tick era), GovState era ~ ShelleyGovState era, EraGov era) ⇒ NewEpochState era → SlotNoTransitionRule (tick era) Source #

This is a limited version of validatingTickTransition which is only suitable for the future ledger view.

solidifyNextEpochPParamsEraGov era ⇒ NewEpochState era → SlotNoShelleyBase (EpochNo, NewEpochState era) Source #

This action ensures that once the current slot number is at the point of no return we mark the future PParams to be updated at the next epoch boundary. Also returns the current epoch number for convenience.

Orphan instances

(EraGov era, Embed (EraRule "NEWEPOCH" era) (ShelleyTICK era), Embed (EraRule "RUPD" era) (ShelleyTICK era), State (ShelleyTICK era) ~ NewEpochState era, BaseM (ShelleyTICK era) ~ ShelleyBase, Environment (EraRule "RUPD" era) ~ RupdEnv era, State (EraRule "RUPD" era) ~ StrictMaybe (PulsingRewUpdate (EraCrypto era)), Signal (EraRule "RUPD" era) ~ SlotNo, Environment (EraRule "NEWEPOCH" era) ~ (), State (EraRule "NEWEPOCH" era) ~ NewEpochState era, Signal (EraRule "NEWEPOCH" era) ~ EpochNo) ⇒ STS (ShelleyTICK era) Source # 
Instance details

Associated Types

type State (ShelleyTICK era) Source #

type Signal (ShelleyTICK era) Source #

type Environment (ShelleyTICK era) Source #

type BaseM (ShelleyTICK era) ∷ TypeType Source #

type Event (ShelleyTICK era) Source #

type PredicateFailure (ShelleyTICK era) Source #

(EraGov era, GovState era ~ ShelleyGovState era, State (EraRule "PPUP" era) ~ ShelleyGovState era, Signal (EraRule "UPEC" era) ~ (), State (EraRule "UPEC" era) ~ UpecState era, Environment (EraRule "UPEC" era) ~ LedgerState era, Embed (EraRule "UPEC" era) (ShelleyTICKF era)) ⇒ STS (ShelleyTICKF era) Source # 
Instance details

(STS (ShelleyNEWEPOCH era), PredicateFailure (EraRule "NEWEPOCH" era) ~ ShelleyNewEpochPredFailure era, Event (EraRule "NEWEPOCH" era) ~ ShelleyNewEpochEvent era) ⇒ Embed (ShelleyNEWEPOCH era) (ShelleyTICK era) Source # 
Instance details

(Era era, STS (ShelleyRUPD era), PredicateFailure (EraRule "RUPD" era) ~ ShelleyRupdPredFailure era, Event (EraRule "RUPD" era) ~ RupdEvent (EraCrypto era)) ⇒ Embed (ShelleyRUPD era) (ShelleyTICK era) Source # 
Instance details

(Era era, STS (ShelleyUPEC era), PredicateFailure (EraRule "UPEC" era) ~ ShelleyUpecPredFailure era, Event (EraRule "UPEC" era) ~ Void) ⇒ Embed (ShelleyUPEC era) (ShelleyTICKF era) Source # 
Instance details