Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data ShelleyTICK era
- type family State a
- data ShelleyTickPredFailure era
- = NewEpochFailure (PredicateFailure (EraRule "NEWEPOCH" era))
- | RupdFailure (PredicateFailure (EraRule "RUPD" era))
- data ShelleyTickEvent era
- = TickNewEpochEvent (Event (EraRule "NEWEPOCH" era))
- | TickRupdEvent (Event (EraRule "RUPD" era))
- type family PredicateFailure a
- adoptGenesisDelegs ∷ EpochState era → SlotNo → EpochState era
- data ShelleyTICKF era
- data ShelleyTickfPredFailure 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 → SlotNo → TransitionRule (tick era)
- 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 → SlotNo → TransitionRule (tick era)
- solidifyNextEpochPParams ∷ EraGov era ⇒ NewEpochState era → SlotNo → ShelleyBase (EpochNo, NewEpochState era)
Documentation
data ShelleyTICK era Source #
Instances
Type of the state which the system transitions between.
Instances
data ShelleyTickPredFailure era Source #
NewEpochFailure (PredicateFailure (EraRule "NEWEPOCH" era)) | |
RupdFailure (PredicateFailure (EraRule "RUPD" era)) |
Instances
data ShelleyTickEvent era Source #
TickNewEpochEvent (Event (EraRule "NEWEPOCH" era)) | |
TickRupdEvent (Event (EraRule "RUPD" era)) |
Instances
type family PredicateFailure a Source #
Descriptive type for the possible failures which might cause a transition to fail.
As a convention, PredicateFailure
s 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 PredicateFailure
s 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
adoptGenesisDelegs ∷ EpochState era → SlotNo → EpochState era Source #
data ShelleyTICKF era Source #
Instances
data ShelleyTickfPredFailure era Source #
Instances
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 → SlotNo → TransitionRule (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 → SlotNo → TransitionRule (tick era) Source #
This is a limited version of validatingTickTransition
which is only suitable
for the future ledger view.
solidifyNextEpochPParams ∷ EraGov era ⇒ NewEpochState era → SlotNo → ShelleyBase (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.