cardano-api-8.36.1.1: The cardano api
Safe HaskellNone
LanguageHaskell2010

Cardano.Api.Protocol

Synopsis

Documentation

data BlockType blk where Source #

Constructors

ByronBlockType :: BlockType ByronBlockHFC 
ShelleyBlockType :: BlockType (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) 
CardanoBlockType :: BlockType (CardanoBlock StandardCrypto) 

Instances

Instances details
Eq (BlockType blk) Source # 
Instance details

Defined in Cardano.Api.Protocol

Methods

(==) :: BlockType blk -> BlockType blk -> Bool Source #

(/=) :: BlockType blk -> BlockType blk -> Bool Source #

Show (BlockType blk) Source # 
Instance details

Defined in Cardano.Api.Protocol

data SomeBlockType where Source #

Constructors

SomeBlockType :: BlockType blk -> SomeBlockType 

Instances

Instances details
Show SomeBlockType Source # 
Instance details

Defined in Cardano.Api.Protocol

reflBlockType :: BlockType blk -> BlockType blk' -> Maybe (blk :~: blk') Source #

class (RunNode blk, IOLike m) => Protocol m blk where Source #

Associated Types

data ProtocolInfoArgs blk Source #

Methods

protocolInfo :: ProtocolInfoArgs blk -> (ProtocolInfo blk, m [BlockForging m blk]) Source #

Instances

Instances details
IOLike m => Protocol m ByronBlockHFC Source #

Run PBFT against the Byron ledger

Instance details

Defined in Cardano.Api.Protocol

Associated Types

data ProtocolInfoArgs ByronBlockHFC Source #

Methods

protocolInfo :: ProtocolInfoArgs ByronBlockHFC -> (ProtocolInfo ByronBlockHFC, m [BlockForging m ByronBlockHFC]) Source #

(CardanoHardForkConstraints StandardCrypto, IOLike m) => Protocol m (CardanoBlock StandardCrypto) Source # 
Instance details

Defined in Cardano.Api.Protocol

Associated Types

data ProtocolInfoArgs (CardanoBlock StandardCrypto) Source #

Methods

protocolInfo :: ProtocolInfoArgs (CardanoBlock StandardCrypto) -> (ProtocolInfo (CardanoBlock StandardCrypto), m [BlockForging m (CardanoBlock StandardCrypto)]) Source #

(IOLike m, LedgerSupportsProtocol (ShelleyBlock (TPraos StandardCrypto) (ShelleyEra StandardCrypto))) => Protocol m (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) Source # 
Instance details

Defined in Cardano.Api.Protocol

Associated Types

data ProtocolInfoArgs (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) Source #

Methods

protocolInfo :: ProtocolInfoArgs (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) -> (ProtocolInfo (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley), m [BlockForging m (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley)]) Source #

class RunNode blk => ProtocolClient blk where Source #

Node client support for each consensus protocol.

This is like Protocol but for clients of the node, so with less onerous requirements than to run a node.

Associated Types

data ProtocolClientInfoArgs blk Source #

Methods

protocolClientInfo :: ProtocolClientInfoArgs blk -> ProtocolClientInfo blk Source #

Instances

Instances details
ProtocolClient ByronBlockHFC Source # 
Instance details

Defined in Cardano.Api.Protocol

Associated Types

data ProtocolClientInfoArgs ByronBlockHFC Source #

Methods

protocolClientInfo :: ProtocolClientInfoArgs ByronBlockHFC -> ProtocolClientInfo ByronBlockHFC Source #

CardanoHardForkConstraints StandardCrypto => ProtocolClient (CardanoBlock StandardCrypto) Source # 
Instance details

Defined in Cardano.Api.Protocol

Associated Types

data ProtocolClientInfoArgs (CardanoBlock StandardCrypto) Source #

Methods

protocolClientInfo :: ProtocolClientInfoArgs (CardanoBlock StandardCrypto) -> ProtocolClientInfo (CardanoBlock StandardCrypto) Source #

LedgerSupportsProtocol (ShelleyBlock (TPraos StandardCrypto) (ShelleyEra StandardCrypto)) => ProtocolClient (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) Source # 
Instance details

Defined in Cardano.Api.Protocol

Associated Types

data ProtocolClientInfoArgs (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) Source #

Methods

protocolClientInfo :: ProtocolClientInfoArgs (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) -> ProtocolClientInfo (ShelleyBlockHFC (TPraos StandardCrypto) StandardShelley) Source #