{-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Babbage.Transition (TransitionConfig (..), alonzoInjectCostModels) where import Cardano.Ledger.Alonzo import Cardano.Ledger.Alonzo.Transition import Cardano.Ledger.Babbage.Era import Cardano.Ledger.Babbage.State () import Cardano.Ledger.Babbage.Translation () import Cardano.Ledger.Genesis (NoGenesis (..)) import Cardano.Ledger.Shelley.Transition import Lens.Micro import NoThunks.Class (NoThunks (..)) instance EraTransition BabbageEra where newtype TransitionConfig BabbageEra = BabbageTransitionConfig { TransitionConfig BabbageEra -> TransitionConfig AlonzoEra btcAlonzoTransitionConfig :: TransitionConfig AlonzoEra } deriving (Int -> TransitionConfig BabbageEra -> ShowS [TransitionConfig BabbageEra] -> ShowS TransitionConfig BabbageEra -> String (Int -> TransitionConfig BabbageEra -> ShowS) -> (TransitionConfig BabbageEra -> String) -> ([TransitionConfig BabbageEra] -> ShowS) -> Show (TransitionConfig BabbageEra) forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> TransitionConfig BabbageEra -> ShowS showsPrec :: Int -> TransitionConfig BabbageEra -> ShowS $cshow :: TransitionConfig BabbageEra -> String show :: TransitionConfig BabbageEra -> String $cshowList :: [TransitionConfig BabbageEra] -> ShowS showList :: [TransitionConfig BabbageEra] -> ShowS Show, TransitionConfig BabbageEra -> TransitionConfig BabbageEra -> Bool (TransitionConfig BabbageEra -> TransitionConfig BabbageEra -> Bool) -> (TransitionConfig BabbageEra -> TransitionConfig BabbageEra -> Bool) -> Eq (TransitionConfig BabbageEra) forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: TransitionConfig BabbageEra -> TransitionConfig BabbageEra -> Bool == :: TransitionConfig BabbageEra -> TransitionConfig BabbageEra -> Bool $c/= :: TransitionConfig BabbageEra -> TransitionConfig BabbageEra -> Bool /= :: TransitionConfig BabbageEra -> TransitionConfig BabbageEra -> Bool Eq, Context -> TransitionConfig BabbageEra -> IO (Maybe ThunkInfo) Proxy (TransitionConfig BabbageEra) -> String (Context -> TransitionConfig BabbageEra -> IO (Maybe ThunkInfo)) -> (Context -> TransitionConfig BabbageEra -> IO (Maybe ThunkInfo)) -> (Proxy (TransitionConfig BabbageEra) -> String) -> NoThunks (TransitionConfig BabbageEra) forall a. (Context -> a -> IO (Maybe ThunkInfo)) -> (Context -> a -> IO (Maybe ThunkInfo)) -> (Proxy a -> String) -> NoThunks a $cnoThunks :: Context -> TransitionConfig BabbageEra -> IO (Maybe ThunkInfo) noThunks :: Context -> TransitionConfig BabbageEra -> IO (Maybe ThunkInfo) $cwNoThunks :: Context -> TransitionConfig BabbageEra -> IO (Maybe ThunkInfo) wNoThunks :: Context -> TransitionConfig BabbageEra -> IO (Maybe ThunkInfo) $cshowTypeOf :: Proxy (TransitionConfig BabbageEra) -> String showTypeOf :: Proxy (TransitionConfig BabbageEra) -> String NoThunks) mkTransitionConfig :: TranslationContext BabbageEra -> TransitionConfig (PreviousEra BabbageEra) -> TransitionConfig BabbageEra mkTransitionConfig TranslationContext BabbageEra NoGenesis BabbageEra NoGenesis = TransitionConfig (PreviousEra BabbageEra) -> TransitionConfig BabbageEra TransitionConfig AlonzoEra -> TransitionConfig BabbageEra BabbageTransitionConfig injectIntoTestState :: TransitionConfig BabbageEra -> NewEpochState BabbageEra -> NewEpochState BabbageEra injectIntoTestState TransitionConfig BabbageEra cfg = TransitionConfig BabbageEra -> NewEpochState BabbageEra -> NewEpochState BabbageEra forall era. (EraTransition era, ShelleyEraAccounts era) => TransitionConfig era -> NewEpochState era -> NewEpochState era shelleyRegisterInitialFundsThenStaking TransitionConfig BabbageEra cfg (NewEpochState BabbageEra -> NewEpochState BabbageEra) -> (NewEpochState BabbageEra -> NewEpochState BabbageEra) -> NewEpochState BabbageEra -> NewEpochState BabbageEra forall b c a. (b -> c) -> (a -> b) -> a -> c . TransitionConfig AlonzoEra -> NewEpochState BabbageEra -> NewEpochState BabbageEra forall era. (EraTransition era, AlonzoEraPParams era) => TransitionConfig AlonzoEra -> NewEpochState era -> NewEpochState era alonzoInjectCostModels (TransitionConfig BabbageEra cfg TransitionConfig BabbageEra -> Getting (TransitionConfig AlonzoEra) (TransitionConfig BabbageEra) (TransitionConfig AlonzoEra) -> TransitionConfig AlonzoEra forall s a. s -> Getting a s a -> a ^. (TransitionConfig (PreviousEra BabbageEra) -> Const (TransitionConfig AlonzoEra) (TransitionConfig (PreviousEra BabbageEra))) -> TransitionConfig BabbageEra -> Const (TransitionConfig AlonzoEra) (TransitionConfig BabbageEra) Getting (TransitionConfig AlonzoEra) (TransitionConfig BabbageEra) (TransitionConfig AlonzoEra) forall era. (EraTransition era, EraTransition (PreviousEra era)) => Lens' (TransitionConfig era) (TransitionConfig (PreviousEra era)) Lens' (TransitionConfig BabbageEra) (TransitionConfig (PreviousEra BabbageEra)) tcPreviousEraConfigL) tcPreviousEraConfigL :: EraTransition (PreviousEra BabbageEra) => Lens' (TransitionConfig BabbageEra) (TransitionConfig (PreviousEra BabbageEra)) tcPreviousEraConfigL = (TransitionConfig BabbageEra -> TransitionConfig AlonzoEra) -> (TransitionConfig BabbageEra -> TransitionConfig AlonzoEra -> TransitionConfig BabbageEra) -> Lens (TransitionConfig BabbageEra) (TransitionConfig BabbageEra) (TransitionConfig AlonzoEra) (TransitionConfig AlonzoEra) forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b lens TransitionConfig BabbageEra -> TransitionConfig AlonzoEra btcAlonzoTransitionConfig (\TransitionConfig BabbageEra btc TransitionConfig AlonzoEra pc -> TransitionConfig BabbageEra btc {btcAlonzoTransitionConfig = pc}) tcTranslationContextL :: Lens' (TransitionConfig BabbageEra) (TranslationContext BabbageEra) tcTranslationContextL = (TransitionConfig BabbageEra -> NoGenesis BabbageEra) -> (TransitionConfig BabbageEra -> NoGenesis BabbageEra -> TransitionConfig BabbageEra) -> Lens (TransitionConfig BabbageEra) (TransitionConfig BabbageEra) (NoGenesis BabbageEra) (NoGenesis BabbageEra) forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b lens (NoGenesis BabbageEra -> TransitionConfig BabbageEra -> NoGenesis BabbageEra forall a b. a -> b -> a const NoGenesis BabbageEra forall era. NoGenesis era NoGenesis) TransitionConfig BabbageEra -> NoGenesis BabbageEra -> TransitionConfig BabbageEra forall a b. a -> b -> a const