{-# LANGUAGE GADTs #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE RankNTypes #-} module Cardano.CLI.EraBased.Run ( runAnyEraCommand , runCmds , runGovernanceCmds ) where import Cardano.Api.Experimental (IsEra, obtainCommonConstraints) import Cardano.CLI.Compatible.Exception import Cardano.CLI.EraBased.Command import Cardano.CLI.EraBased.Genesis.Run import Cardano.CLI.EraBased.Governance.Run import Cardano.CLI.EraBased.Query.Run import Cardano.CLI.EraBased.StakeAddress.Run import Cardano.CLI.EraBased.StakePool.Run import Cardano.CLI.EraBased.TextView.Run import Cardano.CLI.EraBased.Transaction.Run (runTransactionCmds) import Cardano.CLI.EraIndependent.Address.Run import Cardano.CLI.EraIndependent.Key.Run import Cardano.CLI.EraIndependent.Node.Run import Cardano.CLI.Helper (printEraDeprecationWarning) runAnyEraCommand :: () => AnyEraCommand -> CIO e () runAnyEraCommand :: forall e. AnyEraCommand -> CIO e () runAnyEraCommand = \case AnyEraCommandOf Era era era Cmds era cmd -> do Era era -> RIO e () forall era (m :: * -> *) (eon :: * -> *). (Typeable era, MonadIO m, ToCardanoEra eon) => eon era -> m () printEraDeprecationWarning Era era era Era era -> (EraCommonConstraints era => RIO e ()) -> RIO e () forall era a. Era era -> (EraCommonConstraints era => a) -> a obtainCommonConstraints Era era era ((EraCommonConstraints era => RIO e ()) -> RIO e ()) -> (EraCommonConstraints era => RIO e ()) -> RIO e () forall a b. (a -> b) -> a -> b $ Cmds era -> CIO e () forall era e. IsEra era => Cmds era -> CIO e () runCmds Cmds era cmd runCmds :: IsEra era => Cmds era -> CIO e () runCmds :: forall era e. IsEra era => Cmds era -> CIO e () runCmds = \case AddressCmds AddressCmds cmd -> AddressCmds -> CIO e () forall e. AddressCmds -> CIO e () runAddressCmds AddressCmds cmd KeyCmds KeyCmds cmd -> KeyCmds -> CIO e () forall e. KeyCmds -> CIO e () runKeyCmds KeyCmds cmd GovernanceCmds GovernanceCmds era cmd -> GovernanceCmds era -> CIO e () forall era e. GovernanceCmds era -> CIO e () runGovernanceCmds GovernanceCmds era cmd GenesisCmds GenesisCmds era cmd -> GenesisCmds era -> CIO e () forall era e. GenesisCmds era -> CIO e () runGenesisCmds GenesisCmds era cmd NodeCmds NodeCmds cmd -> NodeCmds -> CIO e () forall e. NodeCmds -> CIO e () runNodeCmds NodeCmds cmd QueryCmds QueryCmds era cmd -> QueryCmds era -> CIO e () forall era e. QueryCmds era -> CIO e () runQueryCmds QueryCmds era cmd StakeAddressCmds StakeAddressCmds era cmd -> StakeAddressCmds era -> CIO e () forall era e. StakeAddressCmds era -> CIO e () runStakeAddressCmds StakeAddressCmds era cmd StakePoolCmds StakePoolCmds era cmd -> StakePoolCmds era -> CIO e () forall era e. IsEra era => StakePoolCmds era -> CIO e () runStakePoolCmds StakePoolCmds era cmd TextViewCmds TextViewCmds era cmd -> TextViewCmds era -> CIO e () forall era e. TextViewCmds era -> CIO e () runTextViewCmds TextViewCmds era cmd TransactionCmds TransactionCmds era cmd -> TransactionCmds era -> CIO e () forall era e. IsEra era => TransactionCmds era -> CIO e () runTransactionCmds TransactionCmds era cmd