{-# LANGUAGE DataKinds #-} {-# LANGUAGE TypeApplications #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Dijkstra (DijkstraEra) where import Cardano.Ledger.Conway.Governance (RunConwayRatify) import Cardano.Ledger.Dijkstra.Era import Cardano.Ledger.Dijkstra.Genesis () import Cardano.Ledger.Dijkstra.Governance () import Cardano.Ledger.Dijkstra.Rules () import Cardano.Ledger.Dijkstra.Scripts () import Cardano.Ledger.Dijkstra.State.CertState () import Cardano.Ledger.Dijkstra.State.Stake () import Cardano.Ledger.Dijkstra.Transition () import Cardano.Ledger.Dijkstra.Translation () import Cardano.Ledger.Dijkstra.Tx () import Cardano.Ledger.Dijkstra.TxBody () import Cardano.Ledger.Dijkstra.TxInfo () import Cardano.Ledger.Dijkstra.TxWits () import Cardano.Ledger.Dijkstra.UTxO () import Cardano.Ledger.Shelley.API (ApplyBlock, ApplyTx (..), ruleApplyTxValidation) instance ApplyTx DijkstraEra where applyTxValidation :: ValidationPolicy -> Globals -> MempoolEnv DijkstraEra -> MempoolState DijkstraEra -> Tx DijkstraEra -> Either (ApplyTxError DijkstraEra) (MempoolState DijkstraEra, Validated (Tx DijkstraEra)) applyTxValidation = forall (rule :: Symbol) era. (STS (EraRule rule era), BaseM (EraRule rule era) ~ ShelleyBase, Environment (EraRule rule era) ~ LedgerEnv era, State (EraRule rule era) ~ MempoolState era, Signal (EraRule rule era) ~ Tx era, PredicateFailure (EraRule rule era) ~ PredicateFailure (EraRule "LEDGER" era)) => ValidationPolicy -> Globals -> LedgerEnv era -> MempoolState era -> Tx era -> Either (ApplyTxError era) (MempoolState era, Validated (Tx era)) ruleApplyTxValidation @"MEMPOOL" instance ApplyBlock DijkstraEra instance RunConwayRatify DijkstraEra