module Hix.Managed.Data.EnvConfig where import Data.Aeson (FromJSON) import Hix.Data.PackageName (LocalPackage) import Hix.Managed.Cabal.Data.Config (GhcDb) data EnvConfig = EnvConfig { EnvConfig -> [LocalPackage] targets :: [LocalPackage], EnvConfig -> GhcDb ghc :: GhcDb } deriving stock (EnvConfig -> EnvConfig -> Bool (EnvConfig -> EnvConfig -> Bool) -> (EnvConfig -> EnvConfig -> Bool) -> Eq EnvConfig forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: EnvConfig -> EnvConfig -> Bool == :: EnvConfig -> EnvConfig -> Bool $c/= :: EnvConfig -> EnvConfig -> Bool /= :: EnvConfig -> EnvConfig -> Bool Eq, Int -> EnvConfig -> ShowS [EnvConfig] -> ShowS EnvConfig -> String (Int -> EnvConfig -> ShowS) -> (EnvConfig -> String) -> ([EnvConfig] -> ShowS) -> Show EnvConfig forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> EnvConfig -> ShowS showsPrec :: Int -> EnvConfig -> ShowS $cshow :: EnvConfig -> String show :: EnvConfig -> String $cshowList :: [EnvConfig] -> ShowS showList :: [EnvConfig] -> ShowS Show, (forall x. EnvConfig -> Rep EnvConfig x) -> (forall x. Rep EnvConfig x -> EnvConfig) -> Generic EnvConfig forall x. Rep EnvConfig x -> EnvConfig forall x. EnvConfig -> Rep EnvConfig x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. EnvConfig -> Rep EnvConfig x from :: forall x. EnvConfig -> Rep EnvConfig x $cto :: forall x. Rep EnvConfig x -> EnvConfig to :: forall x. Rep EnvConfig x -> EnvConfig Generic) deriving anyclass (Maybe EnvConfig Value -> Parser [EnvConfig] Value -> Parser EnvConfig (Value -> Parser EnvConfig) -> (Value -> Parser [EnvConfig]) -> Maybe EnvConfig -> FromJSON EnvConfig forall a. (Value -> Parser a) -> (Value -> Parser [a]) -> Maybe a -> FromJSON a $cparseJSON :: Value -> Parser EnvConfig parseJSON :: Value -> Parser EnvConfig $cparseJSONList :: Value -> Parser [EnvConfig] parseJSONList :: Value -> Parser [EnvConfig] $comittedField :: Maybe EnvConfig omittedField :: Maybe EnvConfig FromJSON)