{-# LANGUAGE DataKinds #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -Wno-orphans #-}

module Cardano.Ledger.Alonzo.Rules.Deleg () where

import Cardano.Ledger.Alonzo.Era (AlonzoEra)
import Cardano.Ledger.Core
import qualified Cardano.Ledger.Shelley.Rules as Shelley

type instance EraRuleFailure "DELEG" AlonzoEra = Shelley.ShelleyDelegPredFailure AlonzoEra

instance InjectRuleFailure "DELEG" Shelley.ShelleyDelegPredFailure AlonzoEra

instance InjectRuleFailure "DELEG" Shelley.AccountAlreadyRegistered AlonzoEra where
  injectFailure :: AccountAlreadyRegistered AlonzoEra
-> EraRuleFailure "DELEG" AlonzoEra
injectFailure = AccountAlreadyRegistered AlonzoEra
-> EraRuleFailure "DELEG" AlonzoEra
AccountAlreadyRegistered AlonzoEra
-> ShelleyDelegPredFailure AlonzoEra
forall era.
AccountAlreadyRegistered era -> ShelleyDelegPredFailure era
Shelley.DelegAccountAlreadyRegistered