ouroboros-consensus-cardano-0.25.1.0: The instantation of the Ouroboros consensus layer used by Cardano
Safe HaskellNone
LanguageHaskell2010

Ouroboros.Consensus.Shelley.Eras

Synopsis

Eras based on the Shelley ledger

data ShelleyEra Source #

Instances

Instances details
EraApi ShelleyEra 
Instance details

Defined in Cardano.Ledger.Api.Era

Associated Types

type TxUpgradeError ShelleyEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError ShelleyEra 
Instance details

Defined in Cardano.Ledger.Api.Era

ApplyTx ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.API.Mempool

ApplyBlock ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.API.Validation

ShelleyEraScript ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Scripts

ShelleyEraAccounts ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.State.Account

EraTransition ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

ShelleyEraTxBody ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxBody

ShelleyEraTxCert ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxCert

GetLedgerView ShelleyEra 
Instance details

Defined in Cardano.Protocol.TPraos.API

ShelleyBasedEra ShelleyEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

InjectRuleFailure "BBODY" ShelleyBbodyPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Bbody

InjectRuleFailure "DELEG" ShelleyDelegPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Deleg

InjectRuleFailure "DELEGS" ShelleyDelegsPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delegs

InjectRuleFailure "DELPL" ShelleyDelplPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delpl

InjectRuleFailure "LEDGER" ShelleyLedgerPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledger

InjectRuleFailure "LEDGERS" ShelleyLedgersPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledgers

InjectRuleFailure "POOL" ShelleyPoolPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Pool

InjectRuleFailure "PPUP" ShelleyPpupPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ppup

InjectRuleFailure "UTXO" ShelleyUtxoPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxo

InjectRuleFailure "UTXOW" ShelleyUtxowPredFailure ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxow

FromCBOR (LegacyPParams ShelleyEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

ToCBOR (LegacyPParams ShelleyEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

DecCBOR (LegacyPParams ShelleyEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

EncCBOR (LegacyPParams ShelleyEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

Generic (TransitionConfig ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

Associated Types

type Rep (TransitionConfig ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

type Rep (TransitionConfig ShelleyEra) = D1 ('MetaData "TransitionConfig" "Cardano.Ledger.Shelley.Transition" "cardano-ledger-shelley-1.17.0.0-8a80edb5072002a4998ee19db14a6a64c625bf8325d5a4ddffc408a2da03124c" 'True) (C1 ('MetaCons "ShelleyTransitionConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "stcShelleyGenesis") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShelleyGenesis)))
Show (TransitionConfig ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

Show (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Eq (TransitionConfig ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

Eq (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Ord (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

NoThunks (TransitionConfig ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

NoThunks (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source #

When performing era translations, two eras have special behaviours on the ledger tables:

  • Byron to Shelley: as Byron has no tables, the whole UTxO set is computed as insertions, note that it uses valuesAsDiffs
  • Shelley to Allegra: some special addresses (the so called AVVM addresses), were deleted in this transition, which influenced things like the calculation of later rewards. In this transition, we consume the shelleyToAllegraAVVMsToDelete as deletions in the ledger tables.
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Condense

CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

newtype CanonicalTxIn (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

type HardForkTxOut (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.QueryHF

CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source #

Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk.

We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era.

Byron does not provide such an envelope. However, a Byron block is a CBOR 2-tuple with the first element being a tag (Word: 0 = EBB; 1 = regular block) and the second being the payload. We can easily extend this encoding format with support for Shelley, Goguen, etc.

We encode a CardanoBlock as the same CBOR 2-tuple as a Byron block, but we use the tags after 1 for the hard forks after Byron:

  1. Byron EBB
  2. Byron regular block
  3. Shelley block
  4. Allegra block
  5. Mary block
  6. Goguen block
  7. etc.

For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194

Instance details

Defined in Ouroboros.Consensus.Cardano.Node

CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Node

PraosCrypto c ⇒ ShelleyCompatible (TPraos c) ShelleyEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

ShelleyCompatible p ShelleyEraTxLimits (ShelleyBlock p ShelleyEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxBodyUpgradeError ShelleyEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError ShelleyEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type BlockBody ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.BlockBody.Internal

type NativeScript ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Scripts

type Script ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Scripts

newtype Tx ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Tx

type TxAuxData ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxAuxData

newtype TxBody ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxBody

type TxOut ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxOut

type TxWits ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxWits

type Value ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type PreviousEra ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type ProtVerHigh ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type ProtVerLow ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type TranslationContext ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Translation

type TxCert ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxCert

type TxCertUpgradeError ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.TxCert

type Genesis ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Genesis

type AccountState ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.State.Account

type Accounts ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.State.Account

type CertState ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.State.CertState

type GovState ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Governance

type InstantStake ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.State.Stake

type ScriptsNeeded ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.UTxO

newtype TransitionConfig ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

type EraRule "BBODY" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "DELEG" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "DELEGS" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "DELPL" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "EPOCH" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "LEDGER" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "LEDGERS" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "MIR" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "NEWEPOCH" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "NEWPP" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "POOL" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "POOLREAP" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "PPUP" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "RUPD" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "SNAP" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "TICK" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "TICKF" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "UPEC" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "UTXO" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRule "UTXOW" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Era

type EraRuleEvent "LEDGER" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledger

type EraRuleEvent "LEDGERS" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledgers

type EraRuleEvent "NEWEPOCH" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.NewEpoch

type EraRuleEvent "POOLREAP" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.PoolReap

type EraRuleEvent "TICK" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Tick

type EraRuleFailure "BBODY" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Bbody

type EraRuleFailure "DELEG" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Deleg

type EraRuleFailure "DELEGS" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delegs

type EraRuleFailure "DELPL" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Delpl

type EraRuleFailure "LEDGER" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledger

type EraRuleFailure "LEDGERS" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ledgers

type EraRuleFailure "POOL" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Pool

type EraRuleFailure "PPUP" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Ppup

type EraRuleFailure "UTXO" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxo

type EraRuleFailure "UTXOW" ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.Rules.Utxow

type DowngradePParams f ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.PParams

type PParamsHKD f ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.PParams

type UpgradePParams f ShelleyEra 
Instance details

Defined in Cardano.Ledger.Shelley.PParams

type RawType (TxBody ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.TxBody

type Rep (Tx ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.Tx

type Rep (Tx ShelleyEra) = D1 ('MetaData "Tx" "Cardano.Ledger.Shelley.Tx" "cardano-ledger-shelley-1.17.0.0-8a80edb5072002a4998ee19db14a6a64c625bf8325d5a4ddffc408a2da03124c" 'True) (C1 ('MetaCons "MkShelleyTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unShelleyTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ShelleyTx ShelleyEra))))
type Rep (TxBody ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.TxBody

type Rep (TxBody ShelleyEra) = D1 ('MetaData "TxBody" "Cardano.Ledger.Shelley.TxBody" "cardano-ledger-shelley-1.17.0.0-8a80edb5072002a4998ee19db14a6a64c625bf8325d5a4ddffc408a2da03124c" 'True) (C1 ('MetaCons "MkShelleyTxBody" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (MemoBytes ShelleyTxBodyRaw))))
type Rep (TransitionConfig ShelleyEra) 
Instance details

Defined in Cardano.Ledger.Shelley.Transition

type Rep (TransitionConfig ShelleyEra) = D1 ('MetaData "TransitionConfig" "Cardano.Ledger.Shelley.Transition" "cardano-ledger-shelley-1.17.0.0-8a80edb5072002a4998ee19db14a6a64c625bf8325d5a4ddffc408a2da03124c" 'True) (C1 ('MetaCons "ShelleyTransitionConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "stcShelleyGenesis") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShelleyGenesis)))
type HardForkTxMeasure (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

newtype CanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type HardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxMeasure (ShelleyBlock p ShelleyEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

data AllegraEra Source #

Instances

Instances details
AllegraEraScript AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Scripts

AllegraEraTxAuxData AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxAuxData

AllegraEraTxBody AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxBody

EraApi AllegraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

Associated Types

type TxUpgradeError AllegraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError AllegraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

GetLedgerView AllegraEra 
Instance details

Defined in Cardano.Protocol.TPraos.API

ShelleyBasedEra AllegraEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

InjectRuleFailure "UTXO" AllegraUtxoPredFailure AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

FromCBOR (LegacyPParams AllegraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

ToCBOR (LegacyPParams AllegraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

Show (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Eq (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Ord (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

NoThunks (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source #

When performing era translations, two eras have special behaviours on the ledger tables:

  • Byron to Shelley: as Byron has no tables, the whole UTxO set is computed as insertions, note that it uses valuesAsDiffs
  • Shelley to Allegra: some special addresses (the so called AVVM addresses), were deleted in this transition, which influenced things like the calculation of later rewards. In this transition, we consume the shelleyToAllegraAVVMsToDelete as deletions in the ledger tables.
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Condense

CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

newtype CanonicalTxIn (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

type HardForkTxOut (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.QueryHF

CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source #

Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk.

We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era.

Byron does not provide such an envelope. However, a Byron block is a CBOR 2-tuple with the first element being a tag (Word: 0 = EBB; 1 = regular block) and the second being the payload. We can easily extend this encoding format with support for Shelley, Goguen, etc.

We encode a CardanoBlock as the same CBOR 2-tuple as a Byron block, but we use the tags after 1 for the hard forks after Byron:

  1. Byron EBB
  2. Byron regular block
  3. Shelley block
  4. Allegra block
  5. Mary block
  6. Goguen block
  7. etc.

For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194

Instance details

Defined in Ouroboros.Consensus.Cardano.Node

CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Node

PraosCrypto c ⇒ ShelleyCompatible (TPraos c) AllegraEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

ShelleyCompatible p AllegraEraTxLimits (ShelleyBlock p AllegraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxBodyUpgradeError AllegraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError AllegraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type BlockBody AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.BlockBody

type NativeScript AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Scripts

type Script AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Scripts

newtype Tx AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Tx

type TxAuxData AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxAuxData

newtype TxBody AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxBody

type TxOut AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxOut

type TxWits AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxWits

type Value AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type PreviousEra AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type ProtVerHigh AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type ProtVerLow AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type TranslationContext AllegraEra

No context is needed to translate from Shelley to Allegra.

Instance details

Defined in Cardano.Ledger.Allegra.Era

type TxCert AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxCert

type TxCertUpgradeError AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.TxCert

type Genesis AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type AccountState AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.State.Account

type Accounts AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.State.Account

type CertState AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.State.CertState

type GovState AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.PParams

type InstantStake AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.State.Stake

type ScriptsNeeded AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.UTxO

newtype TransitionConfig AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Transition

type EraRule "BBODY" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "DELEG" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "DELEGS" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "DELPL" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "EPOCH" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "LEDGER" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "LEDGERS" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "MIR" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "NEWEPOCH" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "NEWPP" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "POOL" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "POOLREAP" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "PPUP" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "RUPD" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "SNAP" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "TICK" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "TICKF" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "UPEC" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "UTXO" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRule "UTXOW" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Era

type EraRuleEvent "LEDGER" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Ledger

type EraRuleEvent "TICK" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules

type EraRuleFailure "BBODY" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Bbody

type EraRuleFailure "DELEG" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Deleg

type EraRuleFailure "DELEGS" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Delegs

type EraRuleFailure "DELPL" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Delpl

type EraRuleFailure "LEDGER" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Ledger

type EraRuleFailure "LEDGERS" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Ledgers

type EraRuleFailure "POOL" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Pool

type EraRuleFailure "PPUP" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Ppup

type EraRuleFailure "UTXO" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type EraRuleFailure "UTXOW" AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type DowngradePParams f AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.PParams

type PParamsHKD f AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.PParams

type UpgradePParams f AllegraEra 
Instance details

Defined in Cardano.Ledger.Allegra.PParams

type TranslationError AllegraEra Tx 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra PParams 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra PParamsUpdate 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra CommitteeState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra DState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra PState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra FuturePParams 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra UTxO 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra ShelleyGovState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra EpochState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra LedgerState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra NewEpochState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra UTxOState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra ProposedPPUpdates 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra Update 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra ShelleyAccounts 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra ShelleyCertState 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra ShelleyInstantStake 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra ShelleyTxOut 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type TranslationError AllegraEra ShelleyTxWits 
Instance details

Defined in Cardano.Ledger.Allegra.Translation

type RawType (TxBody AllegraEra) 
Instance details

Defined in Cardano.Ledger.Allegra.TxBody

type Rep (Tx AllegraEra) 
Instance details

Defined in Cardano.Ledger.Allegra.Tx

type Rep (Tx AllegraEra) = D1 ('MetaData "Tx" "Cardano.Ledger.Allegra.Tx" "cardano-ledger-allegra-1.8.0.0-5f5103a8feac850fc96cc839b0a3501678b395c4fb8bc104bb076309708d38b1" 'True) (C1 ('MetaCons "MkAllegraTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unAllegraTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ShelleyTx AllegraEra))))
type Rep (TxBody AllegraEra) 
Instance details

Defined in Cardano.Ledger.Allegra.TxBody

type Rep (TxBody AllegraEra) = D1 ('MetaData "TxBody" "Cardano.Ledger.Allegra.TxBody" "cardano-ledger-allegra-1.8.0.0-5f5103a8feac850fc96cc839b0a3501678b395c4fb8bc104bb076309708d38b1" 'True) (C1 ('MetaCons "MkAllegraTxBody" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (MemoBytes (AllegraTxBodyRaw () AllegraEra)))))
type HardForkTxMeasure (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

newtype CanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type HardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxMeasure (ShelleyBlock p AllegraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

data MaryEra Source #

Instances

Instances details
EraApi MaryEra 
Instance details

Defined in Cardano.Ledger.Api.Era

Associated Types

type TxUpgradeError MaryEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError MaryEra 
Instance details

Defined in Cardano.Ledger.Api.Era

MaryEraTxBody MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.TxBody

GetLedgerView MaryEra 
Instance details

Defined in Cardano.Protocol.TPraos.API

ShelleyBasedEra MaryEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

FromCBOR (LegacyPParams MaryEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

ToCBOR (LegacyPParams MaryEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

Show (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Eq (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Ord (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

NoThunks (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source #

When performing era translations, two eras have special behaviours on the ledger tables:

  • Byron to Shelley: as Byron has no tables, the whole UTxO set is computed as insertions, note that it uses valuesAsDiffs
  • Shelley to Allegra: some special addresses (the so called AVVM addresses), were deleted in this transition, which influenced things like the calculation of later rewards. In this transition, we consume the shelleyToAllegraAVVMsToDelete as deletions in the ledger tables.
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Condense

CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

newtype CanonicalTxIn (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

type HardForkTxOut (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.QueryHF

CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source #

Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk.

We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era.

Byron does not provide such an envelope. However, a Byron block is a CBOR 2-tuple with the first element being a tag (Word: 0 = EBB; 1 = regular block) and the second being the payload. We can easily extend this encoding format with support for Shelley, Goguen, etc.

We encode a CardanoBlock as the same CBOR 2-tuple as a Byron block, but we use the tags after 1 for the hard forks after Byron:

  1. Byron EBB
  2. Byron regular block
  3. Shelley block
  4. Allegra block
  5. Mary block
  6. Goguen block
  7. etc.

For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194

Instance details

Defined in Ouroboros.Consensus.Cardano.Node

CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Node

PraosCrypto c ⇒ ShelleyCompatible (TPraos c) MaryEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

ShelleyCompatible p MaryEraTxLimits (ShelleyBlock p MaryEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxBodyUpgradeError MaryEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError MaryEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type BlockBody MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.BlockBody

type NativeScript MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Scripts

type Script MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Scripts

newtype Tx MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Tx

type TxAuxData MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.TxAuxData

newtype TxBody MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.TxBody

type TxOut MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.TxOut

type TxWits MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.TxWits

type Value MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type PreviousEra MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type ProtVerHigh MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type ProtVerLow MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type TranslationContext MaryEra

No context is needed to translate from Allegra to Mary.

Instance details

Defined in Cardano.Ledger.Mary.Era

type TxCert MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.TxCert

type TxCertUpgradeError MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.TxCert

type Genesis MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type MemoHashIndex MaryTxBodyRaw 
Instance details

Defined in Cardano.Ledger.Mary.TxBody

type AccountState MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.State.Account

type Accounts MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.State.Account

type CertState MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.State.CertState

type GovState MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.PParams

type InstantStake MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.State.Stake

type ScriptsNeeded MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.UTxO

newtype TransitionConfig MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Transition

type EraRule "BBODY" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "DELEG" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "DELEGS" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "DELPL" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "EPOCH" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "LEDGER" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "LEDGERS" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "MIR" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "NEWEPOCH" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "NEWPP" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "POOL" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "POOLREAP" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "PPUP" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "RUPD" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "SNAP" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "TICK" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "TICKF" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "UPEC" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "UTXO" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRule "UTXOW" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Era

type EraRuleEvent "LEDGER" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Ledger

type EraRuleEvent "TICK" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules

type EraRuleFailure "BBODY" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Bbody

type EraRuleFailure "DELEG" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Deleg

type EraRuleFailure "DELEGS" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Delegs

type EraRuleFailure "DELPL" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Delpl

type EraRuleFailure "LEDGER" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Ledger

type EraRuleFailure "LEDGERS" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Ledgers

type EraRuleFailure "POOL" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Pool

type EraRuleFailure "PPUP" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Ppup

type EraRuleFailure "UTXO" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Utxo

type EraRuleFailure "UTXOW" MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.Rules.Utxow

type DowngradePParams f MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.PParams

type PParamsHKD f MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.PParams

type UpgradePParams f MaryEra 
Instance details

Defined in Cardano.Ledger.Mary.PParams

type TranslationError MaryEra AllegraTxAuxData 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra Tx 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra PParams 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra PParamsUpdate 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra CommitteeState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra DState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra PState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra FuturePParams 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra UTxO 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra ShelleyGovState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra EpochState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra LedgerState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra NewEpochState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra UTxOState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra ProposedPPUpdates 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra Update 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra ShelleyAccounts 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra ShelleyCertState 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra ShelleyInstantStake 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra ShelleyTxOut 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra ShelleyTxWits 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type TranslationError MaryEra (TimelockTypeType) 
Instance details

Defined in Cardano.Ledger.Mary.Translation

type RawType (TxBody MaryEra) 
Instance details

Defined in Cardano.Ledger.Mary.TxBody

type Rep (Tx MaryEra) 
Instance details

Defined in Cardano.Ledger.Mary.Tx

type Rep (Tx MaryEra) = D1 ('MetaData "Tx" "Cardano.Ledger.Mary.Tx" "cardano-ledger-mary-1.9.0.0-7522ca04dd1875f24489618cd07e722df588d2522cea9becff1b9af5bcb2ff9b" 'True) (C1 ('MetaCons "MkMaryTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unMaryTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ShelleyTx MaryEra))))
type Rep (TxBody MaryEra) 
Instance details

Defined in Cardano.Ledger.Mary.TxBody

type Rep (TxBody MaryEra) = D1 ('MetaData "TxBody" "Cardano.Ledger.Mary.TxBody" "cardano-ledger-mary-1.9.0.0-7522ca04dd1875f24489618cd07e722df588d2522cea9becff1b9af5bcb2ff9b" 'True) (C1 ('MetaCons "MkMaryTxBody" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (MemoBytes MaryTxBodyRaw))))
type HardForkTxMeasure (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

newtype CanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type HardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxMeasure (ShelleyBlock p MaryEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

data AlonzoEra Source #

Instances

Instances details
AlonzoEraPParams AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.PParams

AlonzoEraScript AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

AlonzoEraTx AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Tx

AlonzoEraTxAuxData AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxAuxData

AlonzoEraTxBody AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxBody

AlonzoEraTxOut AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxOut

EraScript AlonzoEraAlonzoEraTxWits AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxWits

AlonzoEraUTxO AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.UTxO

EraApi AlonzoEra 
Instance details

Defined in Cardano.Ledger.Api.Era

Associated Types

type TxUpgradeError AlonzoEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError AlonzoEra = AlonzoTxUpgradeError
type TxBodyUpgradeError AlonzoEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError AlonzoEra = AlonzoTxBodyUpgradeError
GetLedgerView AlonzoEra 
Instance details

Defined in Cardano.Protocol.TPraos.API

ShelleyBasedEra AlonzoEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

InjectRuleFailure "BBODY" AlonzoBbodyPredFailure AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Bbody

InjectRuleFailure "UTXO" AlonzoUtxoPredFailure AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxo

InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxos

InjectRuleFailure "UTXOW" AlonzoUtxowPredFailure AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxow

FromCBOR (LegacyPParams AlonzoEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

ToCBOR (LegacyPParams AlonzoEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

SafeToHash (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

NFData (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

Methods

rnfPlutusScript AlonzoEra → () #

Generic (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

Associated Types

type Rep (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

Show (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

Show (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Eq (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

Eq (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Ord (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

Ord (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

MemPack (PlutusScript AlonzoEra)

It might seem that this instance unnecessarily utilizes a zero Tag, but it is needed for forward compatibility with plutus scripts from future eras.

That being said, currently this instance is not used at all, since reference scripts where introduced in Babbage era and MemPack for now is only used for TxOuts

Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

NoThunks (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

NoThunks (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source #

When performing era translations, two eras have special behaviours on the ledger tables:

  • Byron to Shelley: as Byron has no tables, the whole UTxO set is computed as insertions, note that it uses valuesAsDiffs
  • Shelley to Allegra: some special addresses (the so called AVVM addresses), were deleted in this transition, which influenced things like the calculation of later rewards. In this transition, we consume the shelleyToAllegraAVVMsToDelete as deletions in the ledger tables.
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Condense

CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

newtype CanonicalTxIn (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

type HardForkTxOut (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.QueryHF

CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source #

Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk.

We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era.

Byron does not provide such an envelope. However, a Byron block is a CBOR 2-tuple with the first element being a tag (Word: 0 = EBB; 1 = regular block) and the second being the payload. We can easily extend this encoding format with support for Shelley, Goguen, etc.

We encode a CardanoBlock as the same CBOR 2-tuple as a Byron block, but we use the tags after 1 for the hard forks after Byron:

  1. Byron EBB
  2. Byron regular block
  3. Shelley block
  4. Allegra block
  5. Mary block
  6. Goguen block
  7. etc.

For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194

Instance details

Defined in Ouroboros.Consensus.Cardano.Node

CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Node

PraosCrypto c ⇒ ShelleyCompatible (TPraos c) AlonzoEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

ShelleyCompatible p AlonzoEraTxLimits (ShelleyBlock p AlonzoEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type ContextError AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Plutus.TxInfo

newtype TxInfoResult AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Plutus.TxInfo

newtype PlutusScript AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

type TxBodyUpgradeError AlonzoEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError AlonzoEra = AlonzoTxBodyUpgradeError
type TxUpgradeError AlonzoEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError AlonzoEra = AlonzoTxUpgradeError
type BlockBody AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.BlockBody.Internal

type NativeScript AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

type Script AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

newtype Tx AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Tx

type TxAuxData AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxAuxData

newtype TxBody AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxBody

type TxOut AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxOut

type TxWits AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxWits

type Value AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type PreviousEra AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type ProtVerHigh AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type ProtVerLow AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type TranslationContext AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TxCert AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxCert

type TxCertUpgradeError AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.TxCert

type Genesis AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Genesis

type AccountState AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.State.Account

type Accounts AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.State.Account

type CertState AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.State.CertState

type GovState AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.PParams

type InstantStake AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.State.Stake

type ScriptsNeeded AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.UTxO

data TransitionConfig AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Transition

type PlutusPurpose f AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

type EraRule "BBODY" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "DELEG" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "DELEGS" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "DELPL" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "EPOCH" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "LEDGER" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "LEDGERS" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "MIR" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "NEWEPOCH" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "NEWPP" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "POOL" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "POOLREAP" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "PPUP" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "RUPD" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "SNAP" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "TICK" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "TICKF" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "UPEC" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "UTXO" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "UTXOS" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRule "UTXOW" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Era

type EraRuleEvent "LEDGER" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules

type EraRuleEvent "PPUP" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Ppup

type EraRuleEvent "TICK" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules

type EraRuleFailure "BBODY" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Bbody

type EraRuleFailure "DELEG" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Deleg

type EraRuleFailure "DELEGS" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Delegs

type EraRuleFailure "DELPL" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Delpl

type EraRuleFailure "LEDGER" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Ledger

type EraRuleFailure "LEDGERS" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Ledgers

type EraRuleFailure "POOL" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Pool

type EraRuleFailure "PPUP" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Ppup

type EraRuleFailure "UTXO" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxo

type EraRuleFailure "UTXOS" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxos

type EraRuleFailure "UTXOW" AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.Rules.Utxow

type DowngradePParams f AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.PParams

type PParamsHKD f AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.PParams

type UpgradePParams f AlonzoEra 
Instance details

Defined in Cardano.Ledger.Alonzo.PParams

type TranslationError AlonzoEra Tx 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra PParams 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra CommitteeState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra DState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra PState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra FuturePParams 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra UTxO 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra ShelleyGovState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra EpochState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra LedgerState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra NewEpochState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra UTxOState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra ProposedPPUpdates 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra ShelleyAccounts 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra ShelleyCertState 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type TranslationError AlonzoEra ShelleyInstantStake 
Instance details

Defined in Cardano.Ledger.Alonzo.Translation

type RawType (TxBody AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.TxBody

type Rep (PlutusScript AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Scripts

type Rep (Tx AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Tx

type Rep (Tx AlonzoEra) = D1 ('MetaData "Tx" "Cardano.Ledger.Alonzo.Tx" "cardano-ledger-alonzo-1.14.0.0-adcc6ae3f93fa73bc3d6617b9eb5a072813ffaf556edb53c1814b260dc34a096" 'True) (C1 ('MetaCons "MkAlonzoTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unAlonzoTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (AlonzoTx AlonzoEra))))
type Rep (TxBody AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.TxBody

type Rep (TxBody AlonzoEra) = D1 ('MetaData "TxBody" "Cardano.Ledger.Alonzo.TxBody" "cardano-ledger-alonzo-1.14.0.0-adcc6ae3f93fa73bc3d6617b9eb5a072813ffaf556edb53c1814b260dc34a096" 'True) (C1 ('MetaCons "MkAlonzoTxBody" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (MemoBytes AlonzoTxBodyRaw))))
type Rep (TransitionConfig AlonzoEra) 
Instance details

Defined in Cardano.Ledger.Alonzo.Transition

type Rep (TransitionConfig AlonzoEra) = D1 ('MetaData "TransitionConfig" "Cardano.Ledger.Alonzo.Transition" "cardano-ledger-alonzo-1.14.0.0-adcc6ae3f93fa73bc3d6617b9eb5a072813ffaf556edb53c1814b260dc34a096" 'False) (C1 ('MetaCons "AlonzoTransitionConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "atcAlonzoGenesis") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 AlonzoGenesis) :*: S1 ('MetaSel ('Just "atcMaryTransitionConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TransitionConfig MaryEra))))
type HardForkTxMeasure (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

newtype CanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type HardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxMeasure (ShelleyBlock p AlonzoEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

data BabbageEra Source #

Instances

Instances details
EraApi BabbageEra 
Instance details

Defined in Cardano.Ledger.Api.Era

Associated Types

type TxUpgradeError BabbageEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError BabbageEra = BabbageTxUpgradeError
type TxBodyUpgradeError BabbageEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError BabbageEra = BabbageTxBodyUpgradeError
BabbageEraPParams BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.PParams

BabbageEraTxBody BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxBody

BabbageEraTxOut BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxOut

GetLedgerView BabbageEra 
Instance details

Defined in Cardano.Protocol.TPraos.API

ShelleyBasedEra BabbageEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

InjectRuleFailure "UTXO" BabbageUtxoPredFailure BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxo

InjectRuleFailure "UTXOW" BabbageUtxowPredFailure BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxow

FromCBOR (LegacyPParams BabbageEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

ToCBOR (LegacyPParams BabbageEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

Show (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Eq (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Ord (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

NoThunks (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source #

When performing era translations, two eras have special behaviours on the ledger tables:

  • Byron to Shelley: as Byron has no tables, the whole UTxO set is computed as insertions, note that it uses valuesAsDiffs
  • Shelley to Allegra: some special addresses (the so called AVVM addresses), were deleted in this transition, which influenced things like the calculation of later rewards. In this transition, we consume the shelleyToAllegraAVVMsToDelete as deletions in the ledger tables.
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Condense

CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

newtype CanonicalTxIn (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

type HardForkTxOut (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.QueryHF

CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source #

Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk.

We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era.

Byron does not provide such an envelope. However, a Byron block is a CBOR 2-tuple with the first element being a tag (Word: 0 = EBB; 1 = regular block) and the second being the payload. We can easily extend this encoding format with support for Shelley, Goguen, etc.

We encode a CardanoBlock as the same CBOR 2-tuple as a Byron block, but we use the tags after 1 for the hard forks after Byron:

  1. Byron EBB
  2. Byron regular block
  3. Shelley block
  4. Allegra block
  5. Mary block
  6. Goguen block
  7. etc.

For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194

Instance details

Defined in Ouroboros.Consensus.Cardano.Node

CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Node

PraosCrypto c ⇒ ShelleyCompatible (Praos c) BabbageEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

(PraosCrypto c, PraosCrypto c) ⇒ ShelleyCompatible (TPraos c) BabbageEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

ShelleyCompatible p BabbageEraTxLimits (ShelleyBlock p BabbageEra) Source #

We anachronistically use ConwayMeasure in Babbage.

Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type ContextError BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxInfo

data TxInfoResult BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxInfo

data PlutusScript BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Scripts

type TxBodyUpgradeError BabbageEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError BabbageEra = BabbageTxBodyUpgradeError
type TxUpgradeError BabbageEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError BabbageEra = BabbageTxUpgradeError
type BlockBody BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.BlockBody

type NativeScript BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Scripts

type Script BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Scripts

newtype Tx BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Tx

type TxAuxData BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxAuxData

newtype TxBody BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxBody

type TxOut BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxOut

type TxWits BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxWits

type Value BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type PreviousEra BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type ProtVerHigh BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type ProtVerLow BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type TranslationContext BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type TxCert BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxCert

type TxCertUpgradeError BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.TxCert

type Genesis BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type AccountState BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.State.Account

type Accounts BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.State.Account

type CertState BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.State.CertState

type GovState BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.PParams

type InstantStake BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.State.Stake

type ScriptsNeeded BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.UTxO

newtype TransitionConfig BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Transition

type PlutusPurpose f BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Scripts

type EraRule "BBODY" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "DELEG" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "DELEGS" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "DELPL" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "EPOCH" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "LEDGER" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "LEDGERS" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "MIR" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "NEWEPOCH" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "NEWPP" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "POOL" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "POOLREAP" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "PPUP" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "RUPD" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "SNAP" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "TICK" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "TICKF" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "UPEC" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "UTXO" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "UTXOS" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRule "UTXOW" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Era

type EraRuleEvent "LEDGER" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules

type EraRuleEvent "PPUP" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules

type EraRuleEvent "TICK" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules

type EraRuleEvent "UTXOS" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxos

type EraRuleFailure "BBODY" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Bbody

type EraRuleFailure "DELEG" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Deleg

type EraRuleFailure "DELEGS" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Delegs

type EraRuleFailure "DELPL" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Delpl

type EraRuleFailure "LEDGER" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Ledger

type EraRuleFailure "LEDGERS" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Ledgers

type EraRuleFailure "POOL" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Pool

type EraRuleFailure "PPUP" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Ppup

type EraRuleFailure "UTXO" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxo

type EraRuleFailure "UTXOS" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxos

type EraRuleFailure "UTXOW" BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.Rules.Utxow

type DowngradePParams f BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.PParams

type PParamsHKD f BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.PParams

type UpgradePParams f BabbageEra 
Instance details

Defined in Cardano.Ledger.Babbage.PParams

type TranslationError BabbageEra Tx 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra PParams 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra CommitteeState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra DState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra PState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra FuturePParams 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra UTxO 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra ShelleyGovState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra EpochState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra LedgerState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra NewEpochState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra UTxOState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra ProposedPPUpdates 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra ShelleyAccounts 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra ShelleyCertState 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type TranslationError BabbageEra ShelleyInstantStake 
Instance details

Defined in Cardano.Ledger.Babbage.Translation

type RawType (TxBody BabbageEra) 
Instance details

Defined in Cardano.Ledger.Babbage.TxBody

type Rep (PlutusScript BabbageEra) 
Instance details

Defined in Cardano.Ledger.Babbage.Scripts

type Rep (PlutusScript BabbageEra) = D1 ('MetaData "PlutusScript" "Cardano.Ledger.Babbage.Scripts" "cardano-ledger-babbage-1.12.0.0-b431509c46d30b50ecc6826cffd5bc4bdd492b17d273e1a74bdc2f44ae4a52d2" 'False) (C1 ('MetaCons "BabbagePlutusV1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 (Plutus 'PlutusV1))) :+: C1 ('MetaCons "BabbagePlutusV2" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 (Plutus 'PlutusV2))))
type Rep (Tx BabbageEra) 
Instance details

Defined in Cardano.Ledger.Babbage.Tx

type Rep (Tx BabbageEra) = D1 ('MetaData "Tx" "Cardano.Ledger.Babbage.Tx" "cardano-ledger-babbage-1.12.0.0-b431509c46d30b50ecc6826cffd5bc4bdd492b17d273e1a74bdc2f44ae4a52d2" 'True) (C1 ('MetaCons "MkBabbageTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unBabbageTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (AlonzoTx BabbageEra))))
type Rep (TxBody BabbageEra) 
Instance details

Defined in Cardano.Ledger.Babbage.TxBody

type HardForkTxMeasure (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

newtype CanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type HardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxMeasure (ShelleyBlock p BabbageEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

data ConwayEra Source #

Instances

Instances details
EraApi ConwayEra 
Instance details

Defined in Cardano.Ledger.Api.Era

Associated Types

type TxUpgradeError ConwayEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError ConwayEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError ConwayEra = ConwayTxBodyUpgradeError
ConwayEraGov ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Governance

ConwayEraPParams ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.PParams

Methods

modifiedPPGroupsPParamsUpdate ConwayEraSet PPGroups Source #

ppuWellFormedProtVerPParamsUpdate ConwayEraBool Source #

hkdPoolVotingThresholdsL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f PoolVotingThresholds) Source #

hkdDRepVotingThresholdsL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f DRepVotingThresholds) Source #

hkdCommitteeMinSizeL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f Natural) Source #

hkdCommitteeMaxTermLengthL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f EpochInterval) Source #

hkdGovActionLifetimeL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f EpochInterval) Source #

hkdGovActionDepositL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f Coin) Source #

hkdDRepDepositCompactL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f (CompactForm Coin)) Source #

hkdDRepActivityL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f EpochInterval) Source #

hkdMinFeeRefScriptCostPerByteL ∷ ∀ (f ∷ TypeType). HKDFunctor f ⇒ Lens' (PParamsHKD f ConwayEra) (HKD f NonNegativeInterval) Source #

ppMaxRefScriptSizePerTxGSimpleGetter (PParams ConwayEra) Word32 Source #

ppMaxRefScriptSizePerBlockGSimpleGetter (PParams ConwayEra) Word32 Source #

ppRefScriptCostMultiplierGSimpleGetter (PParams ConwayEra) PositiveInterval Source #

ppRefScriptCostStrideGSimpleGetter (PParams ConwayEra) (NonZero Word32) Source #

ConwayEraScript ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Scripts

ConwayEraAccounts ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.State.Account

ConwayEraCertState ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.State.CertState

ConwayEraTransition ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Transition

ConwayEraTxBody ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxBody

ConwayEraTxCert ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxCert

Methods

mkRegDepositTxCertStakeCredentialCoinTxCert ConwayEra Source #

getRegDepositTxCertTxCert ConwayEraMaybe (StakeCredential, Coin) Source #

mkUnRegDepositTxCertStakeCredentialCoinTxCert ConwayEra Source #

getUnRegDepositTxCertTxCert ConwayEraMaybe (StakeCredential, Coin) Source #

mkDelegTxCertStakeCredentialDelegateeTxCert ConwayEra Source #

getDelegTxCertTxCert ConwayEraMaybe (StakeCredential, Delegatee) Source #

mkRegDepositDelegTxCertStakeCredentialDelegateeCoinTxCert ConwayEra Source #

getRegDepositDelegTxCertTxCert ConwayEraMaybe (StakeCredential, Delegatee, Coin) Source #

mkAuthCommitteeHotKeyTxCertCredential 'ColdCommitteeRoleCredential 'HotCommitteeRoleTxCert ConwayEra Source #

getAuthCommitteeHotKeyTxCertTxCert ConwayEraMaybe (Credential 'ColdCommitteeRole, Credential 'HotCommitteeRole) Source #

mkResignCommitteeColdTxCertCredential 'ColdCommitteeRoleStrictMaybe AnchorTxCert ConwayEra Source #

getResignCommitteeColdTxCertTxCert ConwayEraMaybe (Credential 'ColdCommitteeRole, StrictMaybe Anchor) Source #

mkRegDRepTxCertCredential 'DRepRoleCoinStrictMaybe AnchorTxCert ConwayEra Source #

getRegDRepTxCertTxCert ConwayEraMaybe (Credential 'DRepRole, Coin, StrictMaybe Anchor) Source #

mkUnRegDRepTxCertCredential 'DRepRoleCoinTxCert ConwayEra Source #

getUnRegDRepTxCertTxCert ConwayEraMaybe (Credential 'DRepRole, Coin) Source #

mkUpdateDRepTxCertCredential 'DRepRoleStrictMaybe AnchorTxCert ConwayEra Source #

getUpdateDRepTxCertTxCert ConwayEraMaybe (Credential 'DRepRole, StrictMaybe Anchor) Source #

GetLedgerView ConwayEra 
Instance details

Defined in Cardano.Protocol.TPraos.API

ShelleyBasedEra ConwayEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

ConwayEraPlutusTxInfo 'PlutusV3 ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxInfo

InjectRuleEvent "UTXOS" ConwayUtxosEvent ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxos

InjectRuleFailure "BBODY" ConwayBbodyPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Bbody

InjectRuleFailure "CERT" ConwayCertPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Cert

InjectRuleFailure "CERTS" ConwayCertsPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Certs

InjectRuleFailure "DELEG" ConwayDelegPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Deleg

InjectRuleFailure "GOV" ConwayGovPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Gov

InjectRuleFailure "GOVCERT" ConwayGovCertPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.GovCert

InjectRuleFailure "LEDGER" ConwayLedgerPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ledger

InjectRuleFailure "UTXO" ConwayUtxoPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxo

InjectRuleFailure "UTXOS" ConwayUtxosPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxos

InjectRuleFailure "UTXOW" ConwayUtxowPredFailure ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxow

FromCBOR (LegacyPParams ConwayEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

ToCBOR (LegacyPParams ConwayEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

Show (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Eq (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Ord (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

NoThunks (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source #

When performing era translations, two eras have special behaviours on the ledger tables:

  • Byron to Shelley: as Byron has no tables, the whole UTxO set is computed as insertions, note that it uses valuesAsDiffs
  • Shelley to Allegra: some special addresses (the so called AVVM addresses), were deleted in this transition, which influenced things like the calculation of later rewards. In this transition, we consume the shelleyToAllegraAVVMsToDelete as deletions in the ledger tables.
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Condense

CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

newtype CanonicalTxIn (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

type HardForkTxOut (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.QueryHF

CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source #

Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk.

We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era.

Byron does not provide such an envelope. However, a Byron block is a CBOR 2-tuple with the first element being a tag (Word: 0 = EBB; 1 = regular block) and the second being the payload. We can easily extend this encoding format with support for Shelley, Goguen, etc.

We encode a CardanoBlock as the same CBOR 2-tuple as a Byron block, but we use the tags after 1 for the hard forks after Byron:

  1. Byron EBB
  2. Byron regular block
  3. Shelley block
  4. Allegra block
  5. Mary block
  6. Goguen block
  7. etc.

For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194

Instance details

Defined in Ouroboros.Consensus.Cardano.Node

CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Node

PraosCrypto c ⇒ ShelleyCompatible (Praos c) ConwayEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

(PraosCrypto c, PraosCrypto c) ⇒ ShelleyCompatible (TPraos c) ConwayEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

ShelleyCompatible p ConwayEraTxLimits (ShelleyBlock p ConwayEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type ContextError ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxInfo

data TxInfoResult ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxInfo

data PlutusScript ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Scripts

type TxBodyUpgradeError ConwayEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxBodyUpgradeError ConwayEra = ConwayTxBodyUpgradeError
type TxUpgradeError ConwayEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type BlockBody ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.BlockBody

type NativeScript ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Scripts

type Script ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Scripts

newtype Tx ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Tx

type TxAuxData ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxAuxData

newtype TxBody ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxBody

type TxOut ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxOut

type TxWits ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxWits

type Value ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type PreviousEra ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type ProtVerHigh ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type ProtVerLow ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type TranslationContext ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TxCert ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxCert

type TxCertUpgradeError ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.TxCert

type Genesis ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Genesis

type AccountState ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.State.Account

type Accounts ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.State.Account

type CertState ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.State.CertState

type GovState ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Governance

type InstantStake ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.State.Stake

type ScriptsNeeded ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.UTxO

data TransitionConfig ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Transition

type PlutusPurpose f ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Scripts

type EraRule "BBODY" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "CERT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "CERTS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "DELEG" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "DELEGS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "DELEGS" ConwayEra = VoidEraRule "DELEGS" ConwayEra
type EraRule "ENACT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "EPOCH" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "GOV" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "GOVCERT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "HARDFORK" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "LEDGER" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "LEDGERS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "MEMPOOL" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "MIR" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "NEWEPOCH" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "NEWPP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "NEWPP" ConwayEra = VoidEraRule "NEWPP" ConwayEra
type EraRule "POOL" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "POOLREAP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "PPUP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "PPUP" ConwayEra = VoidEraRule "PPUP" ConwayEra
type EraRule "RATIFY" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "RUPD" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "SNAP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "TICK" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "TICKF" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "UPEC" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "UPEC" ConwayEra = VoidEraRule "UPEC" ConwayEra
type EraRule "UTXO" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "UTXOS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRule "UTXOW" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleEvent "BBODY" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Bbody

type EraRuleEvent "CERT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Cert

type EraRuleEvent "CERTS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Certs

type EraRuleEvent "DELEG" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Deleg

type EraRuleEvent "DELEGS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleEvent "DELEGS" ConwayEra = VoidEraRule "DELEGS" ConwayEra
type EraRuleEvent "ENACT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Enact

type EraRuleEvent "EPOCH" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Epoch

type EraRuleEvent "GOV" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Gov

type EraRuleEvent "GOVCERT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.GovCert

type EraRuleEvent "GOVCERT" ConwayEra = VoidEraRule "GOVCERT" ConwayEra
type EraRuleEvent "HARDFORK" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.HardFork

type EraRuleEvent "LEDGER" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ledger

type EraRuleEvent "LEDGERS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ledgers

type EraRuleEvent "MIR" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleEvent "NEWEPOCH" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.NewEpoch

type EraRuleEvent "NEWPP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleEvent "POOL" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Pool

type EraRuleEvent "PPUP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleEvent "TICK" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules

type EraRuleEvent "UPEC" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleEvent "UTXO" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxo

type EraRuleEvent "UTXOS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxos

type EraRuleEvent "UTXOW" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxow

type EraRuleFailure "BBODY" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Bbody

type EraRuleFailure "CERT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Cert

type EraRuleFailure "CERTS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Certs

type EraRuleFailure "DELEG" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Deleg

type EraRuleFailure "DELEGS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleFailure "GOV" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Gov

type EraRuleFailure "GOVCERT" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.GovCert

type EraRuleFailure "LEDGER" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ledger

type EraRuleFailure "LEDGERS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Ledgers

type EraRuleFailure "MIR" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleFailure "NEWPP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleFailure "POOL" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Pool

type EraRuleFailure "PPUP" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleFailure "UPEC" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Era

type EraRuleFailure "UTXO" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxo

type EraRuleFailure "UTXOS" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxos

type EraRuleFailure "UTXOW" ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.Rules.Utxow

type DowngradePParams f ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.PParams

type PParamsHKD f ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.PParams

type UpgradePParams f ConwayEra 
Instance details

Defined in Cardano.Ledger.Conway.PParams

type TranslationError ConwayEra Tx 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra PParams 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra DState 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra PState 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra FuturePParams 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra UTxO 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra EpochState 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra LedgerState 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra NewEpochState 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type TranslationError ConwayEra UTxOState 
Instance details

Defined in Cardano.Ledger.Conway.Translation

type RawType (TxBody ConwayEra) 
Instance details

Defined in Cardano.Ledger.Conway.TxBody

type Rep (PlutusScript ConwayEra) 
Instance details

Defined in Cardano.Ledger.Conway.Scripts

type Rep (PlutusScript ConwayEra) = D1 ('MetaData "PlutusScript" "Cardano.Ledger.Conway.Scripts" "cardano-ledger-conway-1.20.0.0-166e23b7a49be328986fc5fb6574ef66854c3858cc6d64d4e21944074336cb98" 'False) (C1 ('MetaCons "ConwayPlutusV1" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 (Plutus 'PlutusV1))) :+: (C1 ('MetaCons "ConwayPlutusV2" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 (Plutus 'PlutusV2))) :+: C1 ('MetaCons "ConwayPlutusV3" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 (Plutus 'PlutusV3)))))
type Rep (Tx ConwayEra) 
Instance details

Defined in Cardano.Ledger.Conway.Tx

type Rep (Tx ConwayEra) = D1 ('MetaData "Tx" "Cardano.Ledger.Conway.Tx" "cardano-ledger-conway-1.20.0.0-166e23b7a49be328986fc5fb6574ef66854c3858cc6d64d4e21944074336cb98" 'True) (C1 ('MetaCons "MkConwayTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unConwayTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (AlonzoTx ConwayEra))))
type Rep (TxBody ConwayEra) 
Instance details

Defined in Cardano.Ledger.Conway.TxBody

type Rep (TxBody ConwayEra) = D1 ('MetaData "TxBody" "Cardano.Ledger.Conway.TxBody" "cardano-ledger-conway-1.20.0.0-166e23b7a49be328986fc5fb6574ef66854c3858cc6d64d4e21944074336cb98" 'True) (C1 ('MetaCons "MkConwayTxBody" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (MemoBytes ConwayTxBodyRaw))))
type Rep (TransitionConfig ConwayEra) 
Instance details

Defined in Cardano.Ledger.Conway.Transition

type Rep (TransitionConfig ConwayEra) = D1 ('MetaData "TransitionConfig" "Cardano.Ledger.Conway.Transition" "cardano-ledger-conway-1.20.0.0-166e23b7a49be328986fc5fb6574ef66854c3858cc6d64d4e21944074336cb98" 'False) (C1 ('MetaCons "ConwayTransitionConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "ctcConwayGenesis") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ConwayGenesis) :*: S1 ('MetaSel ('Just "ctcBabbageTransitionConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TransitionConfig BabbageEra))))
type HardForkTxMeasure (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

newtype CanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type HardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxMeasure (ShelleyBlock p ConwayEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

data DijkstraEra Source #

Instances

Instances details
EraApi DijkstraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

DijkstraEraPParams DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.PParams

GetLedgerView DijkstraEra 
Instance details

Defined in Cardano.Protocol.TPraos.API

ShelleyBasedEra DijkstraEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

FromCBOR (LegacyPParams DijkstraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

ToCBOR (LegacyPParams DijkstraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Query.LegacyPParams

Show (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Eq (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Ord (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

NoThunks (CanonicalTxIn (CardanoEras c)) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source #

When performing era translations, two eras have special behaviours on the ledger tables:

  • Byron to Shelley: as Byron has no tables, the whole UTxO set is computed as insertions, note that it uses valuesAsDiffs
  • Shelley to Allegra: some special addresses (the so called AVVM addresses), were deleted in this transition, which influenced things like the calculation of later rewards. In this transition, we consume the shelleyToAllegraAVVMsToDelete as deletions in the ledger tables.
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Condense

CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

newtype CanonicalTxIn (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

Associated Types

type HardForkTxOut (CardanoEras c) 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.QueryHF

CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source #

Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk.

We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era.

Byron does not provide such an envelope. However, a Byron block is a CBOR 2-tuple with the first element being a tag (Word: 0 = EBB; 1 = regular block) and the second being the payload. We can easily extend this encoding format with support for Shelley, Goguen, etc.

We encode a CardanoBlock as the same CBOR 2-tuple as a Byron block, but we use the tags after 1 for the hard forks after Byron:

  1. Byron EBB
  2. Byron regular block
  3. Shelley block
  4. Allegra block
  5. Mary block
  6. Goguen block
  7. etc.

For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194

Instance details

Defined in Ouroboros.Consensus.Cardano.Node

CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Node

PraosCrypto c ⇒ ShelleyCompatible (Praos c) DijkstraEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

(PraosCrypto c, PraosCrypto c) ⇒ ShelleyCompatible (TPraos c) DijkstraEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.HFEras

ShelleyCompatible p DijkstraEraTxLimits (ShelleyBlock p DijkstraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type ContextError DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxInfo

data TxInfoResult DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxInfo

newtype PlutusScript DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Scripts

type TxBodyUpgradeError DijkstraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type TxUpgradeError DijkstraEra 
Instance details

Defined in Cardano.Ledger.Api.Era

type BlockBody DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.BlockBody

type NativeScript DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Scripts

type Script DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Scripts

newtype Tx DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Tx

type TxAuxData DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxAuxData

newtype TxBody DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxBody

type TxOut DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxOut

type TxWits DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxWits

type Value DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type PreviousEra DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type ProtVerHigh DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type ProtVerLow DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type TranslationContext DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TxCert DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxCert

type TxCertUpgradeError DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxCert

type Genesis DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Genesis

type AccountState DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.State.Account

type Accounts DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.State.Account

type CertState DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.State.CertState

type GovState DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Governance

type InstantStake DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.State.Stake

type ScriptsNeeded DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.UTxO

data TransitionConfig DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Transition

type PlutusPurpose f DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Scripts

type EraRule "BBODY" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "CERT" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "CERTS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "DELEG" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "DELEGS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "DELEGS" DijkstraEra = VoidEraRule "DELEGS" DijkstraEra
type EraRule "ENACT" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "EPOCH" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "GOV" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "GOVCERT" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "HARDFORK" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "LEDGER" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "LEDGERS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "MEMPOOL" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "MIR" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "NEWEPOCH" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "NEWPP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "POOL" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "POOLREAP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "PPUP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "RATIFY" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "RUPD" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "SNAP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "TICK" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "TICKF" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "UPEC" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "UTXO" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "UTXOS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRule "UTXOW" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleEvent "BBODY" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Bbody

type EraRuleEvent "CERT" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Cert

type EraRuleEvent "CERTS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Certs

type EraRuleEvent "DELEG" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Deleg

type EraRuleEvent "DELEGS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleEvent "GOV" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Gov

type EraRuleEvent "GOVCERT" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.GovCert

type EraRuleEvent "GOVCERT" DijkstraEra = VoidEraRule "GOVCERT" DijkstraEra
type EraRuleEvent "LEDGER" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Ledger

type EraRuleEvent "LEDGERS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Ledgers

type EraRuleEvent "MIR" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleEvent "NEWPP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleEvent "POOL" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Pool

type EraRuleEvent "PPUP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleEvent "TICK" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules

type EraRuleEvent "UPEC" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleEvent "UTXO" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Utxo

type EraRuleEvent "UTXOS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Utxos

type EraRuleEvent "UTXOW" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Utxow

type EraRuleFailure "BBODY" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Bbody

type EraRuleFailure "CERT" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Cert

type EraRuleFailure "CERTS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Certs

type EraRuleFailure "DELEG" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Deleg

type EraRuleFailure "DELEGS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleFailure "GOV" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Gov

type EraRuleFailure "GOVCERT" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.GovCert

type EraRuleFailure "LEDGER" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Ledger

type EraRuleFailure "LEDGERS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Ledgers

type EraRuleFailure "MIR" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleFailure "NEWPP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleFailure "POOL" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Pool

type EraRuleFailure "PPUP" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleFailure "UPEC" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Era

type EraRuleFailure "UTXO" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Utxo

type EraRuleFailure "UTXOS" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Utxos

type EraRuleFailure "UTXOW" DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.Rules.Utxow

type DowngradePParams f DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.PParams

type PParamsHKD f DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.PParams

type UpgradePParams f DijkstraEra 
Instance details

Defined in Cardano.Ledger.Dijkstra.PParams

type TranslationError DijkstraEra ConwayGovState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra DRepPulsingState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra PulsingSnapshot 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra EnactState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra RatifyState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra GovAction 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra GovActionState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra ProposalProcedure 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra Proposals 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra Tx 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra PParams 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra DState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra PState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra FuturePParams 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra UTxO 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra EpochState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra LedgerState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra NewEpochState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type TranslationError DijkstraEra UTxOState 
Instance details

Defined in Cardano.Ledger.Dijkstra.Translation

type RawType (TxBody DijkstraEra) 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxBody

type Rep (PlutusScript DijkstraEra) 
Instance details

Defined in Cardano.Ledger.Dijkstra.Scripts

type Rep (Tx DijkstraEra) 
Instance details

Defined in Cardano.Ledger.Dijkstra.Tx

type Rep (Tx DijkstraEra) = D1 ('MetaData "Tx" "Cardano.Ledger.Dijkstra.Tx" "cardano-ledger-dijkstra-0.1.0.0-6b6955d097f88b1f0759903220c7b4ae8458cc6e387c9a209555ff982be8aea6" 'True) (C1 ('MetaCons "MkDijkstraTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unDijkstraTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (AlonzoTx DijkstraEra))))
type Rep (TxBody DijkstraEra) 
Instance details

Defined in Cardano.Ledger.Dijkstra.TxBody

type Rep (TxBody DijkstraEra) = D1 ('MetaData "TxBody" "Cardano.Ledger.Dijkstra.TxBody" "cardano-ledger-dijkstra-0.1.0.0-6b6955d097f88b1f0759903220c7b4ae8458cc6e387c9a209555ff982be8aea6" 'True) (C1 ('MetaCons "MkDijkstraTxBody" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (MemoBytes DijkstraTxBodyRaw))))
type Rep (TransitionConfig DijkstraEra) 
Instance details

Defined in Cardano.Ledger.Dijkstra.Transition

type Rep (TransitionConfig DijkstraEra) = D1 ('MetaData "TransitionConfig" "Cardano.Ledger.Dijkstra.Transition" "cardano-ledger-dijkstra-0.1.0.0-6b6955d097f88b1f0759903220c7b4ae8458cc6e387c9a209555ff982be8aea6" 'False) (C1 ('MetaCons "DijkstraTransitionConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "dtcDijkstraGenesis") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 DijkstraGenesis) :*: S1 ('MetaSel ('Just "dtcConwayTransitionConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (TransitionConfig ConwayEra))))
type HardForkTxMeasure (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

newtype CanonicalTxIn (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type HardForkTxOut (CardanoEras c) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.Ledger

type TxMeasure (ShelleyBlock p DijkstraEra) Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Mempool

Shelley-based era

data ConwayEraGovDict era where Source #

Constructors

ConwayEraGovDict ∷ ∀ era. (ConwayEraGov era, ConwayEraCertState era) ⇒ ConwayEraGovDict era 

class (EraBlockBody 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 where 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

Methods

applyShelleyBasedTxGlobalsLedgerEnv era → LedgerState era → WhetherToInterveneTx era → Except (ApplyTxError era) (LedgerState era, Validated (Tx era)) Source #

getConwayEraGovDict ∷ proxy era → Maybe (ConwayEraGovDict era) Source #

Whether the era has an instance of ConwayEraGov

Instances

Instances details
ShelleyBasedEra AllegraEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

ShelleyBasedEra AlonzoEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

ShelleyBasedEra BabbageEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

ShelleyBasedEra ConwayEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

ShelleyBasedEra DijkstraEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

ShelleyBasedEra MaryEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

ShelleyBasedEra ShelleyEra Source # 
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

Convenience functions

isBeforeConwayEra era ⇒ Proxy era → Bool Source #

Re-exports

data StandardCrypto Source #

The same crypto used on the net