cardano-ledger-core-0.1.0.0: Core components of Cardano ledgers from the Shelley release on.
Safe Haskell None
Language Haskell2010

Cardano.Ledger.Core

Description

This module defines core type families which we know to vary from era to era.

Families in this module should be indexed on era.

It is intended for qualified import: > import qualified Cardano.Ledger.Core as Core

Synopsis

Era-changing types

type family TxOut era = (r :: Type ) | r -> era Source #

A transaction output.

type family TxBody era = (r :: Type ) | r -> era Source #

The body of a transaction.

type family Value era :: Type Source #

A value is something which quantifies a transaction output.

type family Script era :: Type Source #

Scripts which may lock transaction outputs in this era

type family AuxiliaryData era = (r :: Type ) | r -> era Source #

AuxiliaryData which may be attached to a transaction

type family PParams era = (r :: Type ) | r -> era Source #

Protocol parameters

type family PParamsDelta era = (r :: Type ) | r -> era Source #

The type of updates to Protocol parameters

type family Witnesses era = (r :: Type ) | r -> era Source #

The set of witnesses in a Tx

Re-exported fixed Tx

type family Tx era = (r :: Type ) | r -> era Source #

A transaction.

Constraint synonyms

type ChainData t = ( Eq t, Show t, NoThunks t, Typeable t) Source #

Common constraints

NOTE: Ord is not included, as Ord for a Block or a NewEpochState doesn't make sense.

type SerialisableData t = ( FromCBOR t, ToCBOR t) Source #

Constraints for serialising from/to CBOR

type AnnotatedData t = ( FromCBOR ( Annotator t), ToCBOR t) Source #

Constraints for serialising from/to CBOR using Annotator

Era STS

type family EraRule (k :: Symbol ) era :: Type Source #

Era STS map