Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.HardFork.Combinator.Compat
Contents
Synopsis
-
data
HardForkCompatQuery
blk ::
Type
->
Type
where
- CompatIfCurrent :: BlockQuery blk result -> HardForkCompatQuery blk result
- CompatAnytime :: QueryAnytime result -> EraIndex ( HardForkIndices blk) -> HardForkCompatQuery blk result
- CompatHardFork :: QueryHardFork ( HardForkIndices blk) result -> HardForkCompatQuery blk result
- compatGetEraStart :: EraIndex ( HardForkIndices blk) -> HardForkCompatQuery blk ( Maybe Bound )
- compatGetInterpreter :: HardForkCompatQuery blk ( Interpreter ( HardForkIndices blk))
- compatIfCurrent :: BlockQuery blk result -> HardForkCompatQuery blk result
- forwardCompatQuery :: forall m x xs. IsNonEmpty xs => ( forall result. BlockQuery ( HardForkBlock (x ': xs)) result -> m result) -> forall result. HardForkCompatQuery ( HardForkBlock (x ': xs)) result -> m result
- singleEraCompatQuery :: forall m blk era. ( Monad m, HardForkIndices blk ~ '[era]) => EpochSize -> SlotLength -> ( forall result. BlockQuery blk result -> m result) -> forall result. HardForkCompatQuery blk result -> m result
Documentation
data HardForkCompatQuery blk :: Type -> Type where Source #
Version of
Query (HardForkBlock xs)
without the restriction to have
at least two eras
Constructors
CompatIfCurrent :: BlockQuery blk result -> HardForkCompatQuery blk result | |
CompatAnytime :: QueryAnytime result -> EraIndex ( HardForkIndices blk) -> HardForkCompatQuery blk result | |
CompatHardFork :: QueryHardFork ( HardForkIndices blk) result -> HardForkCompatQuery blk result |
Convenience constructors
compatGetEraStart :: EraIndex ( HardForkIndices blk) -> HardForkCompatQuery blk ( Maybe Bound ) Source #
Get the start of the specified era, if known
compatGetInterpreter :: HardForkCompatQuery blk ( Interpreter ( HardForkIndices blk)) Source #
Get an interpreter for history queries
I.e., this can be used for slot epoch time conversions.
compatIfCurrent :: BlockQuery blk result -> HardForkCompatQuery blk result Source #
Submit query to underlying ledger
Wrappers
Arguments
:: forall m x xs. IsNonEmpty xs | |
=> ( forall result. BlockQuery ( HardForkBlock (x ': xs)) result -> m result) |
Submit a query through the LocalStateQuery protocol. |
-> forall 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
Arguments
:: forall m blk era. ( Monad m, HardForkIndices blk ~ '[era]) | |
=> EpochSize | |
-> SlotLength | |
-> ( forall result. BlockQuery blk result -> m result) |
Submit a query through the LocalStateQuery protocol. |
-> forall 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.