| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Cardano.Node.Protocol.Cardano
Contents
Synopsis
- mkConsensusProtocolCardano ∷ NodeByronProtocolConfiguration → NodeShelleyProtocolConfiguration → NodeAlonzoProtocolConfiguration → NodeConwayProtocolConfiguration → Maybe NodeDijkstraProtocolConfiguration → NodeHardForkProtocolConfiguration → Maybe ProtocolFilepaths → ExceptT CardanoProtocolInstantiationError IO (CardanoProtocolParams StandardCrypto)
- data CardanoProtocolInstantiationError
- = CardanoProtocolInstantiationErrorByron ByronProtocolInstantiationError
- | CardanoProtocolInstantiationShelleyGenesisReadError GenesisReadError
- | CardanoProtocolInstantiationAlonzoGenesisReadError GenesisReadError
- | CardanoProtocolInstantiationConwayGenesisReadError GenesisReadError
- | CardanoProtocolInstantiationDijkstraGenesisReadError GenesisReadError
- | CardanoProtocolInstantiationPraosLeaderCredentialsError PraosLeaderCredentialsError
- | CardanoProtocolInstantiationErrorAlonzo AlonzoProtocolInstantiationError
Documentation
mkConsensusProtocolCardano ∷ NodeByronProtocolConfiguration → NodeShelleyProtocolConfiguration → NodeAlonzoProtocolConfiguration → NodeConwayProtocolConfiguration → Maybe NodeDijkstraProtocolConfiguration → NodeHardForkProtocolConfiguration → Maybe ProtocolFilepaths → ExceptT CardanoProtocolInstantiationError IO (CardanoProtocolParams StandardCrypto) 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 #
Constructors