{-# LANGUAGE DataKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Allegra.Rules.Ledger () where import Cardano.Ledger.Allegra.Era (AllegraEra) import Cardano.Ledger.Allegra.Rules.Delegs () import Cardano.Ledger.Allegra.Rules.Utxow () import Cardano.Ledger.Core import Cardano.Ledger.Shelley.Rules ( ShelleyDelegPredFailure, ShelleyDelegsPredFailure, ShelleyDelplPredFailure, ShelleyLedgerEvent, ShelleyLedgerPredFailure (..), ShelleyPoolPredFailure, ShelleyPpupPredFailure, ShelleyUtxoPredFailure, ShelleyUtxowPredFailure, ) type instance EraRuleFailure "LEDGER" (AllegraEra c) = ShelleyLedgerPredFailure (AllegraEra c) instance InjectRuleFailure "LEDGER" ShelleyLedgerPredFailure (AllegraEra c) instance InjectRuleFailure "LEDGER" ShelleyUtxowPredFailure (AllegraEra c) where injectFailure :: ShelleyUtxowPredFailure (AllegraEra c) -> EraRuleFailure "LEDGER" (AllegraEra c) injectFailure = forall era. PredicateFailure (EraRule "UTXOW" era) -> ShelleyLedgerPredFailure era UtxowFailure instance InjectRuleFailure "LEDGER" ShelleyUtxoPredFailure (AllegraEra c) where injectFailure :: ShelleyUtxoPredFailure (AllegraEra c) -> EraRuleFailure "LEDGER" (AllegraEra c) injectFailure = forall era. PredicateFailure (EraRule "UTXOW" era) -> ShelleyLedgerPredFailure era UtxowFailure forall b c a. (b -> c) -> (a -> b) -> a -> c . forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ShelleyPpupPredFailure (AllegraEra c) where injectFailure :: ShelleyPpupPredFailure (AllegraEra c) -> EraRuleFailure "LEDGER" (AllegraEra c) injectFailure = forall era. PredicateFailure (EraRule "UTXOW" era) -> ShelleyLedgerPredFailure era UtxowFailure forall b c a. (b -> c) -> (a -> b) -> a -> c . forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ShelleyDelegsPredFailure (AllegraEra c) where injectFailure :: ShelleyDelegsPredFailure (AllegraEra c) -> EraRuleFailure "LEDGER" (AllegraEra c) injectFailure = forall era. PredicateFailure (EraRule "DELEGS" era) -> ShelleyLedgerPredFailure era DelegsFailure instance InjectRuleFailure "LEDGER" ShelleyDelplPredFailure (AllegraEra c) where injectFailure :: ShelleyDelplPredFailure (AllegraEra c) -> EraRuleFailure "LEDGER" (AllegraEra c) injectFailure = forall era. PredicateFailure (EraRule "DELEGS" era) -> ShelleyLedgerPredFailure era DelegsFailure forall b c a. (b -> c) -> (a -> b) -> a -> c . forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ShelleyPoolPredFailure (AllegraEra c) where injectFailure :: ShelleyPoolPredFailure (AllegraEra c) -> EraRuleFailure "LEDGER" (AllegraEra c) injectFailure = forall era. PredicateFailure (EraRule "DELEGS" era) -> ShelleyLedgerPredFailure era DelegsFailure forall b c a. (b -> c) -> (a -> b) -> a -> c . forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "LEDGER" ShelleyDelegPredFailure (AllegraEra c) where injectFailure :: ShelleyDelegPredFailure (AllegraEra c) -> EraRuleFailure "LEDGER" (AllegraEra c) injectFailure = forall era. PredicateFailure (EraRule "DELEGS" era) -> ShelleyLedgerPredFailure era DelegsFailure forall b c a. (b -> c) -> (a -> b) -> a -> c . forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure type instance EraRuleEvent "LEDGER" (AllegraEra c) = ShelleyLedgerEvent (AllegraEra c)