{-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -Wno-orphans #-} module Cardano.Ledger.Allegra.Transition (TransitionConfig (..)) where import Cardano.Ledger.Allegra.Era import Cardano.Ledger.Allegra.State () import Cardano.Ledger.Allegra.Translation () import Cardano.Ledger.Genesis (NoGenesis (..)) import Cardano.Ledger.Shelley import Cardano.Ledger.Shelley.Transition import Data.Aeson (FromJSON (..), ToJSON (..)) import Lens.Micro import NoThunks.Class (NoThunks (..)) instance EraTransition AllegraEra where newtype TransitionConfig AllegraEra = AllegraTransitionConfig { TransitionConfig AllegraEra -> TransitionConfig ShelleyEra atcShelleyTransitionConfig :: TransitionConfig ShelleyEra } deriving (Int -> TransitionConfig AllegraEra -> ShowS [TransitionConfig AllegraEra] -> ShowS TransitionConfig AllegraEra -> String (Int -> TransitionConfig AllegraEra -> ShowS) -> (TransitionConfig AllegraEra -> String) -> ([TransitionConfig AllegraEra] -> ShowS) -> Show (TransitionConfig AllegraEra) forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> TransitionConfig AllegraEra -> ShowS showsPrec :: Int -> TransitionConfig AllegraEra -> ShowS $cshow :: TransitionConfig AllegraEra -> String show :: TransitionConfig AllegraEra -> String $cshowList :: [TransitionConfig AllegraEra] -> ShowS showList :: [TransitionConfig AllegraEra] -> ShowS Show, TransitionConfig AllegraEra -> TransitionConfig AllegraEra -> Bool (TransitionConfig AllegraEra -> TransitionConfig AllegraEra -> Bool) -> (TransitionConfig AllegraEra -> TransitionConfig AllegraEra -> Bool) -> Eq (TransitionConfig AllegraEra) forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: TransitionConfig AllegraEra -> TransitionConfig AllegraEra -> Bool == :: TransitionConfig AllegraEra -> TransitionConfig AllegraEra -> Bool $c/= :: TransitionConfig AllegraEra -> TransitionConfig AllegraEra -> Bool /= :: TransitionConfig AllegraEra -> TransitionConfig AllegraEra -> Bool Eq, Context -> TransitionConfig AllegraEra -> IO (Maybe ThunkInfo) Proxy (TransitionConfig AllegraEra) -> String (Context -> TransitionConfig AllegraEra -> IO (Maybe ThunkInfo)) -> (Context -> TransitionConfig AllegraEra -> IO (Maybe ThunkInfo)) -> (Proxy (TransitionConfig AllegraEra) -> String) -> NoThunks (TransitionConfig AllegraEra) forall a. (Context -> a -> IO (Maybe ThunkInfo)) -> (Context -> a -> IO (Maybe ThunkInfo)) -> (Proxy a -> String) -> NoThunks a $cnoThunks :: Context -> TransitionConfig AllegraEra -> IO (Maybe ThunkInfo) noThunks :: Context -> TransitionConfig AllegraEra -> IO (Maybe ThunkInfo) $cwNoThunks :: Context -> TransitionConfig AllegraEra -> IO (Maybe ThunkInfo) wNoThunks :: Context -> TransitionConfig AllegraEra -> IO (Maybe ThunkInfo) $cshowTypeOf :: Proxy (TransitionConfig AllegraEra) -> String showTypeOf :: Proxy (TransitionConfig AllegraEra) -> String NoThunks, [TransitionConfig AllegraEra] -> Value [TransitionConfig AllegraEra] -> Encoding TransitionConfig AllegraEra -> Bool TransitionConfig AllegraEra -> Value TransitionConfig AllegraEra -> Encoding (TransitionConfig AllegraEra -> Value) -> (TransitionConfig AllegraEra -> Encoding) -> ([TransitionConfig AllegraEra] -> Value) -> ([TransitionConfig AllegraEra] -> Encoding) -> (TransitionConfig AllegraEra -> Bool) -> ToJSON (TransitionConfig AllegraEra) forall a. (a -> Value) -> (a -> Encoding) -> ([a] -> Value) -> ([a] -> Encoding) -> (a -> Bool) -> ToJSON a $ctoJSON :: TransitionConfig AllegraEra -> Value toJSON :: TransitionConfig AllegraEra -> Value $ctoEncoding :: TransitionConfig AllegraEra -> Encoding toEncoding :: TransitionConfig AllegraEra -> Encoding $ctoJSONList :: [TransitionConfig AllegraEra] -> Value toJSONList :: [TransitionConfig AllegraEra] -> Value $ctoEncodingList :: [TransitionConfig AllegraEra] -> Encoding toEncodingList :: [TransitionConfig AllegraEra] -> Encoding $comitField :: TransitionConfig AllegraEra -> Bool omitField :: TransitionConfig AllegraEra -> Bool ToJSON, Maybe (TransitionConfig AllegraEra) Value -> Parser [TransitionConfig AllegraEra] Value -> Parser (TransitionConfig AllegraEra) (Value -> Parser (TransitionConfig AllegraEra)) -> (Value -> Parser [TransitionConfig AllegraEra]) -> Maybe (TransitionConfig AllegraEra) -> FromJSON (TransitionConfig AllegraEra) forall a. (Value -> Parser a) -> (Value -> Parser [a]) -> Maybe a -> FromJSON a $cparseJSON :: Value -> Parser (TransitionConfig AllegraEra) parseJSON :: Value -> Parser (TransitionConfig AllegraEra) $cparseJSONList :: Value -> Parser [TransitionConfig AllegraEra] parseJSONList :: Value -> Parser [TransitionConfig AllegraEra] $comittedField :: Maybe (TransitionConfig AllegraEra) omittedField :: Maybe (TransitionConfig AllegraEra) FromJSON) mkTransitionConfig :: TranslationContext AllegraEra -> TransitionConfig (PreviousEra AllegraEra) -> TransitionConfig AllegraEra mkTransitionConfig NoGenesis AllegraEra TranslationContext AllegraEra NoGenesis = TransitionConfig (PreviousEra AllegraEra) -> TransitionConfig AllegraEra TransitionConfig ShelleyEra -> TransitionConfig AllegraEra AllegraTransitionConfig injectIntoTestState :: TransitionConfig AllegraEra -> NewEpochState AllegraEra -> NewEpochState AllegraEra injectIntoTestState = TransitionConfig AllegraEra -> NewEpochState AllegraEra -> NewEpochState AllegraEra forall era. EraTransition era => TransitionConfig era -> NewEpochState era -> NewEpochState era registerInitialFundsThenStaking tcPreviousEraConfigL :: EraTransition (PreviousEra AllegraEra) => Lens' (TransitionConfig AllegraEra) (TransitionConfig (PreviousEra AllegraEra)) tcPreviousEraConfigL = (TransitionConfig AllegraEra -> TransitionConfig ShelleyEra) -> (TransitionConfig AllegraEra -> TransitionConfig ShelleyEra -> TransitionConfig AllegraEra) -> Lens (TransitionConfig AllegraEra) (TransitionConfig AllegraEra) (TransitionConfig ShelleyEra) (TransitionConfig ShelleyEra) forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b lens TransitionConfig AllegraEra -> TransitionConfig ShelleyEra atcShelleyTransitionConfig (\TransitionConfig AllegraEra atc TransitionConfig ShelleyEra pc -> TransitionConfig AllegraEra atc {atcShelleyTransitionConfig = pc}) tcTranslationContextL :: Lens' (TransitionConfig AllegraEra) (TranslationContext AllegraEra) tcTranslationContextL = (TransitionConfig AllegraEra -> NoGenesis AllegraEra) -> (TransitionConfig AllegraEra -> NoGenesis AllegraEra -> TransitionConfig AllegraEra) -> Lens (TransitionConfig AllegraEra) (TransitionConfig AllegraEra) (NoGenesis AllegraEra) (NoGenesis AllegraEra) forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b lens (NoGenesis AllegraEra -> TransitionConfig AllegraEra -> NoGenesis AllegraEra forall a b. a -> b -> a const NoGenesis AllegraEra forall era. NoGenesis era NoGenesis) (TransitionConfig AllegraEra -> NoGenesis AllegraEra -> TransitionConfig AllegraEra forall a b. a -> b -> a const (TransitionConfig AllegraEra -> NoGenesis AllegraEra -> TransitionConfig AllegraEra) -> (TransitionConfig AllegraEra -> TransitionConfig AllegraEra) -> TransitionConfig AllegraEra -> NoGenesis AllegraEra -> TransitionConfig AllegraEra forall b c a. (b -> c) -> (a -> b) -> a -> c . TransitionConfig AllegraEra -> TransitionConfig AllegraEra forall a. a -> a id)