{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Dijkstra.TxAuxData () where import Cardano.Ledger.Alonzo.Core import Cardano.Ledger.Alonzo.Plutus.Context (SupportedPlutusRunnable (..)) import Cardano.Ledger.Alonzo.TxAuxData ( AlonzoTxAuxData (..), metadataAlonzoTxAuxDataL, nativeScriptsAlonzoTxAuxDataL, plutusScriptsAllegraTxAuxDataL, validateAlonzoTxAuxData, ) import Cardano.Ledger.Dijkstra.Era (DijkstraEra) import Cardano.Ledger.Dijkstra.Scripts () import Data.Map.Strict (Map) instance StAnnTxCache DijkstraEra ~ Map ScriptHash (SupportedPlutusRunnable DijkstraEra) => EraTxAuxData DijkstraEra where type TxAuxData DijkstraEra = AlonzoTxAuxData DijkstraEra mkBasicTxAuxData :: TxAuxData DijkstraEra mkBasicTxAuxData = Map Word64 Metadatum -> StrictSeq (NativeScript DijkstraEra) -> Map Language (NonEmpty PlutusBinary) -> AlonzoTxAuxData DijkstraEra 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 (NativeScript DijkstraEra) StrictSeq (DijkstraNativeScript DijkstraEra) forall a. Monoid a => a mempty Map Language (NonEmpty PlutusBinary) forall a. Monoid a => a mempty metadataTxAuxDataL :: Lens' (TxAuxData DijkstraEra) (Map Word64 Metadatum) metadataTxAuxDataL = (Map Word64 Metadatum -> f (Map Word64 Metadatum)) -> TxAuxData DijkstraEra -> f (TxAuxData DijkstraEra) (Map Word64 Metadatum -> f (Map Word64 Metadatum)) -> AlonzoTxAuxData DijkstraEra -> f (AlonzoTxAuxData DijkstraEra) forall era. (Era era, EncCBOR (NativeScript era)) => Lens' (AlonzoTxAuxData era) (Map Word64 Metadatum) Lens' (AlonzoTxAuxData DijkstraEra) (Map Word64 Metadatum) metadataAlonzoTxAuxDataL validateTxAuxData :: StAnnTxCache DijkstraEra -> ProtVer -> TxAuxData DijkstraEra -> Bool validateTxAuxData = Map ScriptHash (SupportedPlutusRunnable DijkstraEra) -> ProtVer -> AlonzoTxAuxData DijkstraEra -> Bool StAnnTxCache DijkstraEra -> ProtVer -> TxAuxData DijkstraEra -> Bool forall era. (AlonzoEraScript era, Script era ~ AlonzoScript era) => Map ScriptHash (SupportedPlutusRunnable era) -> ProtVer -> AlonzoTxAuxData era -> Bool validateAlonzoTxAuxData instance StAnnTxCache DijkstraEra ~ Map ScriptHash (SupportedPlutusRunnable DijkstraEra) => AllegraEraTxAuxData DijkstraEra where nativeScriptsTxAuxDataL :: Lens' (TxAuxData DijkstraEra) (StrictSeq (NativeScript DijkstraEra)) nativeScriptsTxAuxDataL = (StrictSeq (NativeScript DijkstraEra) -> f (StrictSeq (NativeScript DijkstraEra))) -> TxAuxData DijkstraEra -> f (TxAuxData DijkstraEra) (StrictSeq (NativeScript DijkstraEra) -> f (StrictSeq (NativeScript DijkstraEra))) -> AlonzoTxAuxData DijkstraEra -> f (AlonzoTxAuxData DijkstraEra) forall era. (Era era, EncCBOR (NativeScript era)) => Lens' (AlonzoTxAuxData era) (StrictSeq (NativeScript era)) Lens' (AlonzoTxAuxData DijkstraEra) (StrictSeq (NativeScript DijkstraEra)) nativeScriptsAlonzoTxAuxDataL instance StAnnTxCache DijkstraEra ~ Map ScriptHash (SupportedPlutusRunnable DijkstraEra) => AlonzoEraTxAuxData DijkstraEra where plutusScriptsTxAuxDataL :: Lens' (TxAuxData DijkstraEra) (Map Language (NonEmpty PlutusBinary)) plutusScriptsTxAuxDataL = (Map Language (NonEmpty PlutusBinary) -> f (Map Language (NonEmpty PlutusBinary))) -> TxAuxData DijkstraEra -> f (TxAuxData DijkstraEra) (Map Language (NonEmpty PlutusBinary) -> f (Map Language (NonEmpty PlutusBinary))) -> AlonzoTxAuxData DijkstraEra -> f (AlonzoTxAuxData DijkstraEra) forall era. (Era era, EncCBOR (NativeScript era)) => Lens' (AlonzoTxAuxData era) (Map Language (NonEmpty PlutusBinary)) Lens' (AlonzoTxAuxData DijkstraEra) (Map Language (NonEmpty PlutusBinary)) plutusScriptsAllegraTxAuxDataL