cardano-node-8.7.2: The cardano full node
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Node.Protocol.Shelley

Synopsis

Documentation

mkSomeConsensusProtocolShelley :: NodeShelleyProtocolConfiguration -> Maybe ProtocolFilepaths -> ExceptT ShelleyProtocolInstantiationError IO SomeConsensusProtocol Source #

Make SomeConsensusProtocol using the Shelley instance.

This 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

Reusable parts

readGenesis :: GenesisFile -> Maybe GenesisHash -> ExceptT GenesisReadError IO (ShelleyGenesis StandardCrypto, GenesisHash) Source #

readGenesisAny :: FromJSON genesis => GenesisFile -> Maybe GenesisHash -> ExceptT GenesisReadError IO (genesis, GenesisHash) Source #

readLeaderCredentials :: Maybe ProtocolFilepaths -> ExceptT PraosLeaderCredentialsError IO [ShelleyLeaderCredentials StandardCrypto] Source #

validateGenesis :: ShelleyGenesis StandardCrypto -> ExceptT GenesisValidationError IO () Source #