ouroboros-consensus-byronspec-0.1.0.0: ByronSpec ledger integration in the Ouroboros consensus layer
Safe HaskellNone
LanguageHaskell2010

Ouroboros.Consensus.ByronSpec.Ledger

Synopsis

Documentation

data family GenTx blk Source #

Generalized transaction

The mempool (and, accordingly, blocks) consist of "generalized transactions"; this could be "proper" transactions (transferring funds) but also other kinds of things such as update proposals, delegations, etc.

Instances

Instances details
Show (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Show (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Generic (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Associated Types

type Rep (GenTx ByronSpecBlock) ∷ TypeType Source #

Generic (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Associated Types

type Rep (Validated (GenTx ByronSpecBlock)) ∷ TypeType Source #

Serialise (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Methods

encodeGenTx ByronSpecBlock → Encoding #

decode ∷ Decoder s (GenTx ByronSpecBlock) #

encodeList ∷ [GenTx ByronSpecBlock] → Encoding #

decodeList ∷ Decoder s [GenTx ByronSpecBlock] #

NoThunks (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Methods

noThunks ∷ Context → GenTx ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → GenTx ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (GenTx ByronSpecBlock) → String #

NoThunks (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Methods

noThunks ∷ Context → Validated (GenTx ByronSpecBlock) → IO (Maybe ThunkInfo) #

wNoThunks ∷ Context → Validated (GenTx ByronSpecBlock) → IO (Maybe ThunkInfo) #

showTypeOfProxy (Validated (GenTx ByronSpecBlock)) → String #

newtype GenTx ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type Rep (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type Rep (GenTx ByronSpecBlock) = D1 ('MetaData "GenTx" "Ouroboros.Consensus.ByronSpec.Ledger.Mempool" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'True) (C1 ('MetaCons "ByronSpecGenTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unByronSpecGenTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByronSpecGenTx)))
type Rep (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type Rep (Validated (GenTx ByronSpecBlock)) = D1 ('MetaData "Validated" "Ouroboros.Consensus.ByronSpec.Ledger.Mempool" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'True) (C1 ('MetaCons "ValidatedByronSpecGenTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "forgetValidatedByronSpecGenTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (GenTx ByronSpecBlock))))
newtype Validated (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

data family Validated x Source #

" Validated " transaction or block

The ledger defines how to validate transactions and blocks. It's possible the type before and after validation may be distinct (eg Alonzo transactions), which originally motivated this family.

We also gain the related benefit that certain interface functions, such as those that reapply blocks, can have a more precise type now. TODO

Similarly, the Node-to-Client mini protocols can explicitly indicate that the client trusts the blocks from the local server, by having the server send Validated blocks to the client. TODO

Note that validation has different implications for a transaction than for a block. In particular, a validated transaction can be " reapplied " to different ledger states, whereas a validated block must only be " reapplied " to the exact same ledger state (eg as part of rebuilding from an on-disk ledger snapshot).

Since the ledger defines validation, see the ledger details for concrete examples of what determines the validity (wrt to a LedgerState) of a transaction and/or block. Example properties include: a transaction's claimed inputs exist and are still unspent, a block carries a sufficient cryptographic signature, etc.

Instances

Instances details
Show (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Generic (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Associated Types

type Rep (Validated (GenTx ByronSpecBlock)) ∷ TypeType Source #

NoThunks (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Methods

noThunks ∷ Context → Validated (GenTx ByronSpecBlock) → IO (Maybe ThunkInfo) #

wNoThunks ∷ Context → Validated (GenTx ByronSpecBlock) → IO (Maybe ThunkInfo) #

showTypeOfProxy (Validated (GenTx ByronSpecBlock)) → String #

type Rep (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type Rep (Validated (GenTx ByronSpecBlock)) = D1 ('MetaData "Validated" "Ouroboros.Consensus.ByronSpec.Ledger.Mempool" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'True) (C1 ('MetaCons "ValidatedByronSpecGenTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "forgetValidatedByronSpecGenTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (GenTx ByronSpecBlock))))
newtype Validated (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

data family LedgerState blk Source #

Ledger state associated with a block

Instances

Instances details
Eq (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Eq (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Show (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Show (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Generic (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Associated Types

type Rep (LedgerState ByronSpecBlock) ∷ TypeType Source #

Serialise (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

GetTip (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

GetTip (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

IsLedger (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

NoThunks (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Methods

noThunks ∷ Context → LedgerState ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → LedgerState ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (LedgerState ByronSpecBlock) → String #

NoThunks (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Methods

noThunks ∷ Context → Ticked (LedgerState ByronSpecBlock) → IO (Maybe ThunkInfo) #

wNoThunks ∷ Context → Ticked (LedgerState ByronSpecBlock) → IO (Maybe ThunkInfo) #

showTypeOfProxy (Ticked (LedgerState ByronSpecBlock)) → String #

ApplyBlock (LedgerState ByronSpecBlock) ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

data LedgerState ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type Rep (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type Rep (LedgerState ByronSpecBlock) = D1 ('MetaData "LedgerState" "Ouroboros.Consensus.ByronSpec.Ledger.Ledger" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecLedgerState" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronSpecLedgerTip") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe SlotNo)) :*: S1 ('MetaSel ('Just "byronSpecLedgerState") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (State CHAIN))))
type LedgerCfg (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type AuxLedgerEvent (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type LedgerErr (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

data Ticked (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type HeaderHash (LedgerState blk) 
Instance details

Defined in Ouroboros.Consensus.Ledger.Basics

data family BlockConfig blk Source #

Static configuration required to work with this type of blocks

Instances

Instances details
Generic (BlockConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (BlockConfig ByronSpecBlock) ∷ TypeType Source #

NoThunks (BlockConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

noThunks ∷ Context → BlockConfig ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → BlockConfig ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (BlockConfig ByronSpecBlock) → String #

data BlockConfig ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (BlockConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (BlockConfig ByronSpecBlock) = D1 ('MetaData "BlockConfig" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecBlockConfig" 'PrefixI 'False) (U1TypeType))

data family CodecConfig blk Source #

Static configuration required for serialisation and deserialisation of types pertaining to this type of block.

Data family instead of type family to get better type inference.

Instances

Instances details
Generic (CodecConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (CodecConfig ByronSpecBlock) ∷ TypeType Source #

NoThunks (CodecConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

noThunks ∷ Context → CodecConfig ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → CodecConfig ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (CodecConfig ByronSpecBlock) → String #

data CodecConfig ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (CodecConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (CodecConfig ByronSpecBlock) = D1 ('MetaData "CodecConfig" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecCodecConfig" 'PrefixI 'False) (U1TypeType))

data family StorageConfig blk Source #

Config needed for the NodeInitStorage class. Defined here to avoid circular dependencies.

Instances

Instances details
Generic (StorageConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (StorageConfig ByronSpecBlock) ∷ TypeType Source #

NoThunks (StorageConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

noThunks ∷ Context → StorageConfig ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → StorageConfig ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (StorageConfig ByronSpecBlock) → String #

data StorageConfig ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (StorageConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (StorageConfig ByronSpecBlock) = D1 ('MetaData "StorageConfig" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecStorageConfig" 'PrefixI 'False) (U1TypeType))

data family Header blk Source #

Instances

Instances details
HasHeader ByronSpecHeader Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Eq (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Show (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Generic (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (Header ByronSpecBlock) ∷ TypeType Source #

Serialise (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

encodeHeader ByronSpecBlock → Encoding #

decode ∷ Decoder s (Header ByronSpecBlock) #

encodeList ∷ [Header ByronSpecBlock] → Encoding #

decodeList ∷ Decoder s [Header ByronSpecBlock] #

HasHeader blk ⇒ StandardHash (Header blk) 
Instance details

Defined in Ouroboros.Consensus.Block.Abstract

data Header ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (Header ByronSpecBlock) = D1 ('MetaData "Header" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecHeader" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronSpecHeader") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BlockHeader) :*: (S1 ('MetaSel ('Just "byronSpecHeaderNo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BlockNo) :*: S1 ('MetaSel ('Just "byronSpecHeaderHash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Hash))))
type BlockProtocol (Header blk) 
Instance details

Defined in Ouroboros.Consensus.Block.Abstract

type HeaderHash (Header blk) 
Instance details

Defined in Ouroboros.Consensus.Block.Abstract

type HeaderHash (Header blk) = HeaderHash blk

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
Eq (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Show (Ticked ()) 
Instance details

Defined in Ouroboros.Consensus.Ticked

Methods

showsPrecIntTicked () → ShowS Source #

showTicked () → String Source #

showList ∷ [Ticked ()] → ShowS Source #

Show (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Show (Ticked a) ⇒ Show (Ticked (K a x)) 
Instance details

Defined in Ouroboros.Consensus.Ticked

Methods

showsPrecIntTicked (K a x) → ShowS Source #

showTicked (K a x) → String Source #

showList ∷ [Ticked (K a x)] → ShowS Source #

GetTip (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

NoThunks (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Methods

noThunks ∷ Context → Ticked (LedgerState ByronSpecBlock) → IO (Maybe ThunkInfo) #

wNoThunks ∷ Context → Ticked (LedgerState ByronSpecBlock) → IO (Maybe ThunkInfo) #

showTypeOfProxy (Ticked (LedgerState ByronSpecBlock)) → String #

Show (Ticked (f a)) ⇒ Show ((Ticked :.: f) a) 
Instance details

Defined in Ouroboros.Consensus.Ticked

Methods

showsPrecInt → (Ticked :.: f) a → ShowS Source #

show ∷ (Ticked :.: f) a → String Source #

showList ∷ [(Ticked :.: f) a] → ShowS Source #

NoThunks (Ticked (f a)) ⇒ NoThunks ((Ticked :.: f) a) 
Instance details

Defined in Ouroboros.Consensus.Ticked

Methods

noThunks ∷ Context → (Ticked :.: f) a → IO (Maybe ThunkInfo) #

wNoThunks ∷ Context → (Ticked :.: f) a → IO (Maybe ThunkInfo) #

showTypeOfProxy ((Ticked :.: f) a) → String #

data Ticked () 
Instance details

Defined in Ouroboros.Consensus.Ticked

data Ticked (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type HeaderHash (Ticked l) 
Instance details

Defined in Ouroboros.Consensus.Ledger.Basics

newtype Ticked (K a x) 
Instance details

Defined in Ouroboros.Consensus.Ticked

newtype Ticked (K a x) = TickedK {}

data ByronSpecGenesis Source #

The equivalent of the genesis config for the abstract ledger

Constructors

ByronSpecGenesis 

Fields

data ByronSpecBlock Source #

Block according to the Byron spec

Just like we do for ByronBlock, we cache the header hash. In addition, we also add the BlockNo, as this is entirely absent from the spec but we need it for the HasHeader abstraction, which is ubiquitous in ouroboros-consensus and -network.

Constructors

ByronSpecBlock 

Instances

Instances details
Eq ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Show ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Generic ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep ByronSpecBlockTypeType Source #

Serialise ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

encodeByronSpecBlock → Encoding #

decode ∷ Decoder s ByronSpecBlock #

encodeList ∷ [ByronSpecBlock] → Encoding #

decodeList ∷ Decoder s [ByronSpecBlock] #

LedgerSupportsMempool ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

CommonProtocolParams ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

UpdateLedger ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

GetPrevHash ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

GetHeader ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

StandardHash ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

HasHeader ByronSpecHeader Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

HasHeader ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Eq (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Eq (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Eq (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Show (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Show (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Show (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Show (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Show (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Generic (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Associated Types

type Rep (GenTx ByronSpecBlock) ∷ TypeType Source #

Generic (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Associated Types

type Rep (Validated (GenTx ByronSpecBlock)) ∷ TypeType Source #

Generic (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Associated Types

type Rep (LedgerState ByronSpecBlock) ∷ TypeType Source #

Generic (BlockConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (BlockConfig ByronSpecBlock) ∷ TypeType Source #

Generic (CodecConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (CodecConfig ByronSpecBlock) ∷ TypeType Source #

Generic (StorageConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (StorageConfig ByronSpecBlock) ∷ TypeType Source #

Generic (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Associated Types

type Rep (Header ByronSpecBlock) ∷ TypeType Source #

Serialise (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Methods

encodeGenTx ByronSpecBlock → Encoding #

decode ∷ Decoder s (GenTx ByronSpecBlock) #

encodeList ∷ [GenTx ByronSpecBlock] → Encoding #

decodeList ∷ Decoder s [GenTx ByronSpecBlock] #

Serialise (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Serialise (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

encodeHeader ByronSpecBlock → Encoding #

decode ∷ Decoder s (Header ByronSpecBlock) #

encodeList ∷ [Header ByronSpecBlock] → Encoding #

decodeList ∷ Decoder s [Header ByronSpecBlock] #

GetTip (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

GetTip (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

IsLedger (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

NoThunks (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Methods

noThunks ∷ Context → GenTx ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → GenTx ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (GenTx ByronSpecBlock) → String #

NoThunks (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

Methods

noThunks ∷ Context → Validated (GenTx ByronSpecBlock) → IO (Maybe ThunkInfo) #

wNoThunks ∷ Context → Validated (GenTx ByronSpecBlock) → IO (Maybe ThunkInfo) #

showTypeOfProxy (Validated (GenTx ByronSpecBlock)) → String #

NoThunks (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Methods

noThunks ∷ Context → LedgerState ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → LedgerState ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (LedgerState ByronSpecBlock) → String #

NoThunks (BlockConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

noThunks ∷ Context → BlockConfig ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → BlockConfig ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (BlockConfig ByronSpecBlock) → String #

NoThunks (CodecConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

noThunks ∷ Context → CodecConfig ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → CodecConfig ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (CodecConfig ByronSpecBlock) → String #

NoThunks (StorageConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

Methods

noThunks ∷ Context → StorageConfig ByronSpecBlockIO (Maybe ThunkInfo) #

wNoThunks ∷ Context → StorageConfig ByronSpecBlockIO (Maybe ThunkInfo) #

showTypeOfProxy (StorageConfig ByronSpecBlock) → String #

NoThunks (Ticked (LedgerState ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

Methods

noThunks ∷ Context → Ticked (LedgerState ByronSpecBlock) → IO (Maybe ThunkInfo) #

wNoThunks ∷ Context → Ticked (LedgerState ByronSpecBlock) → IO (Maybe ThunkInfo) #

showTypeOfProxy (Ticked (LedgerState ByronSpecBlock)) → String #

ApplyBlock (LedgerState ByronSpecBlock) ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type Rep ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep ByronSpecBlock = D1 ('MetaData "ByronSpecBlock" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecBlock" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronSpecBlock") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Block) :*: (S1 ('MetaSel ('Just "byronSpecBlockNo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BlockNo) :*: S1 ('MetaSel ('Just "byronSpecBlockHash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Hash))))
newtype GenTx ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type ApplyTxErr ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

data LedgerState ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

data BlockConfig ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

data CodecConfig ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

data StorageConfig ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

data Header ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type HeaderHash ByronSpecBlock Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type Rep (GenTx ByronSpecBlock) = D1 ('MetaData "GenTx" "Ouroboros.Consensus.ByronSpec.Ledger.Mempool" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'True) (C1 ('MetaCons "ByronSpecGenTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "unByronSpecGenTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByronSpecGenTx)))
type Rep (Validated (GenTx ByronSpecBlock)) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type Rep (Validated (GenTx ByronSpecBlock)) = D1 ('MetaData "Validated" "Ouroboros.Consensus.ByronSpec.Ledger.Mempool" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'True) (C1 ('MetaCons "ValidatedByronSpecGenTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "forgetValidatedByronSpecGenTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (GenTx ByronSpecBlock))))
type Rep (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type Rep (LedgerState ByronSpecBlock) = D1 ('MetaData "LedgerState" "Ouroboros.Consensus.ByronSpec.Ledger.Ledger" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecLedgerState" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronSpecLedgerTip") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe SlotNo)) :*: S1 ('MetaSel ('Just "byronSpecLedgerState") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (State CHAIN))))
type Rep (BlockConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (BlockConfig ByronSpecBlock) = D1 ('MetaData "BlockConfig" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecBlockConfig" 'PrefixI 'False) (U1TypeType))
type Rep (CodecConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (CodecConfig ByronSpecBlock) = D1 ('MetaData "CodecConfig" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecCodecConfig" 'PrefixI 'False) (U1TypeType))
type Rep (StorageConfig ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (StorageConfig ByronSpecBlock) = D1 ('MetaData "StorageConfig" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecStorageConfig" 'PrefixI 'False) (U1TypeType))
type Rep (Header ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Block

type Rep (Header ByronSpecBlock) = D1 ('MetaData "Header" "Ouroboros.Consensus.ByronSpec.Ledger.Block" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) (C1 ('MetaCons "ByronSpecHeader" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronSpecHeader") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BlockHeader) :*: (S1 ('MetaSel ('Just "byronSpecHeaderNo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BlockNo) :*: S1 ('MetaSel ('Just "byronSpecHeaderHash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Hash))))
newtype Validated (GenTx ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Mempool

type LedgerCfg (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type AuxLedgerEvent (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

type LedgerErr (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

data Ticked (LedgerState ByronSpecBlock) Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.Ledger

newtype ByronSpecGenTxErr Source #

Transaction errors

We don't distinguish these from any other kind of CHAIN failure.

Constructors

ByronSpecGenTxErr 

Fields

Instances

Instances details
Show ByronSpecGenTxErr Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

Generic ByronSpecGenTxErr Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

Associated Types

type Rep ByronSpecGenTxErrTypeType Source #

Serialise ByronSpecGenTxErr Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

Methods

encodeByronSpecGenTxErr → Encoding #

decode ∷ Decoder s ByronSpecGenTxErr #

encodeList ∷ [ByronSpecGenTxErr] → Encoding #

decodeList ∷ Decoder s [ByronSpecGenTxErr] #

type Rep ByronSpecGenTxErr Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

type Rep ByronSpecGenTxErr = D1 ('MetaData "ByronSpecGenTxErr" "Ouroboros.Consensus.ByronSpec.Ledger.GenTx" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'True) (C1 ('MetaCons "ByronSpecGenTxErr" 'PrefixI 'True) (S1 ('MetaSel ('Just "unByronSpecGenTxErr") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [PredicateFailure CHAIN])))

data ByronSpecGenTx Source #

Generalized transaction

The spec doesn't have a type for this, instead splitting the block body into separate lists

Instances

Instances details
Show ByronSpecGenTx Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

Generic ByronSpecGenTx Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

Associated Types

type Rep ByronSpecGenTxTypeType Source #

Serialise ByronSpecGenTx Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

Methods

encodeByronSpecGenTx → Encoding #

decode ∷ Decoder s ByronSpecGenTx #

encodeList ∷ [ByronSpecGenTx] → Encoding #

decodeList ∷ Decoder s [ByronSpecGenTx] #

type Rep ByronSpecGenTx Source # 
Instance details

Defined in Ouroboros.Consensus.ByronSpec.Ledger.GenTx

type Rep ByronSpecGenTx = D1 ('MetaData "ByronSpecGenTx" "Ouroboros.Consensus.ByronSpec.Ledger.GenTx" "ouroboros-consensus-byronspec-0.1.0.0-inplace" 'False) ((C1 ('MetaCons "ByronSpecGenTxDCert" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DCert)) :+: C1 ('MetaCons "ByronSpecGenTxTx" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Tx))) :+: (C1 ('MetaCons "ByronSpecGenTxUProp" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UProp)) :+: C1 ('MetaCons "ByronSpecGenTxVote" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Vote))))