Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.Byron.Ledger.Block
Synopsis
- newtype ByronHash = ByronHash {}
- mkByronHash ∷ ABlockOrBoundaryHdr ByteString → ByronHash
- data ByronBlock = ByronBlock {}
- annotateByronBlock ∷ EpochSlots → Block → ByronBlock
- mkByronBlock ∷ EpochSlots → ABlockOrBoundary ByteString → ByronBlock
- data family Header blk
- mkBoundaryByronHeader ∷ SlotNo → ABoundaryHeader ByteString → SizeInBytes → Header ByronBlock
- mkByronHeader ∷ EpochSlots → ABlockOrBoundaryHdr ByteString → SizeInBytes → Header ByronBlock
- mkRegularByronHeader ∷ AHeader ByteString → SizeInBytes → Header ByronBlock
- byronBlockIsEBB ∷ ByronBlock → IsEBB
- byronHeaderIsEBB ∷ Header ByronBlock → IsEBB
- knownEBBs ∷ Map (HeaderHash ByronBlock) (ChainHash ByronBlock)
- data UnsizedHeader = UnsizedHeader {}
- joinSizeHint ∷ UnsizedHeader → SizeInBytes → Header ByronBlock
- mkUnsizedHeader ∷ EpochSlots → ABlockOrBoundaryHdr ByteString → UnsizedHeader
- splitSizeHint ∷ Header ByronBlock → (UnsizedHeader, SizeInBytes)
Hash
Constructors
ByronHash | |
Fields |
Instances
Block
data ByronBlock Source #
Byron block
We cache two bits of information:
- We cache the slot number as this is not readily available for EBBs.
Having it cached allows us to e.g. give a
HasHeader
instance. - We cache the hash as this is expensive to compute and we need it often.
Constructors
ByronBlock | |
Fields |
Instances
Show ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods showsPrec ∷ Int → ByronBlock → ShowS # show ∷ ByronBlock → String # showList ∷ [ByronBlock] → ShowS # | |||||||||
Eq ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||||||
ConvertRawHash ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods toRawHash ∷ proxy ByronBlock → HeaderHash ByronBlock → ByteString Source # fromRawHash ∷ proxy ByronBlock → ByteString → HeaderHash ByronBlock Source # toShortRawHash ∷ proxy ByronBlock → HeaderHash ByronBlock → ShortByteString Source # fromShortRawHash ∷ proxy ByronBlock → ShortByteString → HeaderHash ByronBlock Source # hashSize ∷ proxy ByronBlock → Word32 Source # | |||||||||
GetHeader ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods getHeader ∷ ByronBlock → Header ByronBlock Source # blockMatchesHeader ∷ Header ByronBlock → ByronBlock → Bool Source # | |||||||||
GetPrevHash ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods headerPrevHash ∷ Header ByronBlock → ChainHash ByronBlock Source # | |||||||||
BlockSupportsDiffusionPipelining ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node Associated Types
Methods initialTentativeHeaderState ∷ Proxy ByronBlock → TentativeHeaderState ByronBlock Source # tentativeHeaderView ∷ BlockConfig ByronBlock → Header ByronBlock → TentativeHeaderView ByronBlock Source # applyTentativeHeaderView ∷ Proxy ByronBlock → TentativeHeaderView ByronBlock → TentativeHeaderState ByronBlock → Maybe (TentativeHeaderState ByronBlock) Source # | |||||||||
BlockSupportsMetrics ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node Methods isSelfIssued ∷ BlockConfig ByronBlock → Header ByronBlock → WhetherSelfIssued Source # | |||||||||
BlockSupportsProtocol ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.PBFT Methods validateView ∷ BlockConfig ByronBlock → Header ByronBlock → ValidateView (BlockProtocol ByronBlock) Source # selectView ∷ BlockConfig ByronBlock → Header ByronBlock → SelectView (BlockProtocol ByronBlock) Source # projectChainOrderConfig ∷ BlockConfig ByronBlock → ChainOrderConfig (SelectView (BlockProtocol ByronBlock)) Source # | |||||||||
BlockSupportsSanityCheck ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node | |||||||||
ConfigSupportsNode ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node | |||||||||
HasHardForkHistory ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Associated Types
Methods hardForkSummary ∷ ∀ (mk ∷ MapKind). LedgerConfig ByronBlock → LedgerState ByronBlock mk → Summary (HardForkIndices ByronBlock) Source # | |||||||||
ImmutableEraParams ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods immutableEraParams ∷ TopLevelConfig ByronBlock → EraParams Source # | |||||||||
NoHardForks ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods toPartialLedgerConfig ∷ proxy ByronBlock → LedgerConfig ByronBlock → PartialLedgerConfig ByronBlock Source # | |||||||||
SingleEraBlock ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods singleEraTransition ∷ ∀ (mk ∷ MapKind). PartialLedgerConfig ByronBlock → EraParams → Bound → LedgerState ByronBlock mk → Maybe EpochNo Source # singleEraInfo ∷ proxy ByronBlock → SingleEraInfo ByronBlock Source # | |||||||||
CondenseConstraints ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Condense | |||||||||
HasPartialLedgerConfig ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Associated Types
Methods completeLedgerConfig ∷ proxy ByronBlock → EpochInfo (Except PastHorizonException) → PartialLedgerConfig ByronBlock → LedgerConfig ByronBlock Source # | |||||||||
SerialiseConstraintsHFC ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC | |||||||||
BasicEnvelopeValidation ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.HeaderValidation Methods expectedFirstBlockNo ∷ proxy ByronBlock → BlockNo Source # expectedNextBlockNo ∷ proxy ByronBlock → TipInfo ByronBlock → TipInfo ByronBlock → BlockNo → BlockNo Source # minimumPossibleSlotNo ∷ Proxy ByronBlock → SlotNo Source # minimumNextSlotNo ∷ proxy ByronBlock → TipInfo ByronBlock → TipInfo ByronBlock → SlotNo → SlotNo Source # | |||||||||
HasAnnTip ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.HeaderValidation Associated Types
Methods getTipInfo ∷ Header ByronBlock → TipInfo ByronBlock Source # tipInfoHash ∷ proxy ByronBlock → TipInfo ByronBlock → HeaderHash ByronBlock Source # | |||||||||
ValidateEnvelope ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.HeaderValidation Associated Types
| |||||||||
UpdateLedger ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
CommonProtocolParams ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods maxHeaderSize ∷ ∀ (mk ∷ MapKind). LedgerState ByronBlock mk → Word32 Source # maxTxSize ∷ ∀ (mk ∷ MapKind). LedgerState ByronBlock mk → Word32 Source # | |||||||||
InspectLedger ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect Associated Types
Methods inspectLedger ∷ ∀ (mk1 ∷ MapKind) (mk2 ∷ MapKind). TopLevelConfig ByronBlock → LedgerState ByronBlock mk1 → LedgerState ByronBlock mk2 → [LedgerEvent ByronBlock] Source # | |||||||||
BlockSupportsLedgerQuery ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods answerPureBlockQuery ∷ ExtLedgerCfg ByronBlock → BlockQuery ByronBlock 'QFNoTables result → ExtLedgerState ByronBlock EmptyMK → result Source # answerBlockQueryLookup ∷ MonadSTM m ⇒ ExtLedgerCfg ByronBlock → BlockQuery ByronBlock 'QFLookupTables result → ReadOnlyForker' m ByronBlock → m result Source # answerBlockQueryTraverse ∷ MonadSTM m ⇒ ExtLedgerCfg ByronBlock → BlockQuery ByronBlock 'QFTraverseTables result → ReadOnlyForker' m ByronBlock → m result Source # blockQueryIsSupportedOnVersion ∷ ∀ (fp ∷ QueryFootprint) result. BlockQuery ByronBlock fp result → BlockNodeToClientVersion ByronBlock → Bool Source # | |||||||||
HasTxs ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods extractTxs ∷ ByronBlock → [GenTx ByronBlock] Source # | |||||||||
LedgerSupportsMempool ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods txInvariant ∷ GenTx ByronBlock → Bool Source # applyTx ∷ LedgerConfig ByronBlock → WhetherToIntervene → SlotNo → GenTx ByronBlock → TickedLedgerState ByronBlock ValuesMK → Except (ApplyTxErr ByronBlock) (TickedLedgerState ByronBlock DiffMK, Validated (GenTx ByronBlock)) Source # reapplyTx ∷ ComputeDiffs → LedgerConfig ByronBlock → SlotNo → Validated (GenTx ByronBlock) → TickedLedgerState ByronBlock ValuesMK → Except (ApplyTxErr ByronBlock) (TickedLedgerState ByronBlock TrackingMK) Source # reapplyTxs ∷ ComputeDiffs → LedgerConfig ByronBlock → SlotNo → [(Validated (GenTx ByronBlock), extra)] → TickedLedgerState ByronBlock ValuesMK → ReapplyTxsResult extra ByronBlock Source # txForgetValidated ∷ Validated (GenTx ByronBlock) → GenTx ByronBlock Source # getTransactionKeySets ∷ GenTx ByronBlock → LedgerTables (LedgerState ByronBlock) KeysMK Source # prependMempoolDiffs ∷ TickedLedgerState ByronBlock DiffMK → TickedLedgerState ByronBlock DiffMK → TickedLedgerState ByronBlock DiffMK Source # applyMempoolDiffs ∷ LedgerTables (LedgerState ByronBlock) ValuesMK → LedgerTables (LedgerState ByronBlock) KeysMK → TickedLedgerState ByronBlock DiffMK → TickedLedgerState ByronBlock ValuesMK Source # | |||||||||
TxLimits ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Associated Types
Methods txMeasure ∷ LedgerConfig ByronBlock → TickedLedgerState ByronBlock ValuesMK → GenTx ByronBlock → Except (ApplyTxErr ByronBlock) (TxMeasure ByronBlock) Source # blockCapacityTxMeasure ∷ ∀ (mk ∷ MapKind). LedgerConfig ByronBlock → TickedLedgerState ByronBlock mk → TxMeasure ByronBlock Source # | |||||||||
LedgerSupportsPeerSelection ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods getPeers ∷ ∀ (mk ∷ MapKind). LedgerState ByronBlock mk → [(PoolStake, NonEmpty StakePoolRelay)] Source # | |||||||||
LedgerSupportsProtocol ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods protocolLedgerView ∷ ∀ (mk ∷ MapKind). LedgerConfig ByronBlock → Ticked (LedgerState ByronBlock) mk → LedgerView (BlockProtocol ByronBlock) Source # ledgerViewForecastAt ∷ ∀ (mk ∷ MapKind). HasCallStack ⇒ LedgerConfig ByronBlock → LedgerState ByronBlock mk → Forecast (LedgerView (BlockProtocol ByronBlock)) Source # | |||||||||
NodeInitStorage ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node Methods nodeImmutableDbChunkInfo ∷ StorageConfig ByronBlock → ChunkInfo Source # nodeCheckIntegrity ∷ StorageConfig ByronBlock → ByronBlock → Bool Source # nodeInitChainDB ∷ IOLike m ⇒ StorageConfig ByronBlock → InitChainDB m ByronBlock → m () Source # | |||||||||
HasNetworkProtocolVersion ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.NetworkProtocolVersion Associated Types
| |||||||||
SupportedNetworkProtocolVersion ByronBlockHFC Source # | Forward to the ByronBlock instance. Only supports
| ||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods supportedNodeToNodeVersions ∷ Proxy ByronBlockHFC → Map NodeToNodeVersion (BlockNodeToNodeVersion ByronBlockHFC) Source # supportedNodeToClientVersions ∷ Proxy ByronBlockHFC → Map NodeToClientVersion (BlockNodeToClientVersion ByronBlockHFC) Source # latestReleasedNodeVersion ∷ Proxy ByronBlockHFC → (Maybe NodeToNodeVersion, Maybe NodeToClientVersion) Source # | |||||||||
SupportedNetworkProtocolVersion ByronBlock Source # | This instance isn't used apart from tests; we therefore make our life easy below. | ||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.NetworkProtocolVersion Methods supportedNodeToNodeVersions ∷ Proxy ByronBlock → Map NodeToNodeVersion (BlockNodeToNodeVersion ByronBlock) Source # supportedNodeToClientVersions ∷ Proxy ByronBlock → Map NodeToClientVersion (BlockNodeToClientVersion ByronBlock) Source # latestReleasedNodeVersion ∷ Proxy ByronBlock → (Maybe NodeToNodeVersion, Maybe NodeToClientVersion) Source # | |||||||||
RunNode ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node | |||||||||
SerialiseNodeToClientConstraints ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToNodeConstraints ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods estimateBlockSize ∷ Header ByronBlock → SizeInBytes Source # | |||||||||
SerialiseDiskConstraints ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
HasBinaryBlockInfo ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods | |||||||||
Condense ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods condense ∷ ByronBlock → String Source # | |||||||||
HasHeader ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods getHeaderFields ∷ ByronBlock → HeaderFields ByronBlock Source # | |||||||||
HasNestedContent Header ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Serialisation Methods unnest ∷ Header ByronBlock → DepPair (NestedCtxt Header ByronBlock) Source # nest ∷ DepPair (NestedCtxt Header ByronBlock) → Header ByronBlock Source # | |||||||||
SerialiseNodeToClient ByronBlock ApplyMempoolPayloadErr Source # |
| ||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToClient ByronBlock Config Source # | |||||||||
SerialiseNodeToClient ByronBlock SlotNo Source # | |||||||||
SerialiseNodeToClient ByronBlock ByronPartialLedgerConfig Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC | |||||||||
SerialiseNodeToClient ByronBlock ByronBlock Source # | CBOR-in-CBOR for the annotation. This also makes it compatible with the
wrapped ( | ||||||||
SerialiseNodeToNode ByronBlock ByronBlock Source # | CBOR-in-CBOR for the annotation. This also makes it compatible with the
wrapped ( | ||||||||
EncodeDisk ByronBlock ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDisk ∷ CodecConfig ByronBlock → ByronBlock → Encoding Source # | |||||||||
ReconstructNestedCtxt Header ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods reconstructPrefixLen ∷ proxy (Header ByronBlock) → PrefixLen Source # reconstructNestedCtxt ∷ proxy (Header ByronBlock) → ShortByteString → SizeInBytes → SomeSecond (NestedCtxt Header) ByronBlock Source # | |||||||||
StandardHash ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||||||
ShowProxy ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||||||
SerialiseBlockQueryResult ByronBlock BlockQuery Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeBlockQueryResult ∷ ∀ (fp ∷ QueryFootprint) result. CodecConfig ByronBlock → BlockNodeToClientVersion ByronBlock → BlockQuery ByronBlock fp result → result → Encoding Source # decodeBlockQueryResult ∷ ∀ (fp ∷ QueryFootprint) result. CodecConfig ByronBlock → BlockNodeToClientVersion ByronBlock → BlockQuery ByronBlock fp result → ∀ s. Decoder s result Source # | |||||||||
SameDepIndex2 (BlockQuery ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods sameDepIndex2 ∷ ∀ (x ∷ QueryFootprint) a (y ∷ QueryFootprint) b. BlockQuery ByronBlock x a → BlockQuery ByronBlock y b → Maybe ('(x, a) :~: '(y, b)) Source # | |||||||||
SerialiseNodeToClient ByronBlock (SomeBlockQuery (BlockQuery ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToClient ByronBlock (GenTx ByronBlock) Source # | No CBOR-in-CBOR, because we check for canonical encodings, which means we can use the recomputed encoding for the annotation. | ||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToClient ByronBlock (GenTxId ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToNode ByronBlock (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToNode ByronBlock (GenTx ByronBlock) Source # | No CBOR-in-CBOR, because we check for canonical encodings, which means we can use the recomputed encoding for the annotation. | ||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToNode ByronBlock (GenTxId ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToNode ByronBlock (SerialisedHeader ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
DecodeDisk ByronBlock (AnnTip ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDisk ∷ CodecConfig ByronBlock → ∀ s. Decoder s (AnnTip ByronBlock) Source # | |||||||||
DecodeDisk ByronBlock (PBftState PBftByronCrypto) Source # |
| ||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDisk ∷ CodecConfig ByronBlock → ∀ s. Decoder s (PBftState PBftByronCrypto) Source # | |||||||||
EncodeDisk ByronBlock (AnnTip ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDisk ∷ CodecConfig ByronBlock → AnnTip ByronBlock → Encoding Source # | |||||||||
EncodeDisk ByronBlock (PBftState PBftByronCrypto) Source # |
| ||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDisk ∷ CodecConfig ByronBlock → PBftState PBftByronCrypto → Encoding Source # | |||||||||
ShowProxy (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||||||
ShowProxy (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
ShowProxy (TxId (GenTx ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
SerialiseNodeToClient ByronBlock (Serialised ByronBlock) Source # |
| ||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
SerialiseNodeToNode ByronBlock (Serialised ByronBlock) Source # |
| ||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||||||
DecodeDisk ByronBlock (LedgerState ByronBlock mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDisk ∷ CodecConfig ByronBlock → ∀ s. Decoder s (LedgerState ByronBlock mk) Source # | |||||||||
DecodeDisk ByronBlock (ByteString → ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDisk ∷ CodecConfig ByronBlock → ∀ s. Decoder s (ByteString → ByronBlock) Source # | |||||||||
EncodeDisk ByronBlock (LedgerState ByronBlock mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDisk ∷ CodecConfig ByronBlock → LedgerState ByronBlock mk → Encoding Source # | |||||||||
SameDepIndex (NestedCtxt_ ByronBlock f ∷ Type → Type) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Serialisation Methods sameDepIndex ∷ NestedCtxt_ ByronBlock f a → NestedCtxt_ ByronBlock f b → Maybe (a :~: b) Source # | |||||||||
Generic (BlockConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config Associated Types
Methods from ∷ BlockConfig ByronBlock → Rep (BlockConfig ByronBlock) x # to ∷ Rep (BlockConfig ByronBlock) x → BlockConfig ByronBlock # | |||||||||
Generic (CodecConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config Associated Types
Methods from ∷ CodecConfig ByronBlock → Rep (CodecConfig ByronBlock) x # to ∷ Rep (CodecConfig ByronBlock) x → CodecConfig ByronBlock # | |||||||||
Generic (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Associated Types
Methods from ∷ Header ByronBlock → Rep (Header ByronBlock) x # to ∷ Rep (Header ByronBlock) x → Header ByronBlock # | |||||||||
Generic (StorageConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config Associated Types
Methods from ∷ StorageConfig ByronBlock → Rep (StorageConfig ByronBlock) x # to ∷ Rep (StorageConfig ByronBlock) x → StorageConfig ByronBlock # | |||||||||
Generic (Validated (GenTx ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Associated Types
Methods from ∷ Validated (GenTx ByronBlock) → Rep (Validated (GenTx ByronBlock)) x # to ∷ Rep (Validated (GenTx ByronBlock)) x → Validated (GenTx ByronBlock) # | |||||||||
Generic (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Associated Types
Methods from ∷ GenTx ByronBlock → Rep (GenTx ByronBlock) x # to ∷ Rep (GenTx ByronBlock) x → GenTx ByronBlock # | |||||||||
Show (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||||||
Show (CanonicalTxIn (CardanoEras c)) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Methods showsPrec ∷ Int → CanonicalTxIn (CardanoEras c) → ShowS # show ∷ CanonicalTxIn (CardanoEras c) → String # showList ∷ [CanonicalTxIn (CardanoEras c)] → ShowS # | |||||||||
Show (CanonicalTxIn '[ByronBlock]) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods showsPrec ∷ Int → CanonicalTxIn '[ByronBlock] → ShowS # show ∷ CanonicalTxIn '[ByronBlock] → String # showList ∷ [CanonicalTxIn '[ByronBlock]] → ShowS # | |||||||||
Show (Validated (GenTx ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
Show (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
Show (GenTxId ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
Eq (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods (==) ∷ Header ByronBlock → Header ByronBlock → Bool # (/=) ∷ Header ByronBlock → Header ByronBlock → Bool # | |||||||||
Eq (CanonicalTxIn (CardanoEras c)) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Methods (==) ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → Bool # (/=) ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → Bool # | |||||||||
Eq (CanonicalTxIn '[ByronBlock]) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods (==) ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → Bool # (/=) ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → Bool # | |||||||||
Eq (Validated (GenTx ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods (==) ∷ Validated (GenTx ByronBlock) → Validated (GenTx ByronBlock) → Bool # (/=) ∷ Validated (GenTx ByronBlock) → Validated (GenTx ByronBlock) → Bool # | |||||||||
Eq (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods (==) ∷ GenTx ByronBlock → GenTx ByronBlock → Bool # (/=) ∷ GenTx ByronBlock → GenTx ByronBlock → Bool # | |||||||||
Eq (TxId (GenTx ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods (==) ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → Bool # (/=) ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → Bool # | |||||||||
Ord (CanonicalTxIn (CardanoEras c)) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Methods compare ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → Ordering # (<) ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → Bool # (<=) ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → Bool # (>) ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → Bool # (>=) ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → Bool # max ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) # min ∷ CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) → CanonicalTxIn (CardanoEras c) # | |||||||||
Ord (CanonicalTxIn '[ByronBlock]) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods compare ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → Ordering # (<) ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → Bool # (<=) ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → Bool # (>) ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → Bool # (>=) ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → Bool # max ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] # min ∷ CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] → CanonicalTxIn '[ByronBlock] # | |||||||||
Ord (TxId (GenTx ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods compare ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → Ordering # (<) ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → Bool # (<=) ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → Bool # (>) ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → Bool # (>=) ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → Bool # max ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) # min ∷ TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) → TxId (GenTx ByronBlock) # | |||||||||
CardanoHardForkConstraints c ⇒ MemPack (CanonicalTxIn (CardanoEras c)) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Methods packedByteCount ∷ CanonicalTxIn (CardanoEras c) → Int Source # packM ∷ CanonicalTxIn (CardanoEras c) → Pack s () Source # unpackM ∷ Buffer b ⇒ Unpack b (CanonicalTxIn (CardanoEras c)) Source # | |||||||||
MemPack (CanonicalTxIn '[ByronBlock]) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods packedByteCount ∷ CanonicalTxIn '[ByronBlock] → Int Source # packM ∷ CanonicalTxIn '[ByronBlock] → Pack s () Source # unpackM ∷ Buffer b ⇒ Unpack b (CanonicalTxIn '[ByronBlock]) Source # | |||||||||
NoThunks (BlockConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config Methods noThunks ∷ Context → BlockConfig ByronBlock → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → BlockConfig ByronBlock → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (BlockConfig ByronBlock) → String Source # | |||||||||
NoThunks (CodecConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config Methods noThunks ∷ Context → CodecConfig ByronBlock → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → CodecConfig ByronBlock → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (CodecConfig ByronBlock) → String Source # | |||||||||
NoThunks (Header ByronBlock) Source # | |||||||||
NoThunks (StorageConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config Methods noThunks ∷ Context → StorageConfig ByronBlock → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → StorageConfig ByronBlock → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (StorageConfig ByronBlock) → String Source # | |||||||||
NoThunks (CanonicalTxIn (CardanoEras c)) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Methods noThunks ∷ Context → CanonicalTxIn (CardanoEras c) → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → CanonicalTxIn (CardanoEras c) → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (CanonicalTxIn (CardanoEras c)) → String Source # | |||||||||
NoThunks (CanonicalTxIn '[ByronBlock]) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods noThunks ∷ Context → CanonicalTxIn '[ByronBlock] → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → CanonicalTxIn '[ByronBlock] → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (CanonicalTxIn '[ByronBlock]) → String Source # | |||||||||
NoThunks (Validated (GenTx ByronBlock)) Source # | |||||||||
NoThunks (GenTx ByronBlock) Source # | |||||||||
NoThunks (TxId (GenTx ByronBlock)) Source # | |||||||||
CardanoHardForkConstraints c ⇒ CanHardFork (CardanoEras c) Source # | When performing era translations, two eras have special behaviours on the ledger tables:
| ||||||||
Defined in Ouroboros.Consensus.Cardano.CanHardFork Associated Types
Methods hardForkEraTranslation ∷ EraTranslation (CardanoEras c) Source # hardForkChainSel ∷ Tails AcrossEraSelection (CardanoEras c) Source # hardForkInjectTxs ∷ InPairs (RequiringBoth WrapLedgerConfig (Product2 InjectTx InjectValidatedTx)) (CardanoEras c) Source # hardForkInjTxMeasure ∷ NS WrapTxMeasure (CardanoEras c) → HardForkTxMeasure (CardanoEras c) Source # | |||||||||
CardanoHardForkConstraints c ⇒ CondenseConstraints (CardanoBlock c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Condense | |||||||||
CardanoHardForkConstraints c ⇒ HasCanonicalTxIn (CardanoEras c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Associated Types
Methods injectCanonicalTxIn ∷ Index (CardanoEras c) x → TxIn (LedgerState x) → CanonicalTxIn (CardanoEras c) Source # ejectCanonicalTxIn ∷ Index (CardanoEras c) x → CanonicalTxIn (CardanoEras c) → TxIn (LedgerState x) Source # | |||||||||
CardanoHardForkConstraints c ⇒ HasHardForkTxOut (CardanoEras c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Associated Types
Methods injectHardForkTxOut ∷ Index (CardanoEras c) x → TxOut (LedgerState x) → HardForkTxOut (CardanoEras c) Source # ejectHardForkTxOut ∷ Index (CardanoEras c) x → HardForkTxOut (CardanoEras c) → TxOut (LedgerState x) Source # txOutEjections ∷ NP ((K (NS WrapTxOut (CardanoEras c)) ∷ Type → Type) -.-> WrapTxOut) (CardanoEras c) Source # txOutTranslations ∷ Tails (Fn2 WrapTxOut) (CardanoEras c) Source # | |||||||||
CardanoHardForkConstraints c ⇒ BlockSupportsHFLedgerQuery (CardanoEras c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.QueryHF Methods answerBlockQueryHFLookup ∷ (All SingleEraBlock (CardanoEras c), Monad m) ⇒ Index (CardanoEras c) x → ExtLedgerCfg x → BlockQuery x 'QFLookupTables result → ReadOnlyForker' m (HardForkBlock (CardanoEras c)) → m result Source # answerBlockQueryHFTraverse ∷ (All SingleEraBlock (CardanoEras c), Monad m) ⇒ Index (CardanoEras c) x → ExtLedgerCfg x → BlockQuery x 'QFTraverseTables result → ReadOnlyForker' m (HardForkBlock (CardanoEras c)) → m result Source # queryLedgerGetTraversingFilter ∷ Index (CardanoEras c) x → BlockQuery x 'QFTraverseTables result → TxOut (LedgerState (HardForkBlock (CardanoEras c))) → Bool Source # | |||||||||
CardanoHardForkConstraints c ⇒ SerialiseHFC (CardanoEras c) Source # | Important: we need to maintain binary compatibility with Byron blocks, as they are already stored on disk. We also want to be able to efficiently detect (without having to peek far ahead) whether we're dealing with a Byron or Shelley block, so that we can invoke the right decoder. We plan to have a few more hard forks after Shelley (Goguen, Basho, Voltaire), so we want a future-proof envelope for distinguishing the different block types, i.e., a byte indicating the era. Byron does not provide such an envelope. However, a Byron block is a CBOR
2-tuple with the first element being a tag ( We encode a
For more details, see: https://github.com/IntersectMBO/ouroboros-network/pull/1175#issuecomment-558147194 | ||||||||
Defined in Ouroboros.Consensus.Cardano.Node Methods encodeDiskHfcBlock ∷ CodecConfig (HardForkBlock (CardanoEras c)) → HardForkBlock (CardanoEras c) → Encoding Source # decodeDiskHfcBlock ∷ CodecConfig (HardForkBlock (CardanoEras c)) → ∀ s. Decoder s (ByteString → HardForkBlock (CardanoEras c)) Source # reconstructHfcPrefixLen ∷ proxy (Header (HardForkBlock (CardanoEras c))) → PrefixLen Source # reconstructHfcNestedCtxt ∷ proxy (Header (HardForkBlock (CardanoEras c))) → ShortByteString → SizeInBytes → SomeSecond (NestedCtxt Header) (HardForkBlock (CardanoEras c)) Source # getHfcBinaryBlockInfo ∷ HardForkBlock (CardanoEras c) → BinaryBlockInfo Source # estimateHfcBlockSize ∷ Header (HardForkBlock (CardanoEras c)) → SizeInBytes Source # | |||||||||
GetTip (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods getTip ∷ ∀ (mk ∷ MapKind). LedgerState ByronBlock mk → Point (LedgerState ByronBlock) Source # | |||||||||
IsLedger (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Associated Types
| |||||||||
ConvertRawTxId (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods toRawTxIdHash ∷ TxId (GenTx ByronBlock) → ShortByteString Source # | |||||||||
HasTxId (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool Methods txId ∷ GenTx ByronBlock → TxId (GenTx ByronBlock) Source # | |||||||||
CanStowLedgerTables (LedgerState ByronBlock) Source # | |||||||||
HasLedgerTables (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ LedgerState ByronBlock mk → LedgerTables (LedgerState ByronBlock) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ LedgerState ByronBlock any → LedgerTables (LedgerState ByronBlock) mk → LedgerState ByronBlock mk Source # | |||||||||
LedgerTablesAreTrivial (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods convertMapKind ∷ ∀ (mk ∷ MapKind) (mk' ∷ MapKind). LedgerState ByronBlock mk → LedgerState ByronBlock mk' Source # | |||||||||
CardanoHardForkConstraints c ⇒ SerializeTablesWithHint (LedgerState (HardForkBlock (CardanoEras c))) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Methods encodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState (HardForkBlock (CardanoEras c))) ValuesMK) → LedgerTables (LedgerState (HardForkBlock (CardanoEras c))) ValuesMK → Encoding Source # decodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState (HardForkBlock (CardanoEras c))) ValuesMK) → Decoder s (LedgerTables (LedgerState (HardForkBlock (CardanoEras c))) ValuesMK) Source # | |||||||||
SerializeTablesWithHint (LedgerState (HardForkBlock '[ByronBlock])) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods encodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState (HardForkBlock '[ByronBlock])) ValuesMK) → LedgerTables (LedgerState (HardForkBlock '[ByronBlock])) ValuesMK → Encoding Source # decodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState (HardForkBlock '[ByronBlock])) ValuesMK) → Decoder s (LedgerTables (LedgerState (HardForkBlock '[ByronBlock])) ValuesMK) Source # | |||||||||
SerializeTablesWithHint (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods encodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState ByronBlock) ValuesMK) → LedgerTables (LedgerState ByronBlock) ValuesMK → Encoding Source # decodeTablesWithHint ∷ SerializeTablesHint (LedgerTables (LedgerState ByronBlock) ValuesMK) → Decoder s (LedgerTables (LedgerState ByronBlock) ValuesMK) Source # | |||||||||
CardanoHardForkConstraints c ⇒ SupportedNetworkProtocolVersion (CardanoBlock c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Node Methods supportedNodeToNodeVersions ∷ Proxy (CardanoBlock c) → Map NodeToNodeVersion (BlockNodeToNodeVersion (CardanoBlock c)) Source # supportedNodeToClientVersions ∷ Proxy (CardanoBlock c) → Map NodeToClientVersion (BlockNodeToClientVersion (CardanoBlock c)) Source # latestReleasedNodeVersion ∷ Proxy (CardanoBlock c) → (Maybe NodeToNodeVersion, Maybe NodeToClientVersion) Source # | |||||||||
CanUpgradeLedgerTables (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods upgradeTables ∷ ∀ (mk1 ∷ MapKind) (mk2 ∷ MapKind). LedgerState ByronBlock mk1 → LedgerState ByronBlock mk2 → LedgerTables (LedgerState ByronBlock) ValuesMK → LedgerTables (LedgerState ByronBlock) ValuesMK Source # | |||||||||
Condense (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||||||
Condense (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
Condense (GenTxId ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
HasHeader (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods getHeaderFields ∷ Header ByronBlock → HeaderFields (Header ByronBlock) Source # | |||||||||
ApplyBlock (LedgerState ByronBlock) ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods applyBlockLedgerResultWithValidation ∷ ValidationPolicy → ComputeLedgerEvents → LedgerCfg (LedgerState ByronBlock) → ByronBlock → Ticked (LedgerState ByronBlock) ValuesMK → Except (LedgerErr (LedgerState ByronBlock)) (LedgerResult (LedgerState ByronBlock) (LedgerState ByronBlock DiffMK)) Source # applyBlockLedgerResult ∷ ComputeLedgerEvents → LedgerCfg (LedgerState ByronBlock) → ByronBlock → Ticked (LedgerState ByronBlock) ValuesMK → Except (LedgerErr (LedgerState ByronBlock)) (LedgerResult (LedgerState ByronBlock) (LedgerState ByronBlock DiffMK)) Source # reapplyBlockLedgerResult ∷ ComputeLedgerEvents → LedgerCfg (LedgerState ByronBlock) → ByronBlock → Ticked (LedgerState ByronBlock) ValuesMK → LedgerResult (LedgerState ByronBlock) (LedgerState ByronBlock DiffMK) Source # getBlockKeySets ∷ ByronBlock → LedgerTables (LedgerState ByronBlock) KeysMK Source # | |||||||||
DecodeDiskDep (NestedCtxt Header) ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDiskDep ∷ CodecConfig ByronBlock → NestedCtxt Header ByronBlock a → ∀ s. Decoder s (ByteString → a) Source # | |||||||||
DecodeDiskDepIx (NestedCtxt Header) ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDiskDepIx ∷ CodecConfig ByronBlock → Decoder s (SomeSecond (NestedCtxt Header) ByronBlock) Source # | |||||||||
EncodeDiskDep (NestedCtxt Header) ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDiskDep ∷ CodecConfig ByronBlock → NestedCtxt Header ByronBlock a → a → Encoding Source # | |||||||||
EncodeDiskDepIx (NestedCtxt Header) ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDiskDepIx ∷ CodecConfig ByronBlock → SomeSecond (NestedCtxt Header) ByronBlock → Encoding Source # | |||||||||
Generic (LedgerState ByronBlock mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Associated Types
Methods from ∷ LedgerState ByronBlock mk → Rep (LedgerState ByronBlock mk) x # to ∷ Rep (LedgerState ByronBlock mk) x → LedgerState ByronBlock mk # | |||||||||
Show (LedgerState ByronBlock mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods showsPrec ∷ Int → LedgerState ByronBlock mk → ShowS # show ∷ LedgerState ByronBlock mk → String # showList ∷ [LedgerState ByronBlock mk] → ShowS # | |||||||||
Eq (LedgerState ByronBlock mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods (==) ∷ LedgerState ByronBlock mk → LedgerState ByronBlock mk → Bool # (/=) ∷ LedgerState ByronBlock mk → LedgerState ByronBlock mk → Bool # | |||||||||
NoThunks (LedgerState ByronBlock mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods noThunks ∷ Context → LedgerState ByronBlock mk → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → LedgerState ByronBlock mk → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (LedgerState ByronBlock mk) → String Source # | |||||||||
GetTip (Ticked (LedgerState ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods getTip ∷ ∀ (mk ∷ MapKind). Ticked (LedgerState ByronBlock) mk → Point (Ticked (LedgerState ByronBlock)) Source # | |||||||||
HasLedgerTables (Ticked (LedgerState ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods projectLedgerTables ∷ ∀ (mk ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState ByronBlock) mk → LedgerTables (Ticked (LedgerState ByronBlock)) mk Source # withLedgerTables ∷ ∀ (mk ∷ MapKind) (any ∷ MapKind). (CanMapMK mk, CanMapKeysMK mk, ZeroableMK mk) ⇒ Ticked (LedgerState ByronBlock) any → LedgerTables (Ticked (LedgerState ByronBlock)) mk → Ticked (LedgerState ByronBlock) mk Source # | |||||||||
LedgerTablesAreTrivial (Ticked (LedgerState ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods convertMapKind ∷ ∀ (mk ∷ MapKind) (mk' ∷ MapKind). Ticked (LedgerState ByronBlock) mk → Ticked (LedgerState ByronBlock) mk' Source # | |||||||||
ShowQuery (BlockQuery ByronBlock fp) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods showResult ∷ BlockQuery ByronBlock fp result → result → String Source # | |||||||||
IndexedMemPack (LedgerState (HardForkBlock '[ByronBlock]) EmptyMK) Void Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods indexedPackedByteCount ∷ LedgerState (HardForkBlock '[ByronBlock]) EmptyMK → Void → Int Source # indexedPackM ∷ LedgerState (HardForkBlock '[ByronBlock]) EmptyMK → Void → Pack s () Source # indexedUnpackM ∷ Buffer b ⇒ LedgerState (HardForkBlock '[ByronBlock]) EmptyMK → Unpack b Void Source # indexedTypeName ∷ LedgerState (HardForkBlock '[ByronBlock]) EmptyMK → String Source # | |||||||||
IndexedMemPack (LedgerState ByronBlock EmptyMK) Void Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods indexedPackedByteCount ∷ LedgerState ByronBlock EmptyMK → Void → Int Source # indexedPackM ∷ LedgerState ByronBlock EmptyMK → Void → Pack s () Source # indexedUnpackM ∷ Buffer b ⇒ LedgerState ByronBlock EmptyMK → Unpack b Void Source # indexedTypeName ∷ LedgerState ByronBlock EmptyMK → String Source # | |||||||||
CardanoHardForkConstraints c ⇒ IndexedMemPack (LedgerState (HardForkBlock (CardanoEras c)) EmptyMK) (CardanoTxOut c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger Methods indexedPackedByteCount ∷ LedgerState (HardForkBlock (CardanoEras c)) EmptyMK → CardanoTxOut c → Int Source # indexedPackM ∷ LedgerState (HardForkBlock (CardanoEras c)) EmptyMK → CardanoTxOut c → Pack s () Source # indexedUnpackM ∷ Buffer b ⇒ LedgerState (HardForkBlock (CardanoEras c)) EmptyMK → Unpack b (CardanoTxOut c) Source # indexedTypeName ∷ LedgerState (HardForkBlock (CardanoEras c)) EmptyMK → String Source # | |||||||||
ShowProxy (BlockQuery ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods showProxy ∷ Proxy (BlockQuery ByronBlock) → String Source # | |||||||||
Generic (Ticked (LedgerState ByronBlock) mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Associated Types
Methods from ∷ Ticked (LedgerState ByronBlock) mk → Rep (Ticked (LedgerState ByronBlock) mk) x # to ∷ Rep (Ticked (LedgerState ByronBlock) mk) x → Ticked (LedgerState ByronBlock) mk # | |||||||||
Show (NestedCtxt_ ByronBlock f a) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Serialisation Methods showsPrec ∷ Int → NestedCtxt_ ByronBlock f a → ShowS # show ∷ NestedCtxt_ ByronBlock f a → String # showList ∷ [NestedCtxt_ ByronBlock f a] → ShowS # | |||||||||
Show (BlockQuery ByronBlock fp result) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods showsPrec ∷ Int → BlockQuery ByronBlock fp result → ShowS # show ∷ BlockQuery ByronBlock fp result → String # showList ∷ [BlockQuery ByronBlock fp result] → ShowS # | |||||||||
Eq (BlockQuery ByronBlock fp result) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods (==) ∷ BlockQuery ByronBlock fp result → BlockQuery ByronBlock fp result → Bool # (/=) ∷ BlockQuery ByronBlock fp result → BlockQuery ByronBlock fp result → Bool # | |||||||||
NoThunks (Ticked (LedgerState ByronBlock) mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger Methods noThunks ∷ Context → Ticked (LedgerState ByronBlock) mk → IO (Maybe ThunkInfo) Source # wNoThunks ∷ Context → Ticked (LedgerState ByronBlock) mk → IO (Maybe ThunkInfo) Source # showTypeOf ∷ Proxy (Ticked (LedgerState ByronBlock) mk) → String Source # | |||||||||
HasCanonicalTxIn '[ByronBlock] Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Associated Types
Methods injectCanonicalTxIn ∷ Index '[ByronBlock] x → TxIn (LedgerState x) → CanonicalTxIn '[ByronBlock] Source # ejectCanonicalTxIn ∷ Index '[ByronBlock] x → CanonicalTxIn '[ByronBlock] → TxIn (LedgerState x) Source # | |||||||||
HasHardForkTxOut '[ByronBlock] Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Associated Types
Methods injectHardForkTxOut ∷ Index '[ByronBlock] x → TxOut (LedgerState x) → HardForkTxOut '[ByronBlock] Source # ejectHardForkTxOut ∷ Index '[ByronBlock] x → HardForkTxOut '[ByronBlock] → TxOut (LedgerState x) Source # txOutEjections ∷ NP ((K (NS WrapTxOut '[ByronBlock]) ∷ Type → Type) -.-> WrapTxOut) '[ByronBlock] Source # txOutTranslations ∷ Tails (Fn2 WrapTxOut) '[ByronBlock] Source # | |||||||||
BlockSupportsHFLedgerQuery '[ByronBlock] Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods answerBlockQueryHFLookup ∷ (All SingleEraBlock '[ByronBlock], Monad m) ⇒ Index '[ByronBlock] x → ExtLedgerCfg x → BlockQuery x 'QFLookupTables result → ReadOnlyForker' m (HardForkBlock '[ByronBlock]) → m result Source # answerBlockQueryHFTraverse ∷ (All SingleEraBlock '[ByronBlock], Monad m) ⇒ Index '[ByronBlock] x → ExtLedgerCfg x → BlockQuery x 'QFTraverseTables result → ReadOnlyForker' m (HardForkBlock '[ByronBlock]) → m result Source # queryLedgerGetTraversingFilter ∷ Index '[ByronBlock] x → BlockQuery x 'QFTraverseTables result → TxOut (LedgerState (HardForkBlock '[ByronBlock])) → Bool Source # | |||||||||
SerialiseHFC '[ByronBlock] Source # | Forward to the ByronBlock instance, this means we don't add an era wrapper around blocks on disk. This makes sure we're compatible with the existing Byron blocks. | ||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC Methods encodeDiskHfcBlock ∷ CodecConfig (HardForkBlock '[ByronBlock]) → HardForkBlock '[ByronBlock] → Encoding Source # decodeDiskHfcBlock ∷ CodecConfig (HardForkBlock '[ByronBlock]) → ∀ s. Decoder s (ByteString → HardForkBlock '[ByronBlock]) Source # reconstructHfcPrefixLen ∷ proxy (Header (HardForkBlock '[ByronBlock])) → PrefixLen Source # reconstructHfcNestedCtxt ∷ proxy (Header (HardForkBlock '[ByronBlock])) → ShortByteString → SizeInBytes → SomeSecond (NestedCtxt Header) (HardForkBlock '[ByronBlock]) Source # getHfcBinaryBlockInfo ∷ HardForkBlock '[ByronBlock] → BinaryBlockInfo Source # estimateHfcBlockSize ∷ Header (HardForkBlock '[ByronBlock]) → SizeInBytes Source # | |||||||||
data BlockConfig ByronBlock Source # | Extended configuration we need for Byron | ||||||||
type BlockProtocol ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.PBFT | |||||||||
newtype CodecConfig ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config | |||||||||
data Header ByronBlock Source # | Byron header See | ||||||||
newtype StorageConfig ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config | |||||||||
type CannotForge ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node | |||||||||
type ForgeStateInfo ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node | |||||||||
type ForgeStateUpdateError ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Node | |||||||||
data NestedCtxt_ ByronBlock f a Source # | Since the Byron header does not contain the size, we include it in the nested type instead. | ||||||||
type TentativeHeaderState ByronBlock Source # | |||||||||
type TentativeHeaderView ByronBlock Source # | |||||||||
type HardForkIndices ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
type PartialLedgerConfig ByronBlock Source # | |||||||||
type OtherHeaderEnvelopeError ByronBlock Source # | |||||||||
type TipInfo ByronBlock Source # | |||||||||
data LedgerState ByronBlock mk Source # | |||||||||
type LedgerUpdate ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect | |||||||||
type LedgerWarning ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Inspect | |||||||||
data BlockQuery ByronBlock fp result Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
type ApplyTxErr ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
data GenTx ByronBlock Source # | Generalized transactions in Byron This is effectively the same as | ||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
type TxMeasure ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
type BlockNodeToClientVersion ByronBlock Source # | |||||||||
type BlockNodeToNodeVersion ByronBlock Source # | |||||||||
type HeaderHash ByronBlock Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||||||
type Rep (BlockConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config type Rep (BlockConfig ByronBlock) = D1 ('MetaData "BlockConfig" "Ouroboros.Consensus.Byron.Ledger.Config" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ByronConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronGenesisConfig") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Config) :*: (S1 ('MetaSel ('Just "byronProtocolVersion") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ProtocolVersion) :*: S1 ('MetaSel ('Just "byronSoftwareVersion") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SoftwareVersion)))) | |||||||||
type Rep (CodecConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config type Rep (CodecConfig ByronBlock) = D1 ('MetaData "CodecConfig" "Ouroboros.Consensus.Byron.Ledger.Config" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'True) (C1 ('MetaCons "ByronCodecConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "getByronEpochSlots") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 EpochSlots))) | |||||||||
type Rep (Header ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block type Rep (Header ByronBlock) = D1 ('MetaData "Header" "Ouroboros.Consensus.Byron.Ledger.Block" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ByronHeader" 'PrefixI 'True) ((S1 ('MetaSel ('Just "byronHeaderRaw") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ABlockOrBoundaryHdr ByteString)) :*: S1 ('MetaSel ('Just "byronHeaderSlotNo") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SlotNo)) :*: (S1 ('MetaSel ('Just "byronHeaderHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ByronHash) :*: S1 ('MetaSel ('Just "byronHeaderBlockSizeHint") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SizeInBytes)))) | |||||||||
type Rep (StorageConfig ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Config type Rep (StorageConfig ByronBlock) = D1 ('MetaData "StorageConfig" "Ouroboros.Consensus.Byron.Ledger.Config" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'True) (C1 ('MetaCons "ByronStorageConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "getByronBlockConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (BlockConfig ByronBlock)))) | |||||||||
type Rep (Validated (GenTx ByronBlock)) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool type Rep (Validated (GenTx ByronBlock)) = D1 ('MetaData "Validated" "Ouroboros.Consensus.Byron.Ledger.Mempool" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'True) (C1 ('MetaCons "ValidatedByronTx" 'PrefixI 'True) (S1 ('MetaSel ('Just "forgetValidatedByronTx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (GenTx ByronBlock)))) | |||||||||
type Rep (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool type Rep (GenTx ByronBlock) = D1 ('MetaData "GenTx" "Ouroboros.Consensus.Byron.Ledger.Mempool" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) ((C1 ('MetaCons "ByronTx" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TxId) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ATxAux ByteString))) :+: C1 ('MetaCons "ByronDlg" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CertificateId) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ACertificate ByteString)))) :+: (C1 ('MetaCons "ByronUpdateProposal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UpId) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (AProposal ByteString))) :+: C1 ('MetaCons "ByronUpdateVote" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 VoteId) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (AVote ByteString))))) | |||||||||
type HardForkTxMeasure (CardanoEras c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.CanHardFork | |||||||||
newtype CanonicalTxIn (CardanoEras c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger | |||||||||
type HardForkTxOut (CardanoEras c) Source # | |||||||||
Defined in Ouroboros.Consensus.Cardano.Ledger | |||||||||
newtype Validated (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
type AuxLedgerEvent (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
type LedgerCfg (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
type LedgerErr (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
data TxId (GenTx ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Mempool | |||||||||
type TxIn (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
type TxOut (LedgerState ByronBlock) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger | |||||||||
type Rep (LedgerState ByronBlock mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger type Rep (LedgerState ByronBlock mk) = D1 ('MetaData "LedgerState" "Ouroboros.Consensus.Byron.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ByronLedgerState" 'PrefixI 'True) (S1 ('MetaSel ('Just "byronLedgerTipBlockNo") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (WithOrigin BlockNo)) :*: (S1 ('MetaSel ('Just "byronLedgerState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChainValidationState) :*: S1 ('MetaSel ('Just "byronLedgerTransition") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ByronTransition)))) | |||||||||
data Ticked (LedgerState ByronBlock) (mk ∷ MapKind) Source # | The ticked Byron ledger state | ||||||||
type Rep (Ticked (LedgerState ByronBlock) mk) Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.Ledger.Ledger type Rep (Ticked (LedgerState ByronBlock) mk) = D1 ('MetaData "Ticked" "Ouroboros.Consensus.Byron.Ledger.Ledger" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "TickedByronLedgerState" 'PrefixI 'True) (S1 ('MetaSel ('Just "tickedByronLedgerState") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ChainValidationState) :*: S1 ('MetaSel ('Just "untickedByronLedgerTransition") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ByronTransition))) | |||||||||
newtype CanonicalTxIn '[ByronBlock] Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC | |||||||||
type HardForkTxOut '[ByronBlock] Source # | |||||||||
Defined in Ouroboros.Consensus.Byron.ByronHFC |
annotateByronBlock ∷ EpochSlots → Block → ByronBlock Source #
Construct Byron block from unannotated Block
This should be used only when forging blocks (not when receiving blocks over the wire).
Header
data family Header blk Source #
Instances
Inject Header | |||||
Defined in Ouroboros.Consensus.HardFork.Combinator.Embed.Nary Methods inject ∷ ∀ x (xs ∷ [Type]). (CanHardFork xs, HasCanonicalTxIn xs, HasHardForkTxOut xs) ⇒ InjectionIndex xs x → Header x → Header (HardForkBlock xs) Source # | |||||
Isomorphic Header | |||||
Defined in Ouroboros.Consensus.HardFork.Combinator.Embed.Unary Methods project ∷ NoHardForks blk ⇒ Header (HardForkBlock '[blk]) → Header blk Source # inject ∷ NoHardForks blk ⇒ Header blk → Header (HardForkBlock '[blk]) Source # | |||||
HasNestedContent Header ByronBlock Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Serialisation Methods unnest ∷ Header ByronBlock → DepPair (NestedCtxt Header ByronBlock) Source # nest ∷ DepPair (NestedCtxt Header ByronBlock) → Header ByronBlock Source # | |||||
ReconstructNestedCtxt Header ByronBlock Source # | |||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods reconstructPrefixLen ∷ proxy (Header ByronBlock) → PrefixLen Source # reconstructNestedCtxt ∷ proxy (Header ByronBlock) → ShortByteString → SizeInBytes → SomeSecond (NestedCtxt Header) ByronBlock Source # | |||||
SerialiseNodeToNode ByronBlock (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation | |||||
StandardHash blk ⇒ StandardHash (Header blk ∷ Type) | |||||
Defined in Ouroboros.Consensus.Block.Abstract | |||||
ShowProxy (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||
(Typeable era, Typeable proto) ⇒ ShowProxy (Header (ShelleyBlock proto era) ∷ Type) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block | |||||
HasNestedContent Header m ⇒ HasNestedContent Header (DualBlock m a) | |||||
ReconstructNestedCtxt Header m ⇒ ReconstructNestedCtxt Header (DualBlock m a) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual Methods reconstructPrefixLen ∷ proxy (Header (DualBlock m a)) → PrefixLen Source # reconstructNestedCtxt ∷ proxy (Header (DualBlock m a)) → ShortByteString → SizeInBytes → SomeSecond (NestedCtxt Header) (DualBlock m a) Source # | |||||
ShelleyBasedEra era ⇒ ReconstructNestedCtxt Header (ShelleyBlock proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods reconstructPrefixLen ∷ proxy (Header (ShelleyBlock proto era)) → PrefixLen Source # reconstructNestedCtxt ∷ proxy (Header (ShelleyBlock proto era)) → ShortByteString → SizeInBytes → SomeSecond (NestedCtxt Header) (ShelleyBlock proto era) Source # | |||||
(Typeable m, Typeable a) ⇒ ShowProxy (DualHeader m a ∷ Type) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual | |||||
ShelleyCompatible proto era ⇒ DecCBOR (Annotator (Header (ShelleyBlock proto era))) Source # | |||||
ShelleyCompatible proto era ⇒ EncCBOR (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block | |||||
Generic (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Associated Types
Methods from ∷ Header ByronBlock → Rep (Header ByronBlock) x # to ∷ Rep (Header ByronBlock) x → Header ByronBlock # | |||||
Generic (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block Associated Types
Methods from ∷ Header (ShelleyBlock proto era) → Rep (Header (ShelleyBlock proto era)) x # to ∷ Rep (Header (ShelleyBlock proto era)) x → Header (ShelleyBlock proto era) # | |||||
Show (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||
ShelleyCompatible proto era ⇒ Show (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block | |||||
Eq (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods (==) ∷ Header ByronBlock → Header ByronBlock → Bool # (/=) ∷ Header ByronBlock → Header ByronBlock → Bool # | |||||
ShelleyCompatible proto era ⇒ Eq (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block Methods (==) ∷ Header (ShelleyBlock proto era) → Header (ShelleyBlock proto era) → Bool # (/=) ∷ Header (ShelleyBlock proto era) → Header (ShelleyBlock proto era) → Bool # | |||||
NoThunks (Header (DualBlock m a)) | |||||
NoThunks (Header ByronBlock) Source # | |||||
ShelleyCompatible proto era ⇒ NoThunks (Header (ShelleyBlock proto era)) Source # | |||||
SignedHeader (ShelleyProtocolHeader proto) ⇒ SignedHeader (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Protocol Methods headerSigned ∷ Header (ShelleyBlock proto era) → Signed (Header (ShelleyBlock proto era)) Source # | |||||
Condense (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block | |||||
ShelleyCompatible proto era ⇒ Condense (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block | |||||
HasHeader (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block Methods getHeaderFields ∷ Header ByronBlock → HeaderFields (Header ByronBlock) Source # | |||||
ShelleyCompatible proto era ⇒ HasHeader (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block Methods getHeaderFields ∷ Header (ShelleyBlock proto era) → HeaderFields (Header (ShelleyBlock proto era)) Source # | |||||
DecodeDiskDep (NestedCtxt Header) ByronBlock Source # | |||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDiskDep ∷ CodecConfig ByronBlock → NestedCtxt Header ByronBlock a → ∀ s. Decoder s (ByteString → a) Source # | |||||
DecodeDiskDepIx (NestedCtxt Header) ByronBlock Source # | |||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods decodeDiskDepIx ∷ CodecConfig ByronBlock → Decoder s (SomeSecond (NestedCtxt Header) ByronBlock) Source # | |||||
EncodeDiskDep (NestedCtxt Header) ByronBlock Source # | |||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDiskDep ∷ CodecConfig ByronBlock → NestedCtxt Header ByronBlock a → a → Encoding Source # | |||||
EncodeDiskDepIx (NestedCtxt Header) ByronBlock Source # | |||||
Defined in Ouroboros.Consensus.Byron.Node.Serialisation Methods encodeDiskDepIx ∷ CodecConfig ByronBlock → SomeSecond (NestedCtxt Header) ByronBlock → Encoding Source # | |||||
ShelleyCompatible proto era ⇒ DecodeDiskDep (NestedCtxt Header) (ShelleyBlock proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods decodeDiskDep ∷ CodecConfig (ShelleyBlock proto era) → NestedCtxt Header (ShelleyBlock proto era) a → ∀ s. Decoder s (ByteString → a) Source # | |||||
ShelleyBasedEra era ⇒ DecodeDiskDepIx (NestedCtxt Header) (ShelleyBlock proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods decodeDiskDepIx ∷ CodecConfig (ShelleyBlock proto era) → Decoder s (SomeSecond (NestedCtxt Header) (ShelleyBlock proto era)) Source # | |||||
EncodeDiskDep (NestedCtxt Header) m ⇒ EncodeDiskDep (NestedCtxt Header) (DualBlock m a) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual Methods encodeDiskDep ∷ CodecConfig (DualBlock m a) → NestedCtxt Header (DualBlock m a) a0 → a0 → Encoding Source # | |||||
ShelleyCompatible proto era ⇒ EncodeDiskDep (NestedCtxt Header) (ShelleyBlock proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods encodeDiskDep ∷ CodecConfig (ShelleyBlock proto era) → NestedCtxt Header (ShelleyBlock proto era) a → a → Encoding Source # | |||||
EncodeDiskDepIx (NestedCtxt Header) m ⇒ EncodeDiskDepIx (NestedCtxt Header) (DualBlock m a) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual Methods encodeDiskDepIx ∷ CodecConfig (DualBlock m a) → SomeSecond (NestedCtxt Header) (DualBlock m a) → Encoding Source # | |||||
ShelleyBasedEra era ⇒ EncodeDiskDepIx (NestedCtxt Header) (ShelleyBlock proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods encodeDiskDepIx ∷ CodecConfig (ShelleyBlock proto era) → SomeSecond (NestedCtxt Header) (ShelleyBlock proto era) → Encoding Source # | |||||
Show (Header m) ⇒ Show (DualHeader m a) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual Methods showsPrec ∷ Int → DualHeader m a → ShowS # show ∷ DualHeader m a → String # showList ∷ [DualHeader m a] → ShowS # | |||||
Bridge m a ⇒ HasHeader (DualHeader m a) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual Methods getHeaderFields ∷ DualHeader m a → HeaderFields (DualHeader m a) Source # | |||||
ShelleyCompatible proto era ⇒ SerialiseNodeToNode (ShelleyBlock proto era) (Header (ShelleyBlock proto era)) Source # | CBOR-in-CBOR to be compatible with the wrapped ( | ||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods encodeNodeToNode ∷ CodecConfig (ShelleyBlock proto era) → BlockNodeToNodeVersion (ShelleyBlock proto era) → Header (ShelleyBlock proto era) → Encoding Source # decodeNodeToNode ∷ CodecConfig (ShelleyBlock proto era) → BlockNodeToNodeVersion (ShelleyBlock proto era) → ∀ s. Decoder s (Header (ShelleyBlock proto era)) Source # | |||||
ShelleyCompatible proto era ⇒ EncodeDisk (ShelleyBlock proto era) (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods encodeDisk ∷ CodecConfig (ShelleyBlock proto era) → Header (ShelleyBlock proto era) → Encoding Source # | |||||
ShelleyCompatible proto era ⇒ DecodeDisk (ShelleyBlock proto era) (ByteString → Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Node.Serialisation Methods decodeDisk ∷ CodecConfig (ShelleyBlock proto era) → ∀ s. Decoder s (ByteString → Header (ShelleyBlock proto era)) Source # | |||||
data Header ByronBlock Source # | Byron header See | ||||
type HeaderHash (Header blk ∷ Type) | |||||
Defined in Ouroboros.Consensus.Block.Abstract | |||||
type Rep (Header ByronBlock) Source # | |||||
Defined in Ouroboros.Consensus.Byron.Ledger.Block type Rep (Header ByronBlock) = D1 ('MetaData "Header" "Ouroboros.Consensus.Byron.Ledger.Block" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ByronHeader" 'PrefixI 'True) ((S1 ('MetaSel ('Just "byronHeaderRaw") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ABlockOrBoundaryHdr ByteString)) :*: S1 ('MetaSel ('Just "byronHeaderSlotNo") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SlotNo)) :*: (S1 ('MetaSel ('Just "byronHeaderHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ByronHash) :*: S1 ('MetaSel ('Just "byronHeaderBlockSizeHint") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SizeInBytes)))) | |||||
type Rep (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block type Rep (Header (ShelleyBlock proto era)) = D1 ('MetaData "Header" "Ouroboros.Consensus.Shelley.Ledger.Block" "ouroboros-consensus-cardano-0.25.0.0-inplace" 'False) (C1 ('MetaCons "ShelleyHeader" 'PrefixI 'True) (S1 ('MetaSel ('Just "shelleyHeaderRaw") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ShelleyProtocolHeader proto)) :*: S1 ('MetaSel ('Just "shelleyHeaderHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ShelleyHash))) | |||||
type BlockProtocol (Header blk) | |||||
Defined in Ouroboros.Consensus.Block.Abstract | |||||
newtype Header (DisableDiffusionPipelining blk) | |||||
newtype Header (SelectViewDiffusionPipelining blk) | |||||
Defined in Ouroboros.Consensus.Block.SupportsDiffusionPipelining newtype Header (SelectViewDiffusionPipelining blk) = SelectViewDiffusionPipeliningHeader (Header blk) | |||||
newtype Header (HardForkBlock xs) | |||||
type Signed (Header (ShelleyBlock proto era)) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Protocol | |||||
newtype Header (DualBlock m a) | |||||
Defined in Ouroboros.Consensus.Ledger.Dual | |||||
data Header (ShelleyBlock proto era) Source # | |||||
Defined in Ouroboros.Consensus.Shelley.Ledger.Block |
mkBoundaryByronHeader ∷ SlotNo → ABoundaryHeader ByteString → SizeInBytes → Header ByronBlock Source #
Arguments
∷ EpochSlots | |
→ ABlockOrBoundaryHdr ByteString | |
→ SizeInBytes | Block size hint |
→ Header ByronBlock |
Dealing with EBBs
Low-level API
data UnsizedHeader Source #
Header without a size hint
Defined in order to support backwards compatible binary encodings.
Constructors
UnsizedHeader | |