Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
-
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
- singleEraTransition :: PartialLedgerConfig blk -> EraParams -> Bound -> LedgerState blk -> Maybe EpochNo
- singleEraInfo :: proxy blk -> SingleEraInfo blk
- proxySingle :: Proxy SingleEraBlock
- singleEraTransition' :: SingleEraBlock blk => WrapPartialLedgerConfig blk -> EraParams -> Bound -> LedgerState blk -> Maybe EpochNo
-
newtype
EraIndex
xs =
EraIndex
{
- getEraIndex :: NS ( K ()) xs
- eraIndexEmpty :: EraIndex '[] -> Void
- eraIndexFromIndex :: Index xs blk -> EraIndex xs
- eraIndexFromNS :: SListI xs => NS f xs -> EraIndex xs
- eraIndexSucc :: EraIndex xs -> EraIndex (x ': xs)
- eraIndexToInt :: EraIndex xs -> Int
- eraIndexZero :: EraIndex (x ': xs)
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
:: 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)
singleEraTransition' :: SingleEraBlock blk => WrapPartialLedgerConfig blk -> EraParams -> Bound -> LedgerState blk -> Maybe EpochNo Source #
Era index
EraIndex | |
|
eraIndexEmpty :: EraIndex '[] -> Void Source #
eraIndexFromIndex :: Index xs blk -> EraIndex xs Source #
eraIndexSucc :: EraIndex xs -> EraIndex (x ': xs) Source #
eraIndexToInt :: EraIndex xs -> Int Source #
eraIndexZero :: EraIndex (x ': xs) Source #