ouroboros-consensus-protocol-0.1.0.1: Cardano consensus protocols.
Safe Haskell None
Language Haskell2010

Ouroboros.Consensus.Protocol.Praos.Common

Description

Various things common to iterations of the Praos protocol.

Synopsis

Documentation

newtype MaxMajorProtVer Source #

The maximum major protocol version.

Must be at least the current major protocol version. For Cardano mainnet, the Shelley era has major protocol verison 2 .

Instances

Instances details
Eq MaxMajorProtVer Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

Show MaxMajorProtVer Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

Generic MaxMajorProtVer Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

NoThunks MaxMajorProtVer Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

type Rep MaxMajorProtVer Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

type Rep MaxMajorProtVer = D1 (' MetaData "MaxMajorProtVer" "Ouroboros.Consensus.Protocol.Praos.Common" "ouroboros-consensus-protocol-0.1.0.1-zKRBoYOfUlKsvZd6xB0lb" ' True ) ( C1 (' MetaCons "MaxMajorProtVer" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "getMaxMajorProtVer") ' NoSourceUnpackedness ' NoSourceStrictness ' DecidedLazy ) ( Rec0 Natural )))

data PraosCanBeLeader c Source #

Constructors

PraosCanBeLeader

Fields

data PraosChainSelectView c Source #

View of the ledger tip for chain selection.

We order between chains as follows:

  1. By chain length, with longer chains always preferred.
  2. If the tip of each chain was issued by the same agent, then we prefer the chain whose tip has the highest ocert issue number.
  3. By the leader value of the chain tip, with lower values preferred.

Instances

Instances details
Crypto c => Eq ( PraosChainSelectView c) Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

Crypto c => Ord ( PraosChainSelectView c) Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

Crypto c => Show ( PraosChainSelectView c) Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

Generic ( PraosChainSelectView c) Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

Crypto c => NoThunks ( PraosChainSelectView c) Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

type Rep ( PraosChainSelectView c) Source #
Instance details

Defined in Ouroboros.Consensus.Protocol.Praos.Common

node support

data PraosNonces Source #

Constructors

PraosNonces

Fields

class ConsensusProtocol p => PraosProtocolSupportsNode p where Source #

The node has Praos-aware code that inspects nonces in order to support some Cardano API queries that are crucial to the user exprience

The interface being used for that has grown and needs review, but we're adding to it here under time pressure. See https://github.com/input-output-hk/cardano-node/issues/3864