ouroboros-consensus-shelley-0.1.0.1: Shelley ledger integration in the Ouroboros consensus layer
Safe Haskell None
Language Haskell2010

Ouroboros.Consensus.Shelley.ShelleyHFC

Description

This module is the Shelley Hard Fork Combinator

Synopsis

Documentation

type ShelleyBlockHFC proto era = HardForkBlock '[ ShelleyBlock proto era] Source #

Shelley as the single era in the hard fork combinator

data ShelleyPartialLedgerConfig era Source #

Constructors

ShelleyPartialLedgerConfig

Fields

forecastAcrossShelley Source #

Arguments

:: forall protoFrom protoTo eraFrom eraTo. ( TranslateProto protoFrom protoTo, LedgerSupportsProtocol ( ShelleyBlock protoFrom eraFrom))
=> ShelleyLedgerConfig eraFrom
-> ShelleyLedgerConfig eraTo
-> Bound

Transition between the two eras

-> SlotNo

Forecast for this slot

-> LedgerState ( ShelleyBlock protoFrom eraFrom)
-> Except OutsideForecastRange ( Ticked ( WrapLedgerView ( ShelleyBlock protoTo eraTo)))

Forecast from a Shelley-based era to the next Shelley-based era.

Orphan instances

( ShelleyBasedEra era, ShelleyBasedEra ( PreviousEra era), EraCrypto ( PreviousEra era) ~ EraCrypto era) => TranslateEra era ( ShelleyTip proto) Source #
Instance details

Associated Types

type TranslationError era ( ShelleyTip proto) Source #

( ShelleyBasedEra era, TranslateEra era WrapTx ) => TranslateEra era ( WrapValidatedGenTx :.: ShelleyBlock proto) Source #
Instance details

( ShelleyBasedEra era, TranslateEra era WrapTx ) => TranslateEra era ( GenTx :.: ShelleyBlock proto) Source #
Instance details

( ShelleyBasedEra era, TranslateEra era ( ShelleyTip proto), TranslateEra era NewEpochState , TranslationError era NewEpochState ~ Void ) => TranslateEra era ( LedgerState :.: ShelleyBlock proto) Source #
Instance details

PraosCrypto c => HasPartialConsensusConfig ( Praos c) Source #
Instance details

PraosCrypto c => HasPartialConsensusConfig ( TPraos c) Source #
Instance details

( ShelleyCompatible proto era, LedgerSupportsProtocol ( ShelleyBlock proto era)) => SerialiseConstraintsHFC ( ShelleyBlock proto era) Source #
Instance details

( ShelleyCompatible proto era, LedgerSupportsProtocol ( ShelleyBlock proto era)) => NoHardForks ( ShelleyBlock proto era) Source #
Instance details

( ShelleyCompatible proto era, LedgerSupportsProtocol ( ShelleyBlock proto era)) => SingleEraBlock ( ShelleyBlock proto era) Source #
Instance details

ShelleyCompatible proto era => HasPartialLedgerConfig ( ShelleyBlock proto era) Source #
Instance details

Associated Types

type PartialLedgerConfig ( ShelleyBlock proto era) Source #

( ShelleyCompatible proto era, LedgerSupportsProtocol ( ShelleyBlock proto era)) => SupportedNetworkProtocolVersion ( ShelleyBlockHFC proto era) Source #

Forward to the ShelleyBlock instance. Only supports HardForkNodeToNodeDisabled , which is compatible with nodes running with ShelleyBlock .

Instance details

( ShelleyCompatible proto era, LedgerSupportsProtocol ( ShelleyBlock proto era)) => SerialiseHFC '[ ShelleyBlock proto era] Source #

Use the default implementations. This means the serialisation of blocks includes an era wrapper. Each block should do this from the start to be prepared for future hard forks without having to do any bit twiddling.

Instance details