{-# LANGUAGE DataKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Mary.Rules.Delegs () where import Cardano.Ledger.Core import Cardano.Ledger.Mary.Era (MaryEra) import Cardano.Ledger.Mary.Rules.Delpl () import Cardano.Ledger.Shelley.Rules ( ShelleyDelegPredFailure, ShelleyDelegsPredFailure (..), ShelleyDelplPredFailure, ShelleyPoolPredFailure, ) type instance EraRuleFailure "DELEGS" MaryEra = ShelleyDelegsPredFailure MaryEra instance InjectRuleFailure "DELEGS" ShelleyDelegsPredFailure MaryEra instance InjectRuleFailure "DELEGS" ShelleyDelplPredFailure MaryEra where injectFailure :: ShelleyDelplPredFailure MaryEra -> EraRuleFailure "DELEGS" MaryEra injectFailure = PredicateFailure (EraRule "DELPL" MaryEra) -> ShelleyDelegsPredFailure MaryEra ShelleyDelplPredFailure MaryEra -> EraRuleFailure "DELEGS" MaryEra forall era. PredicateFailure (EraRule "DELPL" era) -> ShelleyDelegsPredFailure era DelplFailure instance InjectRuleFailure "DELEGS" ShelleyPoolPredFailure MaryEra where injectFailure :: ShelleyPoolPredFailure MaryEra -> EraRuleFailure "DELEGS" MaryEra injectFailure = PredicateFailure (EraRule "DELPL" MaryEra) -> ShelleyDelegsPredFailure MaryEra ShelleyDelplPredFailure MaryEra -> ShelleyDelegsPredFailure MaryEra forall era. PredicateFailure (EraRule "DELPL" era) -> ShelleyDelegsPredFailure era DelplFailure (ShelleyDelplPredFailure MaryEra -> ShelleyDelegsPredFailure MaryEra) -> (ShelleyPoolPredFailure MaryEra -> ShelleyDelplPredFailure MaryEra) -> ShelleyPoolPredFailure MaryEra -> ShelleyDelegsPredFailure MaryEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ShelleyPoolPredFailure MaryEra -> EraRuleFailure "DELPL" MaryEra ShelleyPoolPredFailure MaryEra -> ShelleyDelplPredFailure MaryEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure instance InjectRuleFailure "DELEGS" ShelleyDelegPredFailure MaryEra where injectFailure :: ShelleyDelegPredFailure MaryEra -> EraRuleFailure "DELEGS" MaryEra injectFailure = PredicateFailure (EraRule "DELPL" MaryEra) -> ShelleyDelegsPredFailure MaryEra ShelleyDelplPredFailure MaryEra -> ShelleyDelegsPredFailure MaryEra forall era. PredicateFailure (EraRule "DELPL" era) -> ShelleyDelegsPredFailure era DelplFailure (ShelleyDelplPredFailure MaryEra -> ShelleyDelegsPredFailure MaryEra) -> (ShelleyDelegPredFailure MaryEra -> ShelleyDelplPredFailure MaryEra) -> ShelleyDelegPredFailure MaryEra -> ShelleyDelegsPredFailure MaryEra forall b c a. (b -> c) -> (a -> b) -> a -> c . ShelleyDelegPredFailure MaryEra -> EraRuleFailure "DELPL" MaryEra ShelleyDelegPredFailure MaryEra -> ShelleyDelplPredFailure MaryEra forall (rule :: Symbol) (t :: * -> *) era. InjectRuleFailure rule t era => t era -> EraRuleFailure rule era injectFailure