{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Conway.TxAuxData () where import Cardano.Ledger.Alonzo.Core import Cardano.Ledger.Alonzo.TxAuxData ( AlonzoTxAuxData (..), metadataAlonzoTxAuxDataL, nativeScriptsAlonzoTxAuxDataL, plutusScriptsAllegraTxAuxDataL, validateAlonzoTxAuxData, ) import Cardano.Ledger.Conway.Era import Cardano.Ledger.Conway.Scripts () instance EraTxAuxData ConwayEra where type TxAuxData ConwayEra = AlonzoTxAuxData ConwayEra mkBasicTxAuxData :: TxAuxData ConwayEra mkBasicTxAuxData = Map Word64 Metadatum -> StrictSeq (NativeScript ConwayEra) -> Map Language (NonEmpty PlutusBinary) -> AlonzoTxAuxData ConwayEra forall era. (HasCallStack, AlonzoEraScript era) => Map Word64 Metadatum -> StrictSeq (NativeScript era) -> Map Language (NonEmpty PlutusBinary) -> AlonzoTxAuxData era AlonzoTxAuxData Map Word64 Metadatum forall a. Monoid a => a mempty StrictSeq (Timelock ConwayEra) StrictSeq (NativeScript ConwayEra) forall a. Monoid a => a mempty Map Language (NonEmpty PlutusBinary) forall a. Monoid a => a mempty metadataTxAuxDataL :: Lens' (TxAuxData ConwayEra) (Map Word64 Metadatum) metadataTxAuxDataL = (Map Word64 Metadatum -> f (Map Word64 Metadatum)) -> TxAuxData ConwayEra -> f (TxAuxData ConwayEra) (Map Word64 Metadatum -> f (Map Word64 Metadatum)) -> AlonzoTxAuxData ConwayEra -> f (AlonzoTxAuxData ConwayEra) forall era. (Era era, EncCBOR (NativeScript era)) => Lens' (AlonzoTxAuxData era) (Map Word64 Metadatum) Lens' (AlonzoTxAuxData ConwayEra) (Map Word64 Metadatum) metadataAlonzoTxAuxDataL validateTxAuxData :: ProtVer -> TxAuxData ConwayEra -> Bool validateTxAuxData = ProtVer -> TxAuxData ConwayEra -> Bool ProtVer -> AlonzoTxAuxData ConwayEra -> Bool forall era. (AlonzoEraScript era, Script era ~ AlonzoScript era) => ProtVer -> AlonzoTxAuxData era -> Bool validateAlonzoTxAuxData instance AllegraEraTxAuxData ConwayEra where nativeScriptsTxAuxDataL :: Lens' (TxAuxData ConwayEra) (StrictSeq (NativeScript ConwayEra)) nativeScriptsTxAuxDataL = (StrictSeq (NativeScript ConwayEra) -> f (StrictSeq (NativeScript ConwayEra))) -> TxAuxData ConwayEra -> f (TxAuxData ConwayEra) (StrictSeq (NativeScript ConwayEra) -> f (StrictSeq (NativeScript ConwayEra))) -> AlonzoTxAuxData ConwayEra -> f (AlonzoTxAuxData ConwayEra) forall era. (Era era, EncCBOR (NativeScript era)) => Lens' (AlonzoTxAuxData era) (StrictSeq (NativeScript era)) Lens' (AlonzoTxAuxData ConwayEra) (StrictSeq (NativeScript ConwayEra)) nativeScriptsAlonzoTxAuxDataL instance AlonzoEraTxAuxData ConwayEra where plutusScriptsTxAuxDataL :: Lens' (TxAuxData ConwayEra) (Map Language (NonEmpty PlutusBinary)) plutusScriptsTxAuxDataL = (Map Language (NonEmpty PlutusBinary) -> f (Map Language (NonEmpty PlutusBinary))) -> TxAuxData ConwayEra -> f (TxAuxData ConwayEra) (Map Language (NonEmpty PlutusBinary) -> f (Map Language (NonEmpty PlutusBinary))) -> AlonzoTxAuxData ConwayEra -> f (AlonzoTxAuxData ConwayEra) forall era. (Era era, EncCBOR (NativeScript era)) => Lens' (AlonzoTxAuxData era) (Map Language (NonEmpty PlutusBinary)) Lens' (AlonzoTxAuxData ConwayEra) (Map Language (NonEmpty PlutusBinary)) plutusScriptsAllegraTxAuxDataL