shelley-spec-ledger-0.1.0.0
Safe HaskellNone
LanguageHaskell98

Shelley.Spec.Ledger.STS.Prtcl

Synopsis

Documentation

data PRTCL crypto Source #

Instances

Instances details
(Crypto crypto, DSignable crypto (OCertSignable crypto), KESignable crypto (BHBody crypto), VRFSignable crypto Seed) ⇒ STS (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Associated Types

type State (PRTCL crypto) Source #

type Signal (PRTCL crypto) Source #

type Environment (PRTCL crypto) Source #

type BaseM (PRTCL crypto) ∷ TypeType Source #

type PredicateFailure (PRTCL crypto) = (b ∷ Type) Source #

(Crypto crypto, DSignable crypto (OCertSignable crypto), KESignable crypto (BHBody crypto), VRFSignable crypto Seed) ⇒ Embed (UPDN crypto) (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

wrapFailedPredicateFailure (UPDN crypto) → PredicateFailure (PRTCL crypto) Source #

(Crypto crypto, DSignable crypto (OCertSignable crypto), KESignable crypto (BHBody crypto), VRFSignable crypto Seed) ⇒ Embed (OVERLAY crypto) (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

(Era era, c ~ Crypto era, ShelleyBased era, STS (PRTCL c)) ⇒ Embed (PRTCL c) (CHAIN era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Chain

type PredicateFailure (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type BaseM (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type BaseM (PRTCL crypto) = ShelleyBase
type Environment (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type Environment (PRTCL crypto) = PrtclEnv crypto
type Signal (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type Signal (PRTCL crypto) = BHeader crypto
type State (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type State (PRTCL crypto) = PrtclState crypto

type family State a Source #

Type of the state which the system transitions between.

Instances

Instances details
type State TICKN Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Tickn

type State (UPDN crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Updn

type State (UPDN crypto) = UpdnState
type State (SNAP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Snap

type State (SNAP era) = SnapShots era
type State (RUPD era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Rupd

type State (RUPD era) = StrictMaybe (RewardUpdate era)
type State (PPUP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ppup

type State (PPUP era) = PPUPState era
type State (UTXO (ShelleyEra c)) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Utxo

type State (UTXOW (ShelleyEra c)) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Utxow

type State (POOLREAP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.PoolReap

type State (POOLREAP era) = PoolreapState era
type State (POOL era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Pool

type State (POOL era) = PState era
type State (NEWPP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Newpp

type State (NEWPP era) = NewppState era
type State (MIR era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Mir

type State (MIR era) = EpochState era
type State (EPOCH era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Epoch

type State (EPOCH era) = EpochState era
type State (NEWEPOCH era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.NewEpoch

type State (NEWEPOCH era) = NewEpochState era
type State (TICKF era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Tick

type State (TICKF era) = NewEpochState era
type State (TICK era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Tick

type State (TICK era) = NewEpochState era
type State (DELEG era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Deleg

type State (DELEG era) = DState era
type State (DELPL era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Delpl

type State (DELPL era) = DPState era
type State (DELEGS era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Delegs

type State (DELEGS era) = DPState era
type State (LEDGER era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ledger

type State (LEDGER era) = (UTxOState era, DPState era)
type State (LEDGERS era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ledgers

type State (LEDGERS era) = LedgerState era
type State (OCERT crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ocert

type State (OCERT crypto) = Map (KeyHash 'BlockIssuer crypto) Word64
type State (OVERLAY crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Overlay

type State (OVERLAY crypto) = Map (KeyHash 'BlockIssuer crypto) Word64
type State (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type State (PRTCL crypto) = PrtclState crypto
type State (BBODY era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Bbody

type State (BBODY era) = BbodyState era
type State (CHAIN era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Chain

type State (CHAIN era) = ChainState era

data PrtclEnv crypto Source #

Constructors

PrtclEnv UnitInterval (PoolDistr crypto) (GenDelegs crypto) Nonce 

Instances

Instances details
Generic (PrtclEnv crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Associated Types

type Rep (PrtclEnv crypto) ∷ TypeType #

Methods

fromPrtclEnv crypto → Rep (PrtclEnv crypto) x #

toRep (PrtclEnv crypto) x → PrtclEnv crypto #

NoThunks (PrtclEnv crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

noThunks ∷ Context → PrtclEnv crypto → IO (Maybe ThunkInfo)

wNoThunks ∷ Context → PrtclEnv crypto → IO (Maybe ThunkInfo)

showTypeOfProxy (PrtclEnv crypto) → String

type Rep (PrtclEnv crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

data PrtclState crypto Source #

Constructors

PrtclState 

Fields

Instances

Instances details
Eq (PrtclState crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

(==)PrtclState crypto → PrtclState crypto → Bool #

(/=)PrtclState crypto → PrtclState crypto → Bool #

Show (PrtclState crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

showsPrecIntPrtclState crypto → ShowS #

showPrtclState crypto → String #

showList ∷ [PrtclState crypto] → ShowS #

Generic (PrtclState crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Associated Types

type Rep (PrtclState crypto) ∷ TypeType #

Methods

fromPrtclState crypto → Rep (PrtclState crypto) x #

toRep (PrtclState crypto) x → PrtclState crypto #

Crypto crypto ⇒ ToCBOR (PrtclState crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

toCBORPrtclState crypto → Encoding Source #

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

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

Crypto crypto ⇒ FromCBOR (PrtclState crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

fromCBORDecoder s (PrtclState crypto) Source #

labelProxy (PrtclState crypto) → Text Source #

Crypto crypto ⇒ NoThunks (PrtclState crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

noThunks ∷ Context → PrtclState crypto → IO (Maybe ThunkInfo)

wNoThunks ∷ Context → PrtclState crypto → IO (Maybe ThunkInfo)

showTypeOfProxy (PrtclState crypto) → String

type Rep (PrtclState crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type Rep (PrtclState crypto) = D1 ('MetaData "PrtclState" "Shelley.Spec.Ledger.STS.Prtcl" "shelley-spec-ledger-0.1.0.0-inplace" 'False) (C1 ('MetaCons "PrtclState" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (KeyHash 'BlockIssuer crypto) Word64)) :*: (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Nonce))))

data PrtclPredicateFailure crypto Source #

Instances

Instances details
VRFAlgorithm (VRF crypto) ⇒ Eq (PrtclPredicateFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

VRFAlgorithm (VRF crypto) ⇒ Show (PrtclPredicateFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Generic (PrtclPredicateFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Associated Types

type Rep (PrtclPredicateFailure crypto) ∷ TypeType #

Methods

fromPrtclPredicateFailure crypto → Rep (PrtclPredicateFailure crypto) x #

toRep (PrtclPredicateFailure crypto) x → PrtclPredicateFailure crypto #

Crypto crypto ⇒ NoThunks (PrtclPredicateFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

noThunks ∷ Context → PrtclPredicateFailure crypto → IO (Maybe ThunkInfo)

wNoThunks ∷ Context → PrtclPredicateFailure crypto → IO (Maybe ThunkInfo)

showTypeOfProxy (PrtclPredicateFailure crypto) → String

type Rep (PrtclPredicateFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type Rep (PrtclPredicateFailure crypto) = D1 ('MetaData "PrtclPredicateFailure" "Shelley.Spec.Ledger.STS.Prtcl" "shelley-spec-ledger-0.1.0.0-inplace" 'False) (C1 ('MetaCons "OverlayFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (OVERLAY crypto)))) :+: C1 ('MetaCons "UpdnFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (UPDN crypto)))))

type family PredicateFailure a = (b ∷ Type) | b → 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 TICKN Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Tickn

type PredicateFailure (UPDN crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Updn

type PredicateFailure (SNAP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Snap

type PredicateFailure (RUPD era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Rupd

type PredicateFailure (PPUP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ppup

type PredicateFailure (UTXO (ShelleyEra c)) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Utxo

type PredicateFailure (UTXOW (ShelleyEra c)) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Utxow

type PredicateFailure (POOLREAP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.PoolReap

type PredicateFailure (POOL era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Pool

type PredicateFailure (NEWPP era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Newpp

type PredicateFailure (MIR era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Mir

type PredicateFailure (EPOCH era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Epoch

type PredicateFailure (NEWEPOCH era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.NewEpoch

type PredicateFailure (TICKF era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Tick

type PredicateFailure (TICK era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Tick

type PredicateFailure (DELEG era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Deleg

type PredicateFailure (DELPL era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Delpl

type PredicateFailure (DELEGS era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Delegs

type PredicateFailure (LEDGER era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ledger

type PredicateFailure (LEDGERS era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ledgers

type PredicateFailure (OCERT crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Ocert

type PredicateFailure (OVERLAY crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Overlay

type PredicateFailure (PRTCL crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

type PredicateFailure (BBODY era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Bbody

type PredicateFailure (CHAIN era) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Chain

data PrtlSeqFailure crypto Source #

Constructors

WrongSlotIntervalPrtclSeq 

Fields

WrongBlockNoPrtclSeq 

Fields

WrongBlockSequencePrtclSeq 

Fields

  • (PrevHash crypto)

    Last applied hash

  • (PrevHash crypto)

    Current block's previous hash

Instances

Instances details
Eq (PrtlSeqFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

(==)PrtlSeqFailure crypto → PrtlSeqFailure crypto → Bool #

(/=)PrtlSeqFailure crypto → PrtlSeqFailure crypto → Bool #

Show (PrtlSeqFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

showsPrecIntPrtlSeqFailure crypto → ShowS #

showPrtlSeqFailure crypto → String #

showList ∷ [PrtlSeqFailure crypto] → ShowS #

Generic (PrtlSeqFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Associated Types

type Rep (PrtlSeqFailure crypto) ∷ TypeType #

Methods

fromPrtlSeqFailure crypto → Rep (PrtlSeqFailure crypto) x #

toRep (PrtlSeqFailure crypto) x → PrtlSeqFailure crypto #

Crypto crypto ⇒ NoThunks (PrtlSeqFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

Methods

noThunks ∷ Context → PrtlSeqFailure crypto → IO (Maybe ThunkInfo)

wNoThunks ∷ Context → PrtlSeqFailure crypto → IO (Maybe ThunkInfo)

showTypeOfProxy (PrtlSeqFailure crypto) → String

type Rep (PrtlSeqFailure crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.STS.Prtcl

prtlSeqChecks ∷ (MonadError (PrtlSeqFailure crypto) m, Crypto crypto) ⇒ WithOrigin (LastAppliedBlock crypto) → BHeader crypto → m () Source #