{-# LANGUAGE DataKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Dijkstra.Rules.Ledger () where import Cardano.Ledger.Allegra.Rules (AllegraUtxoPredFailure) import Cardano.Ledger.Alonzo.Rules ( AlonzoUtxoPredFailure, AlonzoUtxosPredFailure, AlonzoUtxowPredFailure, ) import Cardano.Ledger.Babbage.Rules (BabbageUtxoPredFailure, BabbageUtxowPredFailure) import Cardano.Ledger.Conway.Rules ( ConwayCertPredFailure, ConwayCertsPredFailure, ConwayDelegPredFailure, ConwayGovCertPredFailure, ConwayGovPredFailure, ConwayLedgerEvent, ConwayLedgerPredFailure (..), ConwayUtxoPredFailure, ConwayUtxosPredFailure, ConwayUtxowPredFailure, ) import Cardano.Ledger.Dijkstra.Core (EraRuleEvent, EraRuleFailure, InjectRuleFailure (..)) import Cardano.Ledger.Dijkstra.Era (DijkstraEra) import Cardano.Ledger.Dijkstra.Rules.Certs () import Cardano.Ledger.Dijkstra.Rules.Utxow () import Cardano.Ledger.Shelley.Rules ( ShelleyPoolPredFailure, ShelleyUtxoPredFailure, ShelleyUtxowPredFailure, ) type instance EraRuleFailure "LEDGER" DijkstraEra = ConwayLedgerPredFailure DijkstraEra type instance EraRuleEvent "LEDGER" DijkstraEra = ConwayLedgerEvent DijkstraEra instance InjectRuleFailure "LEDGER" ConwayLedgerPredFailure DijkstraEra instance InjectRuleFailure "LEDGER" ConwayUtxowPredFailure DijkstraEra where injectFailure :: ConwayUtxowPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure instance InjectRuleFailure "LEDGER" BabbageUtxowPredFailure DijkstraEra where injectFailure :: BabbageUtxowPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (BabbageUtxowPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> BabbageUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . BabbageUtxowPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra BabbageUtxowPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" AlonzoUtxowPredFailure DijkstraEra where injectFailure :: AlonzoUtxowPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (AlonzoUtxowPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> AlonzoUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . AlonzoUtxowPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra AlonzoUtxowPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ShelleyUtxowPredFailure DijkstraEra where injectFailure :: ShelleyUtxowPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ShelleyUtxowPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> ShelleyUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ShelleyUtxowPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra ShelleyUtxowPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ConwayUtxoPredFailure DijkstraEra where injectFailure :: ConwayUtxoPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ConwayUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> ConwayUtxoPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ConwayUtxoPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra ConwayUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" BabbageUtxoPredFailure DijkstraEra where injectFailure :: BabbageUtxoPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (BabbageUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> BabbageUtxoPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . BabbageUtxoPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra BabbageUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" AlonzoUtxoPredFailure DijkstraEra where injectFailure :: AlonzoUtxoPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (AlonzoUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> AlonzoUtxoPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . AlonzoUtxoPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra AlonzoUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" AlonzoUtxosPredFailure DijkstraEra where injectFailure :: AlonzoUtxosPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (AlonzoUtxosPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> AlonzoUtxosPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . AlonzoUtxosPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra AlonzoUtxosPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ConwayUtxosPredFailure DijkstraEra where injectFailure :: ConwayUtxosPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ConwayUtxosPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> ConwayUtxosPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ConwayUtxosPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra ConwayUtxosPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ShelleyUtxoPredFailure DijkstraEra where injectFailure :: ShelleyUtxoPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ShelleyUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> ShelleyUtxoPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ShelleyUtxoPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra ShelleyUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" AllegraUtxoPredFailure DijkstraEra where injectFailure :: AllegraUtxoPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "UTXOW" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "UTXOW" era) -> ConwayLedgerPredFailure era ConwayUtxowFailure (ConwayUtxowPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (AllegraUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra) -> AllegraUtxoPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . AllegraUtxoPredFailure DijkstraEra -> EraRuleFailure "UTXOW" DijkstraEra AllegraUtxoPredFailure DijkstraEra -> ConwayUtxowPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ConwayCertsPredFailure DijkstraEra where injectFailure :: ConwayCertsPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "CERTS" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayCertsPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra forall era. PredicateFailure (EraRule "CERTS" era) -> ConwayLedgerPredFailure era ConwayCertsFailure instance InjectRuleFailure "LEDGER" ConwayCertPredFailure DijkstraEra where injectFailure :: ConwayCertPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "CERTS" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "CERTS" era) -> ConwayLedgerPredFailure era ConwayCertsFailure (ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ConwayCertPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra) -> ConwayCertPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ConwayCertPredFailure DijkstraEra -> EraRuleFailure "CERTS" DijkstraEra ConwayCertPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ConwayDelegPredFailure DijkstraEra where injectFailure :: ConwayDelegPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "CERTS" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "CERTS" era) -> ConwayLedgerPredFailure era ConwayCertsFailure (ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ConwayDelegPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra) -> ConwayDelegPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ConwayDelegPredFailure DijkstraEra -> EraRuleFailure "CERTS" DijkstraEra ConwayDelegPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ShelleyPoolPredFailure DijkstraEra where injectFailure :: ShelleyPoolPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "CERTS" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "CERTS" era) -> ConwayLedgerPredFailure era ConwayCertsFailure (ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ShelleyPoolPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra) -> ShelleyPoolPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ShelleyPoolPredFailure DijkstraEra -> EraRuleFailure "CERTS" DijkstraEra ShelleyPoolPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ConwayGovCertPredFailure DijkstraEra where injectFailure :: ConwayGovCertPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "CERTS" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall era. PredicateFailure (EraRule "CERTS" era) -> ConwayLedgerPredFailure era ConwayCertsFailure (ConwayCertsPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra) -> (ConwayGovCertPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra) -> ConwayGovCertPredFailure DijkstraEra -> ConwayLedgerPredFailure DijkstraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ConwayGovCertPredFailure DijkstraEra -> EraRuleFailure "CERTS" DijkstraEra ConwayGovCertPredFailure DijkstraEra -> ConwayCertsPredFailure DijkstraEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ConwayGovPredFailure DijkstraEra where injectFailure :: ConwayGovPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra injectFailure = PredicateFailure (EraRule "GOV" DijkstraEra) -> ConwayLedgerPredFailure DijkstraEra ConwayGovPredFailure DijkstraEra -> EraRuleFailure "LEDGER" DijkstraEra forall era. PredicateFailure (EraRule "GOV" era) -> ConwayLedgerPredFailure era ConwayGovFailure