{-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Babbage.Transition (TransitionConfig (..)) 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 Data.Aeson (FromJSON (..), ToJSON (..)) 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, [TransitionConfig BabbageEra] -> Value [TransitionConfig BabbageEra] -> Encoding TransitionConfig BabbageEra -> Bool TransitionConfig BabbageEra -> Value TransitionConfig BabbageEra -> Encoding (TransitionConfig BabbageEra -> Value) -> (TransitionConfig BabbageEra -> Encoding) -> ([TransitionConfig BabbageEra] -> Value) -> ([TransitionConfig BabbageEra] -> Encoding) -> (TransitionConfig BabbageEra -> Bool) -> ToJSON (TransitionConfig BabbageEra) forall a. (a -> Value) -> (a -> Encoding) -> ([a] -> Value) -> ([a] -> Encoding) -> (a -> Bool) -> ToJSON a $ctoJSON :: TransitionConfig BabbageEra -> Value toJSON :: TransitionConfig BabbageEra -> Value $ctoEncoding :: TransitionConfig BabbageEra -> Encoding toEncoding :: TransitionConfig BabbageEra -> Encoding $ctoJSONList :: [TransitionConfig BabbageEra] -> Value toJSONList :: [TransitionConfig BabbageEra] -> Value $ctoEncodingList :: [TransitionConfig BabbageEra] -> Encoding toEncodingList :: [TransitionConfig BabbageEra] -> Encoding $comitField :: TransitionConfig BabbageEra -> Bool omitField :: TransitionConfig BabbageEra -> Bool ToJSON, Maybe (TransitionConfig BabbageEra) Value -> Parser [TransitionConfig BabbageEra] Value -> Parser (TransitionConfig BabbageEra) (Value -> Parser (TransitionConfig BabbageEra)) -> (Value -> Parser [TransitionConfig BabbageEra]) -> Maybe (TransitionConfig BabbageEra) -> FromJSON (TransitionConfig BabbageEra) forall a. (Value -> Parser a) -> (Value -> Parser [a]) -> Maybe a -> FromJSON a $cparseJSON :: Value -> Parser (TransitionConfig BabbageEra) parseJSON :: Value -> Parser (TransitionConfig BabbageEra) $cparseJSONList :: Value -> Parser [TransitionConfig BabbageEra] parseJSONList :: Value -> Parser [TransitionConfig BabbageEra] $comittedField :: Maybe (TransitionConfig BabbageEra) omittedField :: Maybe (TransitionConfig BabbageEra) FromJSON) 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 -> NewEpochState BabbageEra -> NewEpochState BabbageEra forall era. EraTransition era => TransitionConfig era -> NewEpochState era -> NewEpochState era registerInitialFundsThenStaking 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 (TransitionConfig BabbageEra -> NoGenesis BabbageEra -> TransitionConfig BabbageEra) -> (TransitionConfig BabbageEra -> TransitionConfig BabbageEra) -> TransitionConfig BabbageEra -> NoGenesis BabbageEra -> TransitionConfig BabbageEra forall b c a. (b -> c) -> (a -> b) -> a -> c . TransitionConfig BabbageEra -> TransitionConfig BabbageEra forall a. a -> a id)