Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.Shelley.Ledger.Ledger
Synopsis
- data family LedgerState blk (mk ∷ MapKind)
- newtype LedgerTables (l ∷ LedgerStateKind) (mk ∷ MapKind) = LedgerTables {
- getLedgerTables ∷ mk (TxIn l) (TxOut l)
- class (EraSegWits era, EraGov era, ApplyTx era, ApplyBlock era, EraTransition era, GetLedgerView era, NoThunks (StashedAVVMAddresses era), EncCBOR (StashedAVVMAddresses era), DecCBOR (StashedAVVMAddresses era), Show (StashedAVVMAddresses era), Eq (StashedAVVMAddresses era), DecCBOR (PredicateFailure (EraRule "LEDGER" era)), EncCBOR (PredicateFailure (EraRule "LEDGER" era)), DecCBOR (PredicateFailure (EraRule "UTXOW" era)), EncCBOR (PredicateFailure (EraRule "UTXOW" era)), Eq (PredicateFailure (EraRule "BBODY" era)), Show (PredicateFailure (EraRule "BBODY" era)), NoThunks (PredicateFailure (EraRule "BBODY" era)), NoThunks (TranslationContext era), ToCBOR (TranslationContext era), FromCBOR (TranslationContext era)) ⇒ ShelleyBasedEra era
- data ShelleyTip proto era = ShelleyTip {
- shelleyTipSlotNo ∷ !SlotNo
- shelleyTipBlockNo ∷ !BlockNo
- shelleyTipHash ∷ !(HeaderHash (ShelleyBlock proto era))
- newtype ShelleyTransition = ShelleyTransitionInfo {}
- data family Ticked (st ∷ k) ∷ k
- castShelleyTip ∷ ShelleyTip proto era → ShelleyTip proto' era'
- shelleyLedgerTipPoint ∷ ∀ proto era (mk ∷ MapKind). LedgerState (ShelleyBlock proto era) mk → Point (ShelleyBlock proto era)
- shelleyTipToPoint ∷ WithOrigin (ShelleyTip proto era) → Point (ShelleyBlock proto era)
- data ShelleyLedgerConfig era = ShelleyLedgerConfig {}
- data ShelleyPartialLedgerConfig era = ShelleyPartialLedgerConfig {}
- mkShelleyLedgerConfig ∷ ShelleyGenesis → TranslationContext era → EpochInfo (Except PastHorizonException) → ShelleyLedgerConfig era
- shelleyEraParams ∷ ShelleyGenesis → EraParams
- shelleyEraParamsNeverHardForks ∷ ShelleyGenesis → EraParams
- shelleyLedgerGenesis ∷ ShelleyLedgerConfig era → ShelleyGenesis
- data ShelleyLedgerEvent era
- = ShelleyLedgerEventBBODY (Event (EraRule "BBODY" era))
- | ShelleyLedgerEventTICK (Event (EraRule "TICK" era))
- data ShelleyReapplyException = Show (BlockTransitionError era) ⇒ ShelleyReapplyException (BlockTransitionError era)
- getPParams ∷ EraGov era ⇒ NewEpochState era → PParams era
- decodeShelleyAnnTip ∷ Decoder s (AnnTip (ShelleyBlock proto era))
- decodeShelleyLedgerState ∷ ∀ era proto s. ShelleyCompatible proto era ⇒ Decoder s (LedgerState (ShelleyBlock proto era) EmptyMK)
- encodeShelleyAnnTip ∷ AnnTip (ShelleyBlock proto era) → Encoding
- encodeShelleyHeaderState ∷ ShelleyCompatible proto era ⇒ HeaderState (ShelleyBlock proto era) → Encoding
- encodeShelleyLedgerState ∷ ShelleyCompatible proto era ⇒ LedgerState (ShelleyBlock proto era) EmptyMK → Encoding
- slUtxoL ∷ NewEpochState era → UTxO era → (UTxO era, NewEpochState era)
Documentation
data family LedgerState blk (mk ∷ MapKind) Source #
Ledger state associated with a block
This is the Consensus notion of a Ledger ledger state. Each block type is
associated with one of the Ledger types for the ledger state. Virtually
every concept in this codebase revolves around this type, or the referenced
blk
. Whenever we use the type variable l
we intend to signal that the
expected instantiation is either a LedgerState
or some wrapper over it
(like the ExtLedgerState
).
This type is parametrized over mk ::
to express the
MapKind
LedgerTables
contained in such a LedgerState
. See LedgerTables
for a
more thorough description.
The main operations we can do with a LedgerState
are ticking (defined in
IsLedger
), and applying a block (defined in
ApplyBlock
).
Instances
newtype LedgerTables (l ∷ LedgerStateKind) (mk ∷ MapKind) Source #
The Ledger Tables represent the portion of the data on disk that has been pulled from disk and attached to the in-memory Ledger State or that will eventually be written to disk.
With UTxO-HD and the split of the Ledger ledger state into the in-memory
part and the on-disk part, this splitting was reflected in the new type
parameter added to the (Consensus)
LedgerState
, to which we refer as "the
MapKind" or mk
.
Every LedgerState
(or LedgerState
-like
type, such as the ExtLedgerState
) is
associated with a LedgerTables
and they both share the mk
. They both are
of kind LedgerStateKind
. LedgerTables
is just a way to refer only to a
partial view of the on-disk data without having the rest of the in-memory
LedgerState
in scope.
The mk
can be instantiated to anything that is map-like, i.e. that expects
two type parameters, the key and the value.
Constructors
LedgerTables | |
Fields
|
Instances
(Ord (TxIn l), Eq (TxOut l), Show (TxIn l), Show (TxOut l), NoThunks (TxIn l), NoThunks (TxOut l), MemPack (TxIn l), IndexedMemPack (MemPackIdx l EmptyMK) (TxOut l)) ⇒ HasLedgerTables (LedgerTables l) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ LedgerTables l mk → LedgerTables (LedgerTables l) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ LedgerTables l any → LedgerTables (LedgerTables l) mk → LedgerTables l mk Source # | |||||
Generic (LedgerTables l mk) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics Associated Types
Methods from ∷ LedgerTables l mk → Rep (LedgerTables l mk) x # to ∷ Rep (LedgerTables l mk) x → LedgerTables l mk # | |||||
Show (mk (TxIn l) (TxOut l)) ⇒ Show (LedgerTables l mk) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics Methods showsPrec ∷ Int → LedgerTables l mk → ShowS # show ∷ LedgerTables l mk → String # showList ∷ [LedgerTables l mk] → ShowS # | |||||
Eq (mk (TxIn l) (TxOut l)) ⇒ Eq (LedgerTables l mk) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics Methods (==) ∷ LedgerTables l mk → LedgerTables l mk → Bool # (/=) ∷ LedgerTables l mk → LedgerTables l mk → Bool # | |||||
NoThunks (mk (TxIn l) (TxOut l)) ⇒ NoThunks (LedgerTables l mk) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics | |||||
type TxIn (LedgerTables l) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics | |||||
type TxOut (LedgerTables l) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics | |||||
type Rep (LedgerTables l mk) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics type Rep (LedgerTables l mk) = D1 ('MetaData "LedgerTables" "Ouroboros.Consensus.Ledger.Tables.Basics" "ouroboros-consensus-0.26.0.0-inplace" 'True) (C1 ('MetaCons "LedgerTables" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLedgerTables") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (mk (TxIn l) (TxOut l))))) | |||||
type SerializeTablesHint (LedgerTables l ValuesMK) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables | |||||
type InitHint (LedgerTables l ValuesMK) | |||||
type ReadHint (LedgerTables l ValuesMK) | |||||
type WriteHint (LedgerTables l DiffMK) | |||||
class (EraSegWits era, EraGov era, ApplyTx era, ApplyBlock era, EraTransition era, GetLedgerView era, NoThunks (StashedAVVMAddresses era), EncCBOR (StashedAVVMAddresses era), DecCBOR (StashedAVVMAddresses era), Show (StashedAVVMAddresses era), Eq (StashedAVVMAddresses era), DecCBOR (PredicateFailure (EraRule "LEDGER" era)), EncCBOR (PredicateFailure (EraRule "LEDGER" era)), DecCBOR (PredicateFailure (EraRule "UTXOW" era)), EncCBOR (PredicateFailure (EraRule "UTXOW" era)), Eq (PredicateFailure (EraRule "BBODY" era)), Show (PredicateFailure (EraRule "BBODY" era)), NoThunks (PredicateFailure (EraRule "BBODY" era)), NoThunks (TranslationContext era), ToCBOR (TranslationContext era), FromCBOR (TranslationContext era)) ⇒ ShelleyBasedEra era Source #
Consensus often needs some more functionality than the ledger currently provides.
Either the functionality shouldn't or can't live in the ledger, in which case
it can be part and remain part of ShelleyBasedEra
. Or, the functionality
should live in the ledger, but hasn't yet been added to the ledger, or it
hasn't yet been propagated to this repository, in which case it can be added
to this class until that is the case.
If this class becomes redundant, We can move it to ledger and re-export it from here.
TODO Currently we include some constraints on the update state which are needed to determine the hard fork point. In the future this should be replaced with an appropriate API - see https://github.com/IntersectMBO/ouroboros-network/issues/2890
Minimal complete definition
Instances
ShelleyBasedEra AllegraEra Source # | |
Defined in Ouroboros.Consensus.Shelley.Eras Methods applyShelleyBasedTx ∷ Globals → LedgerEnv AllegraEra → LedgerState AllegraEra → WhetherToIntervene → Tx AllegraEra → Except (ApplyTxError AllegraEra) (LedgerState AllegraEra, Validated (Tx AllegraEra)) Source # getConwayEraGovDict ∷ proxy AllegraEra → Maybe (ConwayEraGovDict AllegraEra) Source # | |
ShelleyBasedEra AlonzoEra Source # | |
Defined in Ouroboros.Consensus.Shelley.Eras Methods applyShelleyBasedTx ∷ Globals → LedgerEnv AlonzoEra → LedgerState AlonzoEra → WhetherToIntervene → Tx AlonzoEra → Except (ApplyTxError AlonzoEra) (LedgerState AlonzoEra, Validated (Tx AlonzoEra)) Source # getConwayEraGovDict ∷ proxy AlonzoEra → Maybe (ConwayEraGovDict AlonzoEra) Source # | |
ShelleyBasedEra BabbageEra Source # | |
Defined in Ouroboros.Consensus.Shelley.Eras Methods applyShelleyBasedTx ∷ Globals → LedgerEnv BabbageEra → LedgerState BabbageEra → WhetherToIntervene → Tx BabbageEra → Except (ApplyTxError BabbageEra) (LedgerState BabbageEra, Validated (Tx BabbageEra)) Source # getConwayEraGovDict ∷ proxy BabbageEra → Maybe (ConwayEraGovDict BabbageEra) Source # | |
ShelleyBasedEra ConwayEra Source # | |
Defined in Ouroboros.Consensus.Shelley.Eras Methods applyShelleyBasedTx ∷ Globals → LedgerEnv ConwayEra → LedgerState ConwayEra → WhetherToIntervene → Tx ConwayEra → Except (ApplyTxError ConwayEra) (LedgerState ConwayEra, Validated (Tx ConwayEra)) Source # getConwayEraGovDict ∷ proxy ConwayEra → Maybe (ConwayEraGovDict ConwayEra) Source # | |
ShelleyBasedEra MaryEra Source # | |
Defined in Ouroboros.Consensus.Shelley.Eras Methods applyShelleyBasedTx ∷ Globals → LedgerEnv MaryEra → LedgerState MaryEra → WhetherToIntervene → Tx MaryEra → Except (ApplyTxError MaryEra) (LedgerState MaryEra, Validated (Tx MaryEra)) Source # getConwayEraGovDict ∷ proxy MaryEra → Maybe (ConwayEraGovDict MaryEra) Source # | |
ShelleyBasedEra ShelleyEra Source # | |
Defined in Ouroboros.Consensus.Shelley.Eras Methods applyShelleyBasedTx ∷ Globals → LedgerEnv ShelleyEra → LedgerState ShelleyEra → WhetherToIntervene → Tx ShelleyEra → Except (ApplyTxError ShelleyEra) (LedgerState ShelleyEra, Validated (Tx ShelleyEra)) Source # getConwayEraGovDict ∷ proxy ShelleyEra → Maybe (ConwayEraGovDict ShelleyEra) Source # |
data ShelleyTip proto era Source #
Constructors
ShelleyTip | |
Fields
|
Instances
(ShelleyBasedEra era, ShelleyBasedEra (PreviousEra era), Era (PreviousEra era)) ⇒ TranslateEra era (ShelleyTip proto) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.ShelleyHFC Associated Types
Methods translateEra ∷ TranslationContext era → ShelleyTip proto (PreviousEra era) → Except (TranslationError era (ShelleyTip proto)) (ShelleyTip proto era) Source # | |||||
Generic (ShelleyTip proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Associated Types
Methods from ∷ ShelleyTip proto era → Rep (ShelleyTip proto era) x # to ∷ Rep (ShelleyTip proto era) x → ShelleyTip proto era # | |||||
Show (ShelleyTip proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods showsPrec ∷ Int → ShelleyTip proto era → ShowS # show ∷ ShelleyTip proto era → String # showList ∷ [ShelleyTip proto era] → ShowS # | |||||
Eq (ShelleyTip proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods (==) ∷ ShelleyTip proto era → ShelleyTip proto era → Bool # (/=) ∷ ShelleyTip proto era → ShelleyTip proto era → Bool # | |||||
NoThunks (ShelleyTip proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger | |||||
type TranslationError era (ShelleyTip proto) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.ShelleyHFC | |||||
type Rep (ShelleyTip proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger type Rep (ShelleyTip proto era) = D1 ('MetaData "ShelleyTip" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyTip" 'PrefixI 'True) (S1 ('MetaSel ('Just "shelleyTipSlotNo") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SlotNo) :*: (S1 ('MetaSel ('Just "shelleyTipBlockNo") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 BlockNo) :*: S1 ('MetaSel ('Just "shelleyTipHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HeaderHash (ShelleyBlock proto era)))))) |
newtype ShelleyTransition Source #
Information required to determine the hard fork point from Shelley to the next ledger
Constructors
ShelleyTransitionInfo | |
Fields
|
Instances
Generic ShelleyTransition Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Associated Types
Methods from ∷ ShelleyTransition → Rep ShelleyTransition x # to ∷ Rep ShelleyTransition x → ShelleyTransition # | |||||
Show ShelleyTransition Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods showsPrec ∷ Int → ShelleyTransition → ShowS # show ∷ ShelleyTransition → String # showList ∷ [ShelleyTransition] → ShowS # | |||||
Eq ShelleyTransition Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods | |||||
NoThunks ShelleyTransition Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger | |||||
type Rep ShelleyTransition Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger type Rep ShelleyTransition = D1 ('MetaData "ShelleyTransition" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'True) (C1 ('MetaCons "ShelleyTransitionInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "shelleyAfterVoting") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))) |
data family Ticked (st ∷ k) ∷ k Source #
" Ticked " piece of state, either LedgerState
or ChainDepState
Ticking refers to the passage of time (the ticking of the clock). When a
piece of state is marked as ticked, it means that time-related changes have
been applied to the state. There are exactly two methods in the interface
that do that: tickChainDepState
and
applyChainTickLedgerResult
.
Also note that a successful forecast
must equal
forecastFor
(ledgerViewForecastAt
cfg st)
slot
. Thus a
protocolLedgerView
cfg
(applyChainTick
cfg slot st)LedgerView
can only be projected
from a Ticked
state, but cannot itself be ticked.
Some examples of time related changes:
- Scheduled delegations might have been applied in Byron
- New leader schedule computed for Shelley
- Transition from Byron to Shelley activated in the hard fork combinator.
- Nonces switched out at the start of a new epoch.
Instances
Show (Ticked ()) | |||||
Bridge m a ⇒ GetTip (Ticked (LedgerState (DualBlock m a))) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual | |||||
GetTip (Ticked (LedgerState ByronBlock)) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods getTip ∷ ∀ (mk ∷ MapKind). Ticked (LedgerState ByronBlock) mk → Point (Ticked (LedgerState ByronBlock)) Source # | |||||
GetTip (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods getTip ∷ ∀ (mk ∷ MapKind). Ticked (LedgerState (ShelleyBlock proto era)) mk → Point (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||
IsLedger (LedgerState blk) ⇒ GetTip (Ticked (ExtLedgerState blk)) | |||||
Defined in Ouroboros.Consensus.Ledger.Extended Methods getTip ∷ ∀ (mk ∷ MapKind). Ticked (ExtLedgerState blk) mk → Point (Ticked (ExtLedgerState blk)) Source # | |||||
ShelleyBasedEra era ⇒ CanStowLedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods stowLedgerTables ∷ Ticked (LedgerState (ShelleyBlock proto era)) ValuesMK → Ticked (LedgerState (ShelleyBlock proto era)) EmptyMK Source # unstowLedgerTables ∷ Ticked (LedgerState (ShelleyBlock proto era)) EmptyMK → Ticked (LedgerState (ShelleyBlock proto era)) ValuesMK Source # | |||||
(Bridge m a, NoThunks (TxOut (LedgerState m)), NoThunks (TxIn (LedgerState m)), Show (TxOut (LedgerState m)), Show (TxIn (LedgerState m)), Eq (TxOut (LedgerState m)), Ord (TxIn (LedgerState m)), MemPack (TxIn (LedgerState m))) ⇒ HasLedgerTables (Ticked (LedgerState (DualBlock m a))) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState (DualBlock m a)) mk → LedgerTables (Ticked (LedgerState (DualBlock m a))) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState (DualBlock m a)) any → LedgerTables (Ticked (LedgerState (DualBlock m a))) mk → Ticked (LedgerState (DualBlock m a)) mk Source # | |||||
HasLedgerTables (Ticked (LedgerState ByronBlock)) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState ByronBlock) mk → LedgerTables (Ticked (LedgerState ByronBlock)) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState ByronBlock) any → LedgerTables (Ticked (LedgerState ByronBlock)) mk → Ticked (LedgerState ByronBlock) mk Source # | |||||
ShelleyBasedEra era ⇒ HasLedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState (ShelleyBlock proto era)) mk → LedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState (ShelleyBlock proto era)) any → LedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) mk → Ticked (LedgerState (ShelleyBlock proto era)) mk Source # | |||||
(HasLedgerTables (Ticked (LedgerState blk)), NoThunks (TxOut (LedgerState blk)), NoThunks (TxIn (LedgerState blk)), Show (TxOut (LedgerState blk)), Show (TxIn (LedgerState blk)), Eq (TxOut (LedgerState blk)), Ord (TxIn (LedgerState blk)), MemPack (TxIn (LedgerState blk))) ⇒ HasLedgerTables (Ticked (ExtLedgerState blk)) | |||||
Defined in Ouroboros.Consensus.Ledger.Extended Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (ExtLedgerState blk) mk → LedgerTables (Ticked (ExtLedgerState blk)) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (ExtLedgerState blk) any → LedgerTables (Ticked (ExtLedgerState blk)) mk → Ticked (ExtLedgerState blk) mk Source # | |||||
LedgerTablesAreTrivial (Ticked (LedgerState ByronBlock)) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods convertMapKind ∷ ∀ (mk ∷ MapKind) (mk' ∷ MapKind). Ticked (LedgerState ByronBlock) mk → Ticked (LedgerState ByronBlock) mk' Source # | |||||
LedgerTablesAreTrivial (Ticked (LedgerState blk)) ⇒ LedgerTablesAreTrivial (Ticked (ExtLedgerState blk)) | |||||
Defined in Ouroboros.Consensus.Ledger.Extended Methods convertMapKind ∷ ∀ (mk ∷ MapKind) (mk' ∷ MapKind). Ticked (ExtLedgerState blk) mk → Ticked (ExtLedgerState blk) mk' Source # | |||||
Generic (Ticked (LedgerState ByronBlock) mk) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Associated Types
Methods from ∷ Ticked (LedgerState ByronBlock) mk → Rep (Ticked (LedgerState ByronBlock) mk) x # to ∷ Rep (Ticked (LedgerState ByronBlock) mk) x → Ticked (LedgerState ByronBlock) mk # | |||||
Generic (Ticked (LedgerState (ShelleyBlock proto era)) mk) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Associated Types
Methods from ∷ Ticked (LedgerState (ShelleyBlock proto era)) mk → Rep (Ticked (LedgerState (ShelleyBlock proto era)) mk) x # to ∷ Rep (Ticked (LedgerState (ShelleyBlock proto era)) mk) x → Ticked (LedgerState (ShelleyBlock proto era)) mk # | |||||
NoThunks (Ticked (LedgerState (DualBlock m a)) mk) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual | |||||
NoThunks (Ticked (LedgerState ByronBlock) mk) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods noThunks ∷ Context → Ticked (LedgerState ByronBlock) mk → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → Ticked (LedgerState ByronBlock) mk → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (Ticked (LedgerState ByronBlock) mk) → String Source # | |||||
Show (Ticked (f a)) ⇒ Show (((Ticked ∷ Type → Type) :.: f) a) | |||||
NoThunks (Ticked (f a)) ⇒ NoThunks (((Ticked ∷ Type → Type) :.: f) a) | |||||
data Ticked PraosState | |||||
data Ticked TPraosState | |||||
data Ticked () | |||||
Defined in Ouroboros.Consensus.Ticked | |||||
data Ticked (HardForkChainDepState xs ∷ Type) | |||||
data Ticked (HeaderState blk ∷ Type) | |||||
Defined in Ouroboros.Consensus.HeaderValidation | |||||
data Ticked (PBftState c ∷ Type) | |||||
Defined in Ouroboros.Consensus.Protocol.PBFT | |||||
newtype Ticked (WrapChainDepState blk ∷ Type) | |||||
Defined in Ouroboros.Consensus.TypeFamilyWrappers | |||||
type HeaderHash (Ticked l ∷ k) | |||||
Defined in Ouroboros.Consensus.Ticked | |||||
type TxIn (Ticked l) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics | |||||
type TxOut (Ticked l) | |||||
Defined in Ouroboros.Consensus.Ledger.Tables.Basics | |||||
data Ticked (LedgerState (HardForkBlock xs) ∷ MapKind → Type) (mk ∷ MapKind) | |||||
Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger data Ticked (LedgerState (HardForkBlock xs) ∷ MapKind → Type) (mk ∷ MapKind) = TickedHardForkLedgerState {} | |||||
data Ticked (LedgerState (DualBlock m a) ∷ MapKind → Type) (mk ∷ MapKind) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual data Ticked (LedgerState (DualBlock m a) ∷ MapKind → Type) (mk ∷ MapKind) = TickedDualLedgerState {} | |||||
data Ticked (LedgerState ByronBlock) (mk ∷ MapKind) Source # | The ticked Byron ledger state | ||||
data Ticked (LedgerState (ShelleyBlock proto era) ∷ MapKind → Type) (mk ∷ MapKind) Source # | Ticking only affects the state itself | ||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger data Ticked (LedgerState (ShelleyBlock proto era) ∷ MapKind → Type) (mk ∷ MapKind) = TickedShelleyLedgerState {
| |||||
data Ticked (ExtLedgerState blk ∷ MapKind → Type) (mk ∷ MapKind) | |||||
Defined in Ouroboros.Consensus.Ledger.Extended data Ticked (ExtLedgerState blk ∷ MapKind → Type) (mk ∷ MapKind) = TickedExtLedgerState {
| |||||
type Rep (Ticked (LedgerState ByronBlock) mk) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger type Rep (Ticked (LedgerState ByronBlock) mk) = D1 ('MetaData "Ticked" "Ouroboros.Consensus.Byron.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "TickedByronLedgerState" 'PrefixI 'True) (S1 ('MetaSel ('Just "tickedByronLedgerState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChainValidationState) :*: S1 ('MetaSel ('Just "untickedByronLedgerTransition") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ByronTransition))) | |||||
type Rep (Ticked (LedgerState (ShelleyBlock proto era)) mk) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger type Rep (Ticked (LedgerState (ShelleyBlock proto era)) mk) = D1 ('MetaData "Ticked" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "TickedShelleyLedgerState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "untickedShelleyLedgerTip") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (WithOrigin (ShelleyTip proto era))) :*: S1 ('MetaSel ('Just "tickedShelleyLedgerTransition") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShelleyTransition)) :*: (S1 ('MetaSel ('Just "tickedShelleyLedgerState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NewEpochState era)) :*: S1 ('MetaSel ('Just "tickedShelleyLedgerTables") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LedgerTables (LedgerState (ShelleyBlock proto era)) mk))))) |
castShelleyTip ∷ ShelleyTip proto era → ShelleyTip proto' era' Source #
shelleyLedgerTipPoint ∷ ∀ proto era (mk ∷ MapKind). LedgerState (ShelleyBlock proto era) mk → Point (ShelleyBlock proto era) Source #
shelleyTipToPoint ∷ WithOrigin (ShelleyTip proto era) → Point (ShelleyBlock proto era) Source #
Ledger config
data ShelleyLedgerConfig era Source #
Constructors
ShelleyLedgerConfig | |
Fields
|
Instances
Generic (ShelleyLedgerConfig era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Associated Types
Methods from ∷ ShelleyLedgerConfig era → Rep (ShelleyLedgerConfig era) x # to ∷ Rep (ShelleyLedgerConfig era) x → ShelleyLedgerConfig era # | |||||
Show (TranslationContext era) ⇒ Show (ShelleyLedgerConfig era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Methods showsPrec ∷ Int → ShelleyLedgerConfig era → ShowS # show ∷ ShelleyLedgerConfig era → String # showList ∷ [ShelleyLedgerConfig era] → ShowS # | |||||
(NoThunks (TranslationContext era), Era era) ⇒ NoThunks (ShelleyLedgerConfig era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger | |||||
(NoHardForks (ShelleyBlock proto era), ShelleyCompatible proto era) ⇒ SerialiseNodeToClient (ShelleyBlock proto era) (ShelleyLedgerConfig era) Source # | This instance uses the invariant that the | ||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods encodeNodeToClient ∷ CodecConfig (ShelleyBlock proto era) → BlockNodeToClientVersion (ShelleyBlock proto era) → ShelleyLedgerConfig era → Encoding Source # decodeNodeToClient ∷ CodecConfig (ShelleyBlock proto era) → BlockNodeToClientVersion (ShelleyBlock proto era) → ∀ s. Decoder s (ShelleyLedgerConfig era) Source # | |||||
type Rep (ShelleyLedgerConfig era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger type Rep (ShelleyLedgerConfig era) = D1 ('MetaData "ShelleyLedgerConfig" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyLedgerConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "shelleyLedgerCompactGenesis") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CompactGenesis) :*: (S1 ('MetaSel ('Just "shelleyLedgerGlobals") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Globals) :*: S1 ('MetaSel ('Just "shelleyLedgerTranslationContext") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TranslationContext era))))) |
data ShelleyPartialLedgerConfig era Source #
Constructors
ShelleyPartialLedgerConfig | |
Fields
|
Instances
Generic (ShelleyPartialLedgerConfig era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger Associated Types
Methods from ∷ ShelleyPartialLedgerConfig era → Rep (ShelleyPartialLedgerConfig era) x # to ∷ Rep (ShelleyPartialLedgerConfig era) x → ShelleyPartialLedgerConfig era # | |||||
(NoThunks (TranslationContext era), Era era) ⇒ NoThunks (ShelleyPartialLedgerConfig era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger | |||||
ShelleyBasedEra era ⇒ SerialiseNodeToClient (ShelleyBlock proto era) (ShelleyPartialLedgerConfig era) Source # | This instance uses the invariant that the | ||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods encodeNodeToClient ∷ CodecConfig (ShelleyBlock proto era) → BlockNodeToClientVersion (ShelleyBlock proto era) → ShelleyPartialLedgerConfig era → Encoding Source # decodeNodeToClient ∷ CodecConfig (ShelleyBlock proto era) → BlockNodeToClientVersion (ShelleyBlock proto era) → ∀ s. Decoder s (ShelleyPartialLedgerConfig era) Source # | |||||
type Rep (ShelleyPartialLedgerConfig era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger type Rep (ShelleyPartialLedgerConfig era) = D1 ('MetaData "ShelleyPartialLedgerConfig" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyPartialLedgerConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "shelleyLedgerConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ShelleyLedgerConfig era)) :*: S1 ('MetaSel ('Just "shelleyTriggerHardFork") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TriggerHardFork))) |
mkShelleyLedgerConfig ∷ ShelleyGenesis → TranslationContext era → EpochInfo (Except PastHorizonException) → ShelleyLedgerConfig era Source #
shelleyEraParamsNeverHardForks ∷ ShelleyGenesis → EraParams Source #
Separate variant of shelleyEraParams
to be used for a Shelley-only chain.
Auxiliary
data ShelleyLedgerEvent era Source #
All events emitted by the Shelley ledger API
Constructors
ShelleyLedgerEventBBODY (Event (EraRule "BBODY" era)) | An event emitted when (re)applying a block |
ShelleyLedgerEventTICK (Event (EraRule "TICK" era)) | An event emitted during the chain tick |
data ShelleyReapplyException Source #
Constructors
Show (BlockTransitionError era) ⇒ ShelleyReapplyException (BlockTransitionError era) |
Instances
getPParams ∷ EraGov era ⇒ NewEpochState era → PParams era Source #
Serialisation
decodeShelleyAnnTip ∷ Decoder s (AnnTip (ShelleyBlock proto era)) Source #
decodeShelleyLedgerState ∷ ∀ era proto s. ShelleyCompatible proto era ⇒ Decoder s (LedgerState (ShelleyBlock proto era) EmptyMK) Source #
encodeShelleyAnnTip ∷ AnnTip (ShelleyBlock proto era) → Encoding Source #
encodeShelleyHeaderState ∷ ShelleyCompatible proto era ⇒ HeaderState (ShelleyBlock proto era) → Encoding Source #
encodeShelleyLedgerState ∷ ShelleyCompatible proto era ⇒ LedgerState (ShelleyBlock proto era) EmptyMK → Encoding Source #
Low-level UTxO manipulations
slUtxoL ∷ NewEpochState era → UTxO era → (UTxO era, NewEpochState era) Source #
Orphan instances
GetTip (LedgerState (ShelleyBlock proto era)) Source # | |||||||||
Methods getTip ∷ ∀ (mk ∷ MapKind). LedgerState (ShelleyBlock proto era) mk → Point (LedgerState (ShelleyBlock proto era)) Source # | |||||||||
ShelleyBasedEra era ⇒ IsLedger (LedgerState (ShelleyBlock proto era)) Source # | |||||||||
Associated Types
Methods applyChainTickLedgerResult ∷ ComputeLedgerEvents → LedgerCfg (LedgerState (ShelleyBlock proto era)) → SlotNo → LedgerState (ShelleyBlock proto era) EmptyMK → LedgerResult (LedgerState (ShelleyBlock proto era)) (Ticked (LedgerState (ShelleyBlock proto era)) DiffMK) Source # | |||||||||
ShelleyBasedEra era ⇒ CanStowLedgerTables (LedgerState (ShelleyBlock proto era)) Source # | |||||||||
Methods stowLedgerTables ∷ LedgerState (ShelleyBlock proto era) ValuesMK → LedgerState (ShelleyBlock proto era) EmptyMK Source # unstowLedgerTables ∷ LedgerState (ShelleyBlock proto era) EmptyMK → LedgerState (ShelleyBlock proto era) ValuesMK Source # | |||||||||
ShelleyBasedEra era ⇒ HasLedgerTables (LedgerState (ShelleyBlock proto era)) Source # | |||||||||
Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ LedgerState (ShelleyBlock proto era) mk → LedgerTables (LedgerState (ShelleyBlock proto era)) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ LedgerState (ShelleyBlock proto era) any → LedgerTables (LedgerState (ShelleyBlock proto era)) mk → LedgerState (ShelleyBlock proto era) mk Source # | |||||||||
ShelleyCompatible proto era ⇒ SerializeTablesWithHint (LedgerState (ShelleyBlock proto era)) Source # | |||||||||
Methods encodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState (ShelleyBlock proto era)) ValuesMK) → LedgerTables (LedgerState (ShelleyBlock proto era)) ValuesMK → Encoding Source # decodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState (ShelleyBlock proto era)) ValuesMK) → Decoder s (LedgerTables (LedgerState (ShelleyBlock proto era)) ValuesMK) Source # | |||||||||
CanUpgradeLedgerTables (LedgerState (ShelleyBlock proto era)) Source # | |||||||||
Methods upgradeTables ∷ ∀ (mk1 ∷ MapKind) (mk2 ∷ MapKind). LedgerState (ShelleyBlock proto era) mk1 → LedgerState (ShelleyBlock proto era) mk2 → LedgerTables (LedgerState (ShelleyBlock proto era)) ValuesMK → LedgerTables (LedgerState (ShelleyBlock proto era)) ValuesMK Source # | |||||||||
ShelleyCompatible proto era ⇒ ApplyBlock (LedgerState (ShelleyBlock proto era)) (ShelleyBlock proto era) Source # | |||||||||
Methods applyBlockLedgerResultWithValidation ∷ ValidationPolicy → ComputeLedgerEvents → LedgerCfg (LedgerState (ShelleyBlock proto era)) → ShelleyBlock proto era → Ticked (LedgerState (ShelleyBlock proto era)) ValuesMK → Except (LedgerErr (LedgerState (ShelleyBlock proto era))) (LedgerResult (LedgerState (ShelleyBlock proto era)) (LedgerState (ShelleyBlock proto era) DiffMK)) Source # applyBlockLedgerResult ∷ ComputeLedgerEvents → LedgerCfg (LedgerState (ShelleyBlock proto era)) → ShelleyBlock proto era → Ticked (LedgerState (ShelleyBlock proto era)) ValuesMK → Except (LedgerErr (LedgerState (ShelleyBlock proto era))) (LedgerResult (LedgerState (ShelleyBlock proto era)) (LedgerState (ShelleyBlock proto era) DiffMK)) Source # reapplyBlockLedgerResult ∷ ComputeLedgerEvents → LedgerCfg (LedgerState (ShelleyBlock proto era)) → ShelleyBlock proto era → Ticked (LedgerState (ShelleyBlock proto era)) ValuesMK → LedgerResult (LedgerState (ShelleyBlock proto era)) (LedgerState (ShelleyBlock proto era) DiffMK) Source # getBlockKeySets ∷ ShelleyBlock proto era → LedgerTables (LedgerState (ShelleyBlock proto era)) KeysMK Source # | |||||||||
Generic (LedgerState (ShelleyBlock proto era) mk) Source # | |||||||||
Associated Types
Methods from ∷ LedgerState (ShelleyBlock proto era) mk → Rep (LedgerState (ShelleyBlock proto era) mk) x # to ∷ Rep (LedgerState (ShelleyBlock proto era) mk) x → LedgerState (ShelleyBlock proto era) mk # | |||||||||
(ShelleyBasedEra era, ShowMK mk) ⇒ Show (LedgerState (ShelleyBlock proto era) mk) Source # | |||||||||
Methods showsPrec ∷ Int → LedgerState (ShelleyBlock proto era) mk → ShowS # show ∷ LedgerState (ShelleyBlock proto era) mk → String # showList ∷ [LedgerState (ShelleyBlock proto era) mk] → ShowS # | |||||||||
(ShelleyBasedEra era, EqMK mk) ⇒ Eq (LedgerState (ShelleyBlock proto era) mk) Source # | |||||||||
Methods (==) ∷ LedgerState (ShelleyBlock proto era) mk → LedgerState (ShelleyBlock proto era) mk → Bool # (/=) ∷ LedgerState (ShelleyBlock proto era) mk → LedgerState (ShelleyBlock proto era) mk → Bool # | |||||||||
(ShelleyBasedEra era, NoThunksMK mk) ⇒ NoThunks (LedgerState (ShelleyBlock proto era) mk) Source # | |||||||||
Methods noThunks ∷ Context → LedgerState (ShelleyBlock proto era) mk → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → LedgerState (ShelleyBlock proto era) mk → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (LedgerState (ShelleyBlock proto era) mk) → String Source # | |||||||||
HasHardForkHistory (ShelleyBlock proto era) Source # | |||||||||
Associated Types
Methods hardForkSummary ∷ ∀ (mk ∷ MapKind). LedgerConfig (ShelleyBlock proto era) → LedgerState (ShelleyBlock proto era) mk → Summary (HardForkIndices (ShelleyBlock proto era)) Source # | |||||||||
ShelleyCompatible proto era ⇒ HasPartialLedgerConfig (ShelleyBlock proto era) Source # | |||||||||
Associated Types
Methods completeLedgerConfig ∷ proxy (ShelleyBlock proto era) → EpochInfo (Except PastHorizonException) → PartialLedgerConfig (ShelleyBlock proto era) → LedgerConfig (ShelleyBlock proto era) Source # | |||||||||
ShelleyCompatible proto era ⇒ BasicEnvelopeValidation (ShelleyBlock proto era) Source # | |||||||||
Methods expectedFirstBlockNo ∷ proxy (ShelleyBlock proto era) → BlockNo Source # expectedNextBlockNo ∷ proxy (ShelleyBlock proto era) → TipInfo (ShelleyBlock proto era) → TipInfo (ShelleyBlock proto era) → BlockNo → BlockNo Source # minimumPossibleSlotNo ∷ Proxy (ShelleyBlock proto era) → SlotNo Source # minimumNextSlotNo ∷ proxy (ShelleyBlock proto era) → TipInfo (ShelleyBlock proto era) → TipInfo (ShelleyBlock proto era) → SlotNo → SlotNo Source # | |||||||||
ShelleyCompatible proto era ⇒ ValidateEnvelope (ShelleyBlock proto era) Source # | |||||||||
Associated Types
Methods additionalEnvelopeChecks ∷ TopLevelConfig (ShelleyBlock proto era) → LedgerView (BlockProtocol (ShelleyBlock proto era)) → Header (ShelleyBlock proto era) → Except (OtherHeaderEnvelopeError (ShelleyBlock proto era)) () Source # | |||||||||
ShelleyCompatible proto era ⇒ UpdateLedger (ShelleyBlock proto era) Source # | |||||||||
GetTip (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||||||
Methods getTip ∷ ∀ (mk ∷ MapKind). Ticked (LedgerState (ShelleyBlock proto era)) mk → Point (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||||||
ShelleyCompatible proto era ⇒ CommonProtocolParams (ShelleyBlock proto era) Source # | |||||||||
Methods maxHeaderSize ∷ ∀ (mk ∷ MapKind). LedgerState (ShelleyBlock proto era) mk → Word32 Source # maxTxSize ∷ ∀ (mk ∷ MapKind). LedgerState (ShelleyBlock proto era) mk → Word32 Source # | |||||||||
ShelleyBasedEra era ⇒ CanStowLedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||||||
Methods stowLedgerTables ∷ Ticked (LedgerState (ShelleyBlock proto era)) ValuesMK → Ticked (LedgerState (ShelleyBlock proto era)) EmptyMK Source # unstowLedgerTables ∷ Ticked (LedgerState (ShelleyBlock proto era)) EmptyMK → Ticked (LedgerState (ShelleyBlock proto era)) ValuesMK Source # | |||||||||
ShelleyBasedEra era ⇒ HasLedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) Source # | |||||||||
Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState (ShelleyBlock proto era)) mk → LedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState (ShelleyBlock proto era)) any → LedgerTables (Ticked (LedgerState (ShelleyBlock proto era))) mk → Ticked (LedgerState (ShelleyBlock proto era)) mk Source # | |||||||||
(txout ~ TxOut era, MemPack txout) ⇒ IndexedMemPack (LedgerState (ShelleyBlock proto era) EmptyMK) txout Source # | |||||||||
Methods indexedPackedByteCount ∷ LedgerState (ShelleyBlock proto era) EmptyMK → txout → Int Source # indexedPackM ∷ LedgerState (ShelleyBlock proto era) EmptyMK → txout → Pack s () Source # indexedUnpackM ∷ Buffer b ⇒ LedgerState (ShelleyBlock proto era) EmptyMK → Unpack b txout Source # indexedTypeName ∷ LedgerState (ShelleyBlock proto era) EmptyMK → String Source # | |||||||||
Generic (Ticked (LedgerState (ShelleyBlock proto era)) mk) Source # | |||||||||
Associated Types
Methods from ∷ Ticked (LedgerState (ShelleyBlock proto era)) mk → Rep (Ticked (LedgerState (ShelleyBlock proto era)) mk) x # to ∷ Rep (Ticked (LedgerState (ShelleyBlock proto era)) mk) x → Ticked (LedgerState (ShelleyBlock proto era)) mk # |