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

Ouroboros.Consensus.Shelley.Ledger.Ledger

Synopsis

Documentation

data family LedgerState blk Source #

Ledger state associated with a block

Instances

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

Defined in Ouroboros.Consensus.Shelley.ShelleyHFC

CanHardFork xs => Eq ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Basics

ShelleyBasedEra era => Eq ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

CanHardFork xs => Show ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Basics

ShelleyBasedEra era => Show ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Generic ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Associated Types

type Rep ( LedgerState ( ShelleyBlock proto era)) :: Type -> Type Source #

Generic ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

CanHardFork xs => NoThunks ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Basics

ShelleyBasedEra era => NoThunks ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

ShelleyBasedEra era => NoThunks ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

GetTip ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

GetTip ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

ShelleyBasedEra era => IsLedger ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

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

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

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

Defined in Ouroboros.Consensus.Shelley.Node.Serialisation

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

Defined in Ouroboros.Consensus.Shelley.Node.Serialisation

type TranslationError era ( LedgerState :.: ShelleyBlock proto) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.ShelleyHFC

type Rep ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( LedgerState ( ShelleyBlock proto era)) = D1 (' MetaData "LedgerState" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-shelley-0.1.0.1-Kwox0dapAHUG8fY5XKE0pO" ' False ) ( C1 (' MetaCons "ShelleyLedgerState" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "shelleyLedgerTip") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( WithOrigin ( ShelleyTip proto era))) :*: ( S1 (' MetaSel (' Just "shelleyLedgerState") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( NewEpochState era)) :*: S1 (' MetaSel (' Just "shelleyLedgerTransition") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ShelleyTransition ))))
type Rep ( Ticked ( LedgerState ( HardForkBlock xs)))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger

type Rep ( Ticked ( LedgerState ( HardForkBlock xs))) = D1 (' MetaData "Ticked" "Ouroboros.Consensus.HardFork.Combinator.Ledger" "ouroboros-consensus-0.1.0.1-DT4Cvwf63DZKctsEvaJqCU" ' False ) ( C1 (' MetaCons "TickedHardForkLedgerState" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "tickedHardForkLedgerStateTransition") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 TransitionInfo ) :*: S1 (' MetaSel (' Just "tickedHardForkLedgerStatePerEra") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( HardForkState ( Ticked :.: LedgerState ) xs))))
type Rep ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( Ticked ( LedgerState ( ShelleyBlock proto era))) = D1 (' MetaData "Ticked" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-shelley-0.1.0.1-Kwox0dapAHUG8fY5XKE0pO" ' False ) ( C1 (' MetaCons "TickedShelleyLedgerState" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "untickedShelleyLedgerTip") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( WithOrigin ( ShelleyTip proto era))) :*: ( S1 (' MetaSel (' Just "tickedShelleyLedgerTransition") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ShelleyTransition ) :*: S1 (' MetaSel (' Just "tickedShelleyLedgerState") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( NewEpochState era)))))
type LedgerCfg ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Basics

type LedgerCfg ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type AuxLedgerEvent ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger

type AuxLedgerEvent ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type LedgerErr ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger

type LedgerErr ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

newtype LedgerState ( HardForkBlock xs)
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Basics

data Ticked ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger

data Ticked ( LedgerState ( ShelleyBlock proto era)) Source #

Ticking only affects the state itself

Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type HeaderHash ( LedgerState blk)
Instance details

Defined in Ouroboros.Consensus.Ledger.Basics

data LedgerState ( ShelleyBlock proto era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

class ( ShelleyBasedEra era, GetLedgerView era, State ( EraRule "PPUP" era) ~ PPUPState era, Default ( State ( EraRule "PPUP" era)), HasField "_maxBBSize" ( PParams era) Natural , HasField "_maxBHSize" ( PParams era) Natural , HasField "_maxTxSize" ( PParams era) Natural , HasField "_a0" ( PParams era) NonNegativeInterval , HasField "_nOpt" ( PParams era) Natural , HasField "_rho" ( PParams era) UnitInterval , HasField "_tau" ( PParams era) UnitInterval , ValidateScript era, FromCBOR ( PParams era), ToCBOR ( PParams era), HasField "_protocolVersion" ( PParamsDelta era) ( StrictMaybe ProtVer ), FromCBOR ( PParamsDelta era), AdditionalGenesisConfig era ~ TranslationContext era, ToCBORGroup ( TxSeq era), NoThunks ( TranslationContext era), FromCBOR ( Annotator ( Witnesses era)), ToCBOR ( Witnesses era), Eq ( TxSeq era), Show ( TxSeq era), FromCBOR ( Annotator ( TxSeq era))) => ShelleyBasedEra era Source #

The ledger already defines ShelleyBasedEra as the top-level constraint on an era, however, consensus often needs some more functionality than the ledger currently provides.

Either the functionality shouldn't or can't live in the ledger, in which case it can be part and remain part of ShelleyBasedEra . Or, the functionality should live in the ledger, but hasn't yet been added to the ledger, or it hasn't yet been propagated to this repository, in which case it can be added to this class until that is the case.

By having the same name as the class defined in ledger, we can, if this class becomes redundant, switch to the ledger-defined one without having to update all the code using it. We can just export the right one from this module.

TODO Currently we include some constraints on the update state which are needed to determine the hard fork point. In the future this should be replaced with an appropriate API - see https://github.com/input-output-hk/ouroboros-network/issues/2890

Minimal complete definition

shelleyBasedEraName , applyShelleyBasedTx

Instances

Instances details
( PraosCrypto c, DSignable c ( Hash c EraIndependentTxBody )) => ShelleyBasedEra ( AlonzoEra c) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

PraosCrypto c => ShelleyBasedEra ( BabbageEra c) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

( PraosCrypto c, DSignable c ( Hash c EraIndependentTxBody )) => ShelleyBasedEra ( ShelleyEra c) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

( PraosCrypto c, DSignable c ( Hash c EraIndependentTxBody )) => ShelleyBasedEra ( AllegraEra c) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

( PraosCrypto c, DSignable c ( Hash c EraIndependentTxBody )) => ShelleyBasedEra ( MaryEra c) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Eras

newtype ShelleyLedgerError era Source #

Instances

Instances details
ShelleyBasedEra era => Eq ( ShelleyLedgerError era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

ShelleyBasedEra era => Show ( ShelleyLedgerError era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Generic ( ShelleyLedgerError era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

ShelleyBasedEra era => NoThunks ( ShelleyLedgerError era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( ShelleyLedgerError era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( ShelleyLedgerError era) = D1 (' MetaData "ShelleyLedgerError" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-shelley-0.1.0.1-Kwox0dapAHUG8fY5XKE0pO" ' True ) ( C1 (' MetaCons "BBodyError" ' PrefixI ' False ) ( S1 (' MetaSel (' Nothing :: Maybe Symbol ) ' NoSourceUnpackedness ' NoSourceStrictness ' DecidedLazy ) ( Rec0 ( BlockTransitionError era))))

data ShelleyTip proto era Source #

Instances

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

Defined in Ouroboros.Consensus.Shelley.ShelleyHFC

Associated Types

type TranslationError era ( ShelleyTip proto) Source #

Eq ( ShelleyTip proto era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Show ( ShelleyTip proto era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Generic ( ShelleyTip proto era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Associated Types

type Rep ( ShelleyTip proto era) :: Type -> Type Source #

NoThunks ( ShelleyTip proto era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type TranslationError era ( ShelleyTip proto) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.ShelleyHFC

type Rep ( ShelleyTip proto era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( ShelleyTip proto era) = D1 (' MetaData "ShelleyTip" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-shelley-0.1.0.1-Kwox0dapAHUG8fY5XKE0pO" ' False ) ( C1 (' MetaCons "ShelleyTip" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "shelleyTipSlotNo") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 SlotNo ) :*: ( S1 (' MetaSel (' Just "shelleyTipBlockNo") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 BlockNo ) :*: S1 (' MetaSel (' Just "shelleyTipHash") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( HeaderHash ( ShelleyBlock proto era))))))

newtype ShelleyTransition Source #

Information required to determine the hard fork point from Shelley to the next ledger

Constructors

ShelleyTransitionInfo

Fields

  • shelleyAfterVoting :: Word32

    The number of blocks in this epoch past the voting deadline

    We record this to make sure that we can tell the HFC about hard forks if and only if we are certain:

    1. Blocks that came in within an epoch after the 4k/f voting deadline are not relevant (10k f - 2 * 3k f).
    2. Since there are slots between blocks, we are probably only sure that there will be no more relevant block when we have seen the first block after the deadline.
    3. If we count how many blocks we have seen post deadline, and we have reached k of them, we know that that last pre-deadline block won't be rolled back anymore.
    4. At this point we can look at the ledger state and see which proposals we accepted in the voting period, if any, and notify the HFC is one of them indicates a transition.

Instances

Instances details
Eq ShelleyTransition Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Show ShelleyTransition Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Generic ShelleyTransition Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

NoThunks ShelleyTransition Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ShelleyTransition Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ShelleyTransition = D1 (' MetaData "ShelleyTransition" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-shelley-0.1.0.1-Kwox0dapAHUG8fY5XKE0pO" ' True ) ( C1 (' MetaCons "ShelleyTransitionInfo" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "shelleyAfterVoting") ' NoSourceUnpackedness ' NoSourceStrictness ' DecidedLazy ) ( Rec0 Word32 )))

data family Ticked st Source #

" Ticked " piece of state ( LedgerState , LedgerView , ChainIndepState )

Ticking refers to the passage of time (the ticking of the clock). When a piece of state is marked as ticked, it means that time-related changes have been applied to the state (or forecast).

Some examples of time related changes:

  • Scheduled delegations might have been applied in Byron
  • New leader schedule computed for Shelley
  • Transition from Byron to Shelley activated in the hard fork combinator.
  • Nonces switched out at the start of a new epoch.

Instances

Instances details
Show ( Ticked ())
Instance details

Defined in Ouroboros.Consensus.Ticked

( SListI xs, Show ( Ticked a)) => Show ( Ticked ( HardForkLedgerView_ ( K a :: Type -> Type ) xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Protocol.LedgerView

Show ( Ticked a) => Show ( Ticked ( K a x))
Instance details

Defined in Ouroboros.Consensus.Ticked

Generic ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

ShelleyBasedEra era => NoThunks ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

IsLedger l => GetTip ( Ticked ( LedgerDB l))
Instance details

Defined in Ouroboros.Consensus.Storage.LedgerDB.InMemory

IsLedger ( LedgerState blk) => GetTip ( Ticked ( ExtLedgerState blk))
Instance details

Defined in Ouroboros.Consensus.Ledger.Extended

GetTip ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

Show ( Ticked (f a)) => Show (( Ticked :.: f) a)
Instance details

Defined in Ouroboros.Consensus.Ticked

NoThunks ( Ticked (f a)) => NoThunks (( Ticked :.: f) a)
Instance details

Defined in Ouroboros.Consensus.Ticked

data Ticked ()
Instance details

Defined in Ouroboros.Consensus.Ticked

type Rep ( Ticked ( LedgerState ( HardForkBlock xs)))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger

type Rep ( Ticked ( LedgerState ( HardForkBlock xs))) = D1 (' MetaData "Ticked" "Ouroboros.Consensus.HardFork.Combinator.Ledger" "ouroboros-consensus-0.1.0.1-DT4Cvwf63DZKctsEvaJqCU" ' False ) ( C1 (' MetaCons "TickedHardForkLedgerState" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "tickedHardForkLedgerStateTransition") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 TransitionInfo ) :*: S1 (' MetaSel (' Just "tickedHardForkLedgerStatePerEra") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( HardForkState ( Ticked :.: LedgerState ) xs))))
type Rep ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( Ticked ( LedgerState ( ShelleyBlock proto era))) = D1 (' MetaData "Ticked" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-shelley-0.1.0.1-Kwox0dapAHUG8fY5XKE0pO" ' False ) ( C1 (' MetaCons "TickedShelleyLedgerState" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "untickedShelleyLedgerTip") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( WithOrigin ( ShelleyTip proto era))) :*: ( S1 (' MetaSel (' Just "tickedShelleyLedgerTransition") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ShelleyTransition ) :*: S1 (' MetaSel (' Just "tickedShelleyLedgerState") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( NewEpochState era)))))
newtype Ticked ( LedgerView c)

Ledger view at a particular slot

Instance details

Defined in Ouroboros.Consensus.Protocol.TPraos

data Ticked ( HardForkChainDepState xs)
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Protocol

data Ticked ( LedgerDB l)

Ticking the ledger DB just ticks the current state

We don't push the new state into the DB until we apply a block.

Instance details

Defined in Ouroboros.Consensus.Storage.LedgerDB.InMemory

data Ticked ( ExtLedgerState blk)
Instance details

Defined in Ouroboros.Consensus.Ledger.Extended

newtype Ticked ( WrapChainDepState blk)
Instance details

Defined in Ouroboros.Consensus.TypeFamilyWrappers

newtype Ticked ( WrapLedgerView blk)
Instance details

Defined in Ouroboros.Consensus.TypeFamilyWrappers

data Ticked ( HeaderState blk)
Instance details

Defined in Ouroboros.Consensus.HeaderValidation

data Ticked ( LedgerState ( HardForkBlock xs))
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Ledger

data Ticked ( LedgerState ( ShelleyBlock proto era)) Source #

Ticking only affects the state itself

Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

data Ticked ( PraosState c)

Ticked PraosState

Instance details

Defined in Ouroboros.Consensus.Protocol.Praos

data Ticked ( TPraosState c)

Ticked TPraosState

Instance details

Defined in Ouroboros.Consensus.Protocol.TPraos

newtype Ticked ( LedgerView c)

Ledger view at a particular slot

Instance details

Defined in Ouroboros.Consensus.Protocol.Praos

type HeaderHash ( Ticked l)
Instance details

Defined in Ouroboros.Consensus.Ledger.Basics

data Ticked ( HardForkLedgerView_ f xs)
Instance details

Defined in Ouroboros.Consensus.HardFork.Combinator.Protocol.LedgerView

newtype Ticked ( K a x)
Instance details

Defined in Ouroboros.Consensus.Ticked

Ledger config

data ShelleyLedgerConfig era Source #

Instances

Instances details
Generic ( ShelleyLedgerConfig era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

ShelleyBasedEra era => NoThunks ( ShelleyLedgerConfig era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( ShelleyLedgerConfig era) Source #
Instance details

Defined in Ouroboros.Consensus.Shelley.Ledger.Ledger

type Rep ( ShelleyLedgerConfig era) = D1 (' MetaData "ShelleyLedgerConfig" "Ouroboros.Consensus.Shelley.Ledger.Ledger" "ouroboros-consensus-shelley-0.1.0.1-Kwox0dapAHUG8fY5XKE0pO" ' False ) ( C1 (' MetaCons "ShelleyLedgerConfig" ' PrefixI ' True ) ( S1 (' MetaSel (' Just "shelleyLedgerCompactGenesis") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( CompactGenesis era)) :*: ( S1 (' MetaSel (' Just "shelleyLedgerGlobals") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 Globals ) :*: S1 (' MetaSel (' Just "shelleyLedgerTranslationContext") ' NoSourceUnpackedness ' SourceStrict ' DecidedStrict ) ( Rec0 ( TranslationContext era)))))

shelleyEraParamsNeverHardForks :: ShelleyGenesis era -> EraParams Source #

Separate variant of shelleyEraParams to be used for a Shelley-only chain.

Auxiliary

data ShelleyLedgerEvent era Source #

All events emitted by the Shelley ledger API

Constructors

ShelleyLedgerEventBBODY ( Event ( EraRule "BBODY" era))

An event emitted when (re)applying a block

ShelleyLedgerEventTICK ( Event ( EraRule "TICK" era))

An event emitted during the chain tick

Serialisation

Orphan instances

ShelleyBasedEra era => Eq ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

ShelleyBasedEra era => Show ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Generic ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

Associated Types

type Rep ( LedgerState ( ShelleyBlock proto era)) :: Type -> Type Source #

Generic ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

ShelleyBasedEra era => NoThunks ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

ShelleyBasedEra era => NoThunks ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

GetTip ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

GetTip ( Ticked ( LedgerState ( ShelleyBlock proto era))) Source #
Instance details

ShelleyBasedEra era => IsLedger ( LedgerState ( ShelleyBlock proto era)) Source #
Instance details

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

HasHardForkHistory ( ShelleyBlock proto era) Source #
Instance details

Associated Types

type HardForkIndices ( ShelleyBlock proto era) :: [ Type ] Source #

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

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

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

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