module Hix.Managed.Data.ProjectContext where import Hix.Data.EnvName (EnvName) import Hix.Managed.Data.BuildConfig (BuildConfig) import Hix.Managed.Data.EnvContext (EnvContext) import Hix.Managed.Data.ManagedPackage (ManagedPackage) import Hix.Managed.Data.Packages (Packages) import Hix.Managed.Data.ProjectState (ProjectState) data ProjectContext = ProjectContext { ProjectContext -> BuildConfig build :: BuildConfig, ProjectContext -> ProjectState state :: ProjectState, ProjectContext -> Packages ManagedPackage packages :: Packages ManagedPackage, ProjectContext -> NonEmpty (Either EnvName EnvContext) envs :: NonEmpty (Either EnvName EnvContext) } deriving stock (ProjectContext -> ProjectContext -> Bool (ProjectContext -> ProjectContext -> Bool) -> (ProjectContext -> ProjectContext -> Bool) -> Eq ProjectContext forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: ProjectContext -> ProjectContext -> Bool == :: ProjectContext -> ProjectContext -> Bool $c/= :: ProjectContext -> ProjectContext -> Bool /= :: ProjectContext -> ProjectContext -> Bool Eq, Int -> ProjectContext -> ShowS [ProjectContext] -> ShowS ProjectContext -> String (Int -> ProjectContext -> ShowS) -> (ProjectContext -> String) -> ([ProjectContext] -> ShowS) -> Show ProjectContext forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> ProjectContext -> ShowS showsPrec :: Int -> ProjectContext -> ShowS $cshow :: ProjectContext -> String show :: ProjectContext -> String $cshowList :: [ProjectContext] -> ShowS showList :: [ProjectContext] -> ShowS Show)