Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- mkConsensusProtocolCardano ∷ NodeByronProtocolConfiguration → NodeShelleyProtocolConfiguration → NodeAlonzoProtocolConfiguration → NodeConwayProtocolConfiguration → NodeHardForkProtocolConfiguration → Maybe ProtocolFilepaths → ExceptT CardanoProtocolInstantiationError IO (CardanoProtocolParams StandardCrypto)
- mkSomeConsensusProtocolCardano ∷ NodeByronProtocolConfiguration → NodeShelleyProtocolConfiguration → NodeAlonzoProtocolConfiguration → NodeConwayProtocolConfiguration → NodeHardForkProtocolConfiguration → Maybe ProtocolFilepaths → ExceptT CardanoProtocolInstantiationError IO SomeConsensusProtocol
- data CardanoProtocolInstantiationError
- = CardanoProtocolInstantiationErrorByron ByronProtocolInstantiationError
- | CardanoProtocolInstantiationShelleyGenesisReadError GenesisReadError
- | CardanoProtocolInstantiationAlonzoGenesisReadError GenesisReadError
- | CardanoProtocolInstantiationConwayGenesisReadError GenesisReadError
- | CardanoProtocolInstantiationPraosLeaderCredentialsError PraosLeaderCredentialsError
- | CardanoProtocolInstantiationErrorAlonzo AlonzoProtocolInstantiationError
Documentation
mkConsensusProtocolCardano ∷ NodeByronProtocolConfiguration → NodeShelleyProtocolConfiguration → NodeAlonzoProtocolConfiguration → NodeConwayProtocolConfiguration → NodeHardForkProtocolConfiguration → Maybe ProtocolFilepaths → ExceptT CardanoProtocolInstantiationError IO (CardanoProtocolParams StandardCrypto) Source #
mkSomeConsensusProtocolCardano ∷ NodeByronProtocolConfiguration → NodeShelleyProtocolConfiguration → NodeAlonzoProtocolConfiguration → NodeConwayProtocolConfiguration → NodeHardForkProtocolConfiguration → Maybe ProtocolFilepaths → ExceptT CardanoProtocolInstantiationError IO SomeConsensusProtocol Source #
Make SomeConsensusProtocol
using the Cardano instance.
The Cardano protocol instance is currently the sequential composition of the Byron and Shelley protocols, and will likely be extended in future with further sequentially composed protocol revisions.
The use of SomeConsensusProtocol
lets us handle multiple protocols in a
generic way.
This also serves a purpose as a sanity check that we have all the necessary type class instances available.
Errors
data CardanoProtocolInstantiationError Source #