Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.Cardano
Synopsis
- type CardanoBlock c = HardForkBlock (CardanoEras c)
- type ProtocolByron = HardForkProtocol '[ByronBlock]
- type ProtocolCardano = HardForkProtocol '[ByronBlock, ShelleyBlock (TPraos StandardCrypto) ShelleyEra, ShelleyBlock (TPraos StandardCrypto) AllegraEra, ShelleyBlock (TPraos StandardCrypto) MaryEra, ShelleyBlock (TPraos StandardCrypto) AlonzoEra, ShelleyBlock (Praos StandardCrypto) BabbageEra, ShelleyBlock (Praos StandardCrypto) ConwayEra]
- type ProtocolShelley = HardForkProtocol '[ShelleyBlock (TPraos StandardCrypto) ShelleyEra]
- data CardanoHardForkTrigger blk
- newtype CardanoHardForkTriggers where
- CardanoHardForkTriggers { }
- pattern CardanoHardForkTriggers' ∷ c ~ StandardCrypto ⇒ CardanoHardForkTrigger (ShelleyBlock (TPraos c) ShelleyEra) → CardanoHardForkTrigger (ShelleyBlock (TPraos c) AllegraEra) → CardanoHardForkTrigger (ShelleyBlock (TPraos c) MaryEra) → CardanoHardForkTrigger (ShelleyBlock (TPraos c) AlonzoEra) → CardanoHardForkTrigger (ShelleyBlock (Praos c) BabbageEra) → CardanoHardForkTrigger (ShelleyBlock (Praos c) ConwayEra) → CardanoHardForkTriggers
- module Ouroboros.Consensus.Shelley.Node
- module Ouroboros.Consensus.Byron.Node
The block type of the Cardano block chain
type CardanoBlock c = HardForkBlock (CardanoEras c) Source #
The Cardano block.
Thanks to the pattern synonyms, you can treat this as a sum type with
constructors BlockByron
, BlockShelley
, etc.
f :: CardanoBlock c -> _ f (BlockByron b) = _ f (BlockShelley s) = _ f (BlockAllegra a) = _ f (BlockMary m) = _ f (BlockAlonzo m) = _
Supported protocols
type ProtocolByron = HardForkProtocol '[ByronBlock] Source #
type ProtocolCardano = HardForkProtocol '[ByronBlock, ShelleyBlock (TPraos StandardCrypto) ShelleyEra, ShelleyBlock (TPraos StandardCrypto) AllegraEra, ShelleyBlock (TPraos StandardCrypto) MaryEra, ShelleyBlock (TPraos StandardCrypto) AlonzoEra, ShelleyBlock (Praos StandardCrypto) BabbageEra, ShelleyBlock (Praos StandardCrypto) ConwayEra] Source #
Abstract over the various protocols
data CardanoHardForkTrigger blk Source #
When to trigger a hard fork to a Cardano era.
Constructors
CardanoTriggerHardForkAtDefaultVersion | Trigger the hard fork when the ledger protocol version is updated to
the default for that era ( |
CardanoTriggerHardForkAtEpoch EpochNo | Trigger the hard fork at the given epoch. For testing only. Also see
|
Instances
Show (CardanoHardForkTrigger blk) Source # | |
Defined in Ouroboros.Consensus.Cardano.Node Methods showsPrec ∷ Int → CardanoHardForkTrigger blk → ShowS # show ∷ CardanoHardForkTrigger blk → String # showList ∷ [CardanoHardForkTrigger blk] → ShowS # |
newtype CardanoHardForkTriggers Source #
Constructors
CardanoHardForkTriggers | |
Bundled Patterns
pattern CardanoHardForkTriggers' ∷ c ~ StandardCrypto ⇒ CardanoHardForkTrigger (ShelleyBlock (TPraos c) ShelleyEra) → CardanoHardForkTrigger (ShelleyBlock (TPraos c) AllegraEra) → CardanoHardForkTrigger (ShelleyBlock (TPraos c) MaryEra) → CardanoHardForkTrigger (ShelleyBlock (TPraos c) AlonzoEra) → CardanoHardForkTrigger (ShelleyBlock (Praos c) BabbageEra) → CardanoHardForkTrigger (ShelleyBlock (Praos c) ConwayEra) → CardanoHardForkTriggers |