Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data PRTCL c
- type family State a
- data PrtclEnv = PrtclEnv UnitInterval PoolDistr GenDelegs Nonce
- data PrtclState = PrtclState !(Map (KeyHash 'BlockIssuer) Word64) !Nonce !Nonce
- data PrtclPredicateFailure c
- = OverlayFailure (PredicateFailure (OVERLAY c))
- | UpdnFailure (PredicateFailure (UPDN c))
- type family PredicateFailure a
- data PrtlSeqFailure
- prtlSeqChecks ∷ (MonadError PrtlSeqFailure m, Crypto c) ⇒ WithOrigin LastAppliedBlock → BHeader c → m ()
Documentation
Instances
Type of the state which the system transitions between.
Instances
Instances
Generic PrtclEnv Source # | |
NoThunks PrtclEnv Source # | |
type Rep PrtclEnv Source # | |
Defined in Cardano.Protocol.TPraos.Rules.Prtcl type Rep PrtclEnv = D1 ('MetaData "PrtclEnv" "Cardano.Protocol.TPraos.Rules.Prtcl" "cardano-protocol-tpraos-1.4.0.0-inplace" 'False) (C1 ('MetaCons "PrtclEnv" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnitInterval) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PoolDistr)) :*: (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GenDelegs) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Nonce)))) |
data PrtclState Source #
Instances
data PrtclPredicateFailure c Source #
OverlayFailure (PredicateFailure (OVERLAY c)) | |
UpdnFailure (PredicateFailure (UPDN c)) |
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
data PrtlSeqFailure Source #
WrongSlotIntervalPrtclSeq | |
WrongBlockNoPrtclSeq | |
| |
WrongBlockSequencePrtclSeq | |
Instances
prtlSeqChecks ∷ (MonadError PrtlSeqFailure m, Crypto c) ⇒ WithOrigin LastAppliedBlock → BHeader c → m () Source #