{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Babbage.BlockBody where import Cardano.Ledger.Alonzo.BlockBody import Cardano.Ledger.Babbage.Era import Cardano.Ledger.Babbage.Tx () import Cardano.Ledger.Core import Lens.Micro (lens) instance EraBlockBody BabbageEra where type BlockBody BabbageEra = AlonzoBlockBody BabbageEra mkBasicBlockBody :: BlockBody BabbageEra mkBasicBlockBody = StrictSeq (Tx BabbageEra) -> AlonzoBlockBody BabbageEra forall era. (AlonzoEraTx era, SafeToHash (TxWits era)) => StrictSeq (Tx era) -> AlonzoBlockBody era AlonzoBlockBody StrictSeq (Tx BabbageEra) forall a. Monoid a => a mempty txSeqBlockBodyL :: Lens' (BlockBody BabbageEra) (StrictSeq (Tx BabbageEra)) txSeqBlockBodyL = (AlonzoBlockBody BabbageEra -> StrictSeq (Tx BabbageEra)) -> (AlonzoBlockBody BabbageEra -> StrictSeq (Tx BabbageEra) -> AlonzoBlockBody BabbageEra) -> Lens (AlonzoBlockBody BabbageEra) (AlonzoBlockBody BabbageEra) (StrictSeq (Tx BabbageEra)) (StrictSeq (Tx BabbageEra)) forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b lens AlonzoBlockBody BabbageEra -> StrictSeq (Tx BabbageEra) forall era. AlonzoBlockBody era -> StrictSeq (Tx era) alonzoBlockBodyTxs (\AlonzoBlockBody BabbageEra _ StrictSeq (Tx BabbageEra) s -> StrictSeq (Tx BabbageEra) -> AlonzoBlockBody BabbageEra forall era. (AlonzoEraTx era, SafeToHash (TxWits era)) => StrictSeq (Tx era) -> AlonzoBlockBody era AlonzoBlockBody StrictSeq (Tx BabbageEra) s) hashBlockBody :: BlockBody BabbageEra -> Hash HASH EraIndependentBlockBody hashBlockBody = BlockBody BabbageEra -> Hash HASH EraIndependentBlockBody AlonzoBlockBody BabbageEra -> Hash HASH EraIndependentBlockBody forall era. AlonzoBlockBody era -> Hash HASH EraIndependentBlockBody alonzoBlockBodyHash numSegComponents :: Word64 numSegComponents = Word64 4