ouroboros-consensus-0.18.0.0: Consensus layer for the Ouroboros blockchain protocol
Safe HaskellSafe-Inferred
LanguageHaskell2010

Ouroboros.Consensus.Config

Synopsis

The top-level node configuration

data TopLevelConfig blk Source #

The top-level node configuration

Instances

Instances details
Isomorphic TopLevelConfig Source #

Projection/injection for TopLevelConfig

NOTE: We do not define one for LedgerConfig or ConsensusConfig, since we need the EraParams for their injections, which we can only derive if we have the top-level config.

Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Embed.Unary

Generic (TopLevelConfig blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

Associated Types

type Rep (TopLevelConfig blk) ∷ TypeType #

Methods

fromTopLevelConfig blk → Rep (TopLevelConfig blk) x #

toRep (TopLevelConfig blk) x → TopLevelConfig blk #

(ConsensusProtocol (BlockProtocol blk), NoThunks (LedgerConfig blk), NoThunks (BlockConfig blk), NoThunks (CodecConfig blk), NoThunks (StorageConfig blk), NoThunks (HeaderHash blk)) ⇒ NoThunks (TopLevelConfig blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

type Rep (TopLevelConfig blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

type Rep (TopLevelConfig blk) = D1 ('MetaData "TopLevelConfig" "Ouroboros.Consensus.Config" "ouroboros-consensus-0.18.0.0-inplace" 'False) (C1 ('MetaCons "TopLevelConfig" 'PrefixI 'True) ((S1 ('MetaSel ('Just "topLevelConfigProtocol") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ConsensusConfig (BlockProtocol blk))) :*: (S1 ('MetaSel ('Just "topLevelConfigLedger") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LedgerConfig blk)) :*: S1 ('MetaSel ('Just "topLevelConfigBlock") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (BlockConfig blk)))) :*: (S1 ('MetaSel ('Just "topLevelConfigCodec") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (CodecConfig blk)) :*: (S1 ('MetaSel ('Just "topLevelConfigStorage") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StorageConfig blk)) :*: S1 ('MetaSel ('Just "topLevelConfigCheckpoints") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (CheckpointsMap blk))))))

Checkpoints map

newtype CheckpointsMap blk Source #

Checkpoints are block hashes that are expected to be present in the honest historical chain.

Each checkpoint is associated with a BlockNo, and any block with a BlockNo in the checkpoints map is expected to have the corresponding hash.

Constructors

CheckpointsMap 

Instances

Instances details
Monoid (CheckpointsMap blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

Semigroup (CheckpointsMap blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

Generic (CheckpointsMap blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

Associated Types

type Rep (CheckpointsMap blk) ∷ TypeType #

Methods

fromCheckpointsMap blk → Rep (CheckpointsMap blk) x #

toRep (CheckpointsMap blk) x → CheckpointsMap blk #

NoThunks (HeaderHash blk) ⇒ NoThunks (CheckpointsMap blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

type Rep (CheckpointsMap blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Config

type Rep (CheckpointsMap blk) = D1 ('MetaData "CheckpointsMap" "Ouroboros.Consensus.Config" "ouroboros-consensus-0.18.0.0-inplace" 'True) (C1 ('MetaCons "CheckpointsMap" 'PrefixI 'True) (S1 ('MetaSel ('Just "unCheckpointsMap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map BlockNo (HeaderHash blk)))))

Derived extraction functions

Additional convenience functions

Re-exports