Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.Byron.Ledger.Inspect
Synopsis
- data ByronLedgerUpdate = ByronUpdatedProtocolUpdates [ProtocolUpdate]
- data ProtocolUpdate = ProtocolUpdate {
- protocolUpdateVersion :: ProtocolVersion
- protocolUpdateState :: UpdateState
- data UpdateState
- = UpdateRegistered SlotNo
- | UpdateActive (Set KeyHash)
- | UpdateConfirmed SlotNo
- | UpdateStablyConfirmed (Set KeyHash)
- | UpdateCandidate SlotNo EpochNo
- | UpdateStableCandidate EpochNo
- protocolUpdates :: LedgerConfig ByronBlock -> LedgerState ByronBlock -> [ProtocolUpdate]
Documentation
data ByronLedgerUpdate Source #
Constructors
ByronUpdatedProtocolUpdates [ProtocolUpdate] |
Instances
Show ByronLedgerUpdate Source # | |
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect | |
Eq ByronLedgerUpdate Source # | |
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect Methods (==) :: ByronLedgerUpdate -> ByronLedgerUpdate -> Bool Source # (/=) :: ByronLedgerUpdate -> ByronLedgerUpdate -> Bool Source # | |
Condense ByronLedgerUpdate Source # | |
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect Methods condense :: ByronLedgerUpdate -> String |
Layer around the Byron protocol update inteface
data ProtocolUpdate Source #
Wrapper around a Byron protocol update with information about its state
NOTE: We don't currently record the ProtocolParameters
here because we
don't really need to track them, and adding them would add a lot of output
to the Show
instance. We could easily add them however if that would be
useful.
Constructors
ProtocolUpdate | |
Fields
|
Instances
Show ProtocolUpdate Source # | |
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect | |
Eq ProtocolUpdate Source # | |
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect Methods (==) :: ProtocolUpdate -> ProtocolUpdate -> Bool Source # (/=) :: ProtocolUpdate -> ProtocolUpdate -> Bool Source # |
data UpdateState Source #
The various states a protocol update goes through
Listed in chronological order.
Constructors
UpdateRegistered SlotNo | The update was registered, but does not yet have any votes We record the |
UpdateActive (Set KeyHash) | The update is accumulating votes We record which nodes have voted for the proposal. The proposal must accumulate a sufficient number of votes before it can be confirmed. |
UpdateConfirmed SlotNo | The update has amassed a sufficient number of votes We record the |
UpdateStablyConfirmed (Set KeyHash) | The votes are stable. We can start to accumulate endorsements. We record which nodes have endorsed the proposal. The proposal must accumulate a sufficient number of endorsements before it is nominated and becomes a candidate. |
UpdateCandidate SlotNo EpochNo | The update has amassed a sufficient number of endorsements We record the We additionally record the |
UpdateStableCandidate EpochNo | The endorsements are stable. The update will be accepted. We record the |
Instances
Show UpdateState Source # | |
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect | |
Eq UpdateState Source # | |
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect Methods (==) :: UpdateState -> UpdateState -> Bool Source # (/=) :: UpdateState -> UpdateState -> Bool Source # |
protocolUpdates :: LedgerConfig ByronBlock -> LedgerState ByronBlock -> [ProtocolUpdate] Source #
All proposal updates, from new to old
Orphan instances
InspectLedger ByronBlock Source # | |
Methods inspectLedger :: TopLevelConfig ByronBlock -> LedgerState ByronBlock -> LedgerState ByronBlock -> [LedgerEvent ByronBlock] |