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

Ouroboros.Consensus.HardFork.Combinator.Compat

Synopsis

Documentation

data HardForkCompatQuery blk ∷ TypeType where Source #

Version of Query (HardForkBlock xs) without the restriction to have at least two eras

Constructors

CompatIfCurrentBlockQuery blk result → HardForkCompatQuery blk result 
CompatAnytimeQueryAnytime result → EraIndex (HardForkIndices blk) → HardForkCompatQuery blk result 
CompatHardForkQueryHardFork (HardForkIndices blk) result → HardForkCompatQuery blk result 

Convenience constructors

compatGetEraStartEraIndex (HardForkIndices blk) → HardForkCompatQuery blk (Maybe Bound) Source #

Get the start of the specified era, if known

compatGetInterpreterHardForkCompatQuery blk (Interpreter (HardForkIndices blk)) Source #

Get an interpreter for history queries

I.e., this can be used for slotepochtime conversions.

compatIfCurrentBlockQuery blk result → HardForkCompatQuery blk result Source #

Submit query to underlying ledger

Wrappers

forwardCompatQuery Source #

Arguments

∷ ∀ m x xs. IsNonEmpty xs 
⇒ (∀ result. BlockQuery (HardForkBlock (x ': xs)) result → m result)

Submit a query through the LocalStateQuery protocol.

→ ∀ result. HardForkCompatQuery (HardForkBlock (x ': xs)) result → m result 

Wrapper used when connecting to a server that's running the HFC with at least two eras

singleEraCompatQuery Source #

Arguments

∷ ∀ m blk era. (Monad m, HardForkIndices blk ~ '[era]) 
EpochSize 
SlotLength 
GenesisWindow 
→ (∀ result. BlockQuery blk result → m result)

Submit a query through the LocalStateQuery protocol.

→ ∀ result. HardForkCompatQuery blk result → m result 

Wrapper used when connecting to a server that's not using the HFC, or is using the HFC but with a single era only.