Safe Haskell | None |
---|---|
Language | Haskell2010 |
Cardano.Node.Protocol.Shelley
Contents
Synopsis
- mkSomeConsensusProtocolShelley ∷ NodeShelleyProtocolConfiguration → Maybe ProtocolFilepaths → ExceptT ShelleyProtocolInstantiationError IO SomeConsensusProtocol
- data GenesisReadError
- newtype GenesisValidationError = GenesisValidationErrors [ValidationErr]
- data PraosLeaderCredentialsError
- data ShelleyProtocolInstantiationError
- genesisHashToPraosNonce ∷ GenesisHash → Nonce
- readGenesis ∷ GenesisFile → Maybe GenesisHash → ExceptT GenesisReadError IO (ShelleyGenesis, GenesisHash)
- readGenesisAny ∷ FromJSON genesis ⇒ GenesisFile → Maybe GenesisHash → ExceptT GenesisReadError IO (genesis, GenesisHash)
- readLeaderCredentials ∷ Maybe ProtocolFilepaths → ExceptT PraosLeaderCredentialsError IO [ShelleyLeaderCredentials StandardCrypto]
- validateGenesis ∷ ShelleyGenesis → ExceptT GenesisValidationError IO ()
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
data GenesisReadError Source #
Constructors
GenesisReadFileError !FilePath !IOException | |
GenesisHashMismatch !GenesisHash !GenesisHash | |
GenesisDecodeError !FilePath !String |
Instances
Show GenesisReadError Source # | |
Defined in Cardano.Node.Protocol.Shelley Methods showsPrec ∷ Int → GenesisReadError → ShowS # show ∷ GenesisReadError → String # showList ∷ [GenesisReadError] → ShowS # | |
Error GenesisReadError Source # | |
Defined in Cardano.Node.Protocol.Shelley Methods |
newtype GenesisValidationError Source #
Constructors
GenesisValidationErrors [ValidationErr] |
Instances
Show GenesisValidationError Source # | |
Defined in Cardano.Node.Protocol.Shelley Methods showsPrec ∷ Int → GenesisValidationError → ShowS # show ∷ GenesisValidationError → String # showList ∷ [GenesisValidationError] → ShowS # | |
Error GenesisValidationError Source # | |
Defined in Cardano.Node.Protocol.Shelley Methods |
data PraosLeaderCredentialsError Source #
Constructors
Instances
Show PraosLeaderCredentialsError Source # | |
Defined in Cardano.Node.Protocol.Shelley Methods showsPrec ∷ Int → PraosLeaderCredentialsError → ShowS # | |
Error PraosLeaderCredentialsError Source # | |
Defined in Cardano.Node.Protocol.Shelley Methods displayError ∷ PraosLeaderCredentialsError → String Source # |
data ShelleyProtocolInstantiationError Source #
Constructors
GenesisReadError GenesisReadError | |
GenesisValidationError GenesisValidationError | |
PraosLeaderCredentialsError PraosLeaderCredentialsError |
Instances
Reusable parts
readGenesis ∷ GenesisFile → Maybe GenesisHash → ExceptT GenesisReadError IO (ShelleyGenesis, GenesisHash) Source #
readGenesisAny ∷ FromJSON genesis ⇒ GenesisFile → Maybe GenesisHash → ExceptT GenesisReadError IO (genesis, GenesisHash) Source #