{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Dijkstra.UTxO () where import Cardano.Ledger.Alonzo.UTxO ( AlonzoEraUTxO (..), AlonzoScriptsNeeded, getAlonzoScriptsHashesNeeded, ) import Cardano.Ledger.Babbage.UTxO ( getBabbageScriptsProvided, getBabbageSpendingDatum, getBabbageSupplementalDataHashes, ) import Cardano.Ledger.Conway.UTxO ( conwayConsumed, conwayProducedValue, getConwayMinFeeTxUtxo, getConwayScriptsNeeded, getConwayWitsVKeyNeeded, ) import Cardano.Ledger.Dijkstra.Era (DijkstraEra) import Cardano.Ledger.Dijkstra.State (EraUTxO (..)) import Cardano.Ledger.Dijkstra.State.CertState () import Cardano.Ledger.Dijkstra.Tx () import Cardano.Ledger.Mary.UTxO (getConsumedMaryValue) instance EraUTxO DijkstraEra where type ScriptsNeeded DijkstraEra = AlonzoScriptsNeeded DijkstraEra consumed :: PParams DijkstraEra -> CertState DijkstraEra -> UTxO DijkstraEra -> TxBody DijkstraEra -> Value DijkstraEra consumed = PParams DijkstraEra -> CertState DijkstraEra -> UTxO DijkstraEra -> TxBody DijkstraEra -> Value DijkstraEra forall era. (EraUTxO era, ConwayEraCertState era) => PParams era -> CertState era -> UTxO era -> TxBody era -> Value era conwayConsumed getConsumedValue :: PParams DijkstraEra -> (Credential 'Staking -> Maybe Coin) -> (Credential 'DRepRole -> Maybe Coin) -> UTxO DijkstraEra -> TxBody DijkstraEra -> Value DijkstraEra getConsumedValue = PParams DijkstraEra -> (Credential 'Staking -> Maybe Coin) -> (Credential 'DRepRole -> Maybe Coin) -> UTxO DijkstraEra -> TxBody DijkstraEra -> Value DijkstraEra PParams DijkstraEra -> (Credential 'Staking -> Maybe Coin) -> (Credential 'DRepRole -> Maybe Coin) -> UTxO DijkstraEra -> TxBody DijkstraEra -> MaryValue forall era. (MaryEraTxBody era, Value era ~ MaryValue) => PParams era -> (Credential 'Staking -> Maybe Coin) -> (Credential 'DRepRole -> Maybe Coin) -> UTxO era -> TxBody era -> MaryValue getConsumedMaryValue getProducedValue :: PParams DijkstraEra -> (KeyHash 'StakePool -> Bool) -> TxBody DijkstraEra -> Value DijkstraEra getProducedValue = PParams DijkstraEra -> (KeyHash 'StakePool -> Bool) -> TxBody DijkstraEra -> Value DijkstraEra forall era. (ConwayEraTxBody era, Value era ~ MaryValue) => PParams era -> (KeyHash 'StakePool -> Bool) -> TxBody era -> Value era conwayProducedValue getScriptsProvided :: UTxO DijkstraEra -> Tx DijkstraEra -> ScriptsProvided DijkstraEra getScriptsProvided = UTxO DijkstraEra -> Tx DijkstraEra -> ScriptsProvided DijkstraEra forall era. (EraTx era, BabbageEraTxBody era) => UTxO era -> Tx era -> ScriptsProvided era getBabbageScriptsProvided getScriptsNeeded :: UTxO DijkstraEra -> TxBody DijkstraEra -> ScriptsNeeded DijkstraEra getScriptsNeeded = UTxO DijkstraEra -> TxBody DijkstraEra -> ScriptsNeeded DijkstraEra UTxO DijkstraEra -> TxBody DijkstraEra -> AlonzoScriptsNeeded DijkstraEra forall era. ConwayEraTxBody era => UTxO era -> TxBody era -> AlonzoScriptsNeeded era getConwayScriptsNeeded getScriptsHashesNeeded :: ScriptsNeeded DijkstraEra -> Set ScriptHash getScriptsHashesNeeded = ScriptsNeeded DijkstraEra -> Set ScriptHash AlonzoScriptsNeeded DijkstraEra -> Set ScriptHash forall era. AlonzoScriptsNeeded era -> Set ScriptHash getAlonzoScriptsHashesNeeded getWitsVKeyNeeded :: CertState DijkstraEra -> UTxO DijkstraEra -> TxBody DijkstraEra -> Set (KeyHash 'Witness) getWitsVKeyNeeded CertState DijkstraEra _ = UTxO DijkstraEra -> TxBody DijkstraEra -> Set (KeyHash 'Witness) forall era. (EraTx era, ConwayEraTxBody era) => UTxO era -> TxBody era -> Set (KeyHash 'Witness) getConwayWitsVKeyNeeded getMinFeeTxUtxo :: PParams DijkstraEra -> Tx DijkstraEra -> UTxO DijkstraEra -> Coin getMinFeeTxUtxo = PParams DijkstraEra -> Tx DijkstraEra -> UTxO DijkstraEra -> Coin forall era. (EraTx era, BabbageEraTxBody era) => PParams era -> Tx era -> UTxO era -> Coin getConwayMinFeeTxUtxo instance AlonzoEraUTxO DijkstraEra where getSupplementalDataHashes :: UTxO DijkstraEra -> TxBody DijkstraEra -> Set DataHash getSupplementalDataHashes = UTxO DijkstraEra -> TxBody DijkstraEra -> Set DataHash forall era. BabbageEraTxBody era => UTxO era -> TxBody era -> Set DataHash getBabbageSupplementalDataHashes getSpendingDatum :: UTxO DijkstraEra -> Tx DijkstraEra -> PlutusPurpose AsItem DijkstraEra -> Maybe (Data DijkstraEra) getSpendingDatum = UTxO DijkstraEra -> Tx DijkstraEra -> PlutusPurpose AsItem DijkstraEra -> Maybe (Data DijkstraEra) forall era. (AlonzoEraTx era, BabbageEraTxOut era) => UTxO era -> Tx era -> PlutusPurpose AsItem era -> Maybe (Data era) getBabbageSpendingDatum