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



class ( Show ( LedgerWarning blk), Show ( LedgerUpdate blk), Eq ( LedgerWarning blk), Eq ( LedgerUpdate blk), Condense ( LedgerUpdate blk)) => InspectLedger blk where Source #

Minimal complete definition



inspectLedger Source #


:: TopLevelConfig blk
-> LedgerState blk


-> LedgerState blk


-> [ LedgerEvent blk]

Inspect the ledger

The point of the inspection is to see if the state of the ledger might indicate a potential misconfiguration of the node.

TODO: We might at some point need to generalize this to ExtLedgerState instead. That doesn't fit quite so neatly with the HFC at present, so leaving it at this for now.


Instances details
CanHardFork xs => InspectLedger ( HardForkBlock xs) Source #
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger

InspectLedger m => InspectLedger ( DualBlock m a) Source #

InspectLedger just refers to the main block

InspectLedger is intended to check the ledger state against the node's configuration, and hence takes a full TopLevelConfig . However, we cannot construct that for the auxiliary block, since we have no protocol config for it. We therefore just use the main block.

Instance details

Defined in Ouroboros.Consensus.Ledger.Dual