ouroboros-consensus-0.1.0.1: Consensus layer for the Ouroboros blockchain protocol
Safe Haskell None
Language Haskell2010

Ouroboros.Consensus.HardFork.Combinator.Abstract.SingleEraBlock

Synopsis

Single era block

class ( LedgerSupportsProtocol blk, InspectLedger blk, LedgerSupportsMempool blk, HasTxId ( GenTx blk), QueryLedger blk, HasPartialConsensusConfig ( BlockProtocol blk), HasPartialLedgerConfig blk, ConvertRawHash blk, ReconstructNestedCtxt Header blk, CommonProtocolParams blk, LedgerSupportsPeerSelection blk, ConfigSupportsNode blk, NodeInitStorage blk, BlockSupportsMetrics blk, Eq ( GenTx blk), Eq ( Validated ( GenTx blk)), Eq ( ApplyTxErr blk), Show blk, Show ( Header blk), Show ( CannotForge blk), Show ( ForgeStateInfo blk), Show ( ForgeStateUpdateError blk)) => SingleEraBlock blk where Source #

Blocks from which we can assemble a hard fork

Methods

singleEraTransition Source #

Arguments

:: PartialLedgerConfig blk
-> EraParams

Current era parameters

-> Bound

Start of this era

-> LedgerState blk
-> Maybe EpochNo

Era transition

This should only report the transition point once it is stable (rollback cannot affect it anymore).

Since we need this to construct the HardForkSummary (and hence the EpochInfo ), this takes the partial config, not the full config (or we'd end up with a catch-22).

singleEraInfo :: proxy blk -> SingleEraInfo blk Source #

Era information (for use in error messages)

Era index