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

Ouroboros.Consensus.Cardano.CanHardFork

Synopsis

Documentation

data TriggerHardFork Source #

The trigger condition that will cause the hard fork transition.

Constructors

TriggerHardForkAtVersion !Word16

Trigger the transition when the on-chain protocol major version (from the ledger state) reaches this number.

TriggerHardForkAtEpoch !EpochNo

For testing only, trigger the transition at a specific hard-coded epoch, irrespective of the ledger state.

TriggerHardForkNever

Never trigger a hard fork

Instances

Instances details
Show TriggerHardFork Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

Generic TriggerHardFork Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

Associated Types

type Rep TriggerHardFork :: Type -> Type #

NoThunks TriggerHardFork Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

type Rep TriggerHardFork Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

type Rep TriggerHardFork = D1 ('MetaData "TriggerHardFork" "Ouroboros.Consensus.Cardano.CanHardFork" "ouroboros-consensus-cardano-0.1.0.0-7Nmjb1YtTWmH6zdQxPRhTh" 'False) (C1 ('MetaCons "TriggerHardForkAtVersion" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word16)) :+: (C1 ('MetaCons "TriggerHardForkAtEpoch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochNo)) :+: C1 ('MetaCons "TriggerHardForkNever" 'PrefixI 'False) (U1 :: Type -> Type)))

data ByronPartialLedgerConfig Source #

When Byron is part of the hard-fork combinator, we use the partial ledger config. Standalone Byron uses the regular ledger config. This means that the partial ledger config is the perfect place to store the trigger condition for the hard fork to Shelley, as we don't have to modify the ledger config for standalone Byron.

Instances

Instances details
Generic ByronPartialLedgerConfig Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

Associated Types

type Rep ByronPartialLedgerConfig :: Type -> Type #

NoThunks ByronPartialLedgerConfig Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

type Rep ByronPartialLedgerConfig Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

type Rep ByronPartialLedgerConfig = D1 ('MetaData "ByronPartialLedgerConfig" "Ouroboros.Consensus.Cardano.CanHardFork" "ouroboros-consensus-cardano-0.1.0.0-7Nmjb1YtTWmH6zdQxPRhTh" 'False) (C1 ('MetaCons "ByronPartialLedgerConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronLedgerConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LedgerConfig ByronBlock)) :*: S1 ('MetaSel ('Just "byronTriggerHardFork") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TriggerHardFork)))

data ShelleyPartialLedgerConfig era Source #

Constructors

ShelleyPartialLedgerConfig 

Fields

Instances

Instances details
Generic (ShelleyPartialLedgerConfig era) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

Associated Types

type Rep (ShelleyPartialLedgerConfig era) :: Type -> Type #

ShelleyBasedEra era => NoThunks (ShelleyPartialLedgerConfig era) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

type Rep (ShelleyPartialLedgerConfig era) Source # 
Instance details

Defined in Ouroboros.Consensus.Cardano.CanHardFork

type Rep (ShelleyPartialLedgerConfig era) = D1 ('MetaData "ShelleyPartialLedgerConfig" "Ouroboros.Consensus.Cardano.CanHardFork" "ouroboros-consensus-cardano-0.1.0.0-7Nmjb1YtTWmH6zdQxPRhTh" 'False) (C1 ('MetaCons "ShelleyPartialLedgerConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "shelleyLedgerConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ShelleyLedgerConfig era)) :*: S1 ('MetaSel ('Just "shelleyTriggerHardFork") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TriggerHardFork)))

Orphan instances

SingleEraBlock ByronBlock Source # 
Instance details

HasPartialLedgerConfig ByronBlock Source # 
Instance details

Associated Types

type PartialLedgerConfig ByronBlock Source #

(ShelleyBasedEra era, ShelleyBasedEra (PreviousEra era), EraCrypto (PreviousEra era) ~ EraCrypto era) => TranslateEra era ShelleyTip Source # 
Instance details

Associated Types

type TranslationError era ShelleyTip Source #

(ShelleyBasedEra era, TranslateEra era Tx) => TranslateEra era (GenTx :.: ShelleyBlock) Source # 
Instance details

Associated Types

type TranslationError era (GenTx :.: ShelleyBlock) Source #

(ShelleyBasedEra era, TranslateEra era ShelleyTip, TranslateEra era NewEpochState, TranslationError era NewEpochState ~ Void) => TranslateEra era (LedgerState :.: ShelleyBlock) Source # 
Instance details

CardanoHardForkConstraints c => CanHardFork (CardanoEras c) Source # 
Instance details

ShelleyBasedEra era => SingleEraBlock (ShelleyBlock era) Source # 
Instance details

PBftCrypto bc => HasPartialConsensusConfig (PBft bc) Source # 
Instance details

Associated Types

type PartialConsensusConfig (PBft bc) Source #

PraosCrypto c => HasPartialConsensusConfig (TPraos c) Source # 
Instance details

Associated Types

type PartialConsensusConfig (TPraos c) Source #

ShelleyBasedEra era => HasPartialLedgerConfig (ShelleyBlock era) Source # 
Instance details

Associated Types

type PartialLedgerConfig (ShelleyBlock era) Source #