proteome-0.9.9.9: lib/Proteome/Data/Env.hs
module Proteome.Data.Env where
import Ribosome (Buffer)
import Proteome.Data.Project(Project)
import Proteome.Data.ProjectMetadata (ProjectMetadata (DirProject, VirtualProject))
import Proteome.Data.ProjectType (ProjectType)
import Proteome.Data.Replace (Replace)
data Env =
Env {
mainProject :: Project,
projects :: [Project],
currentProjectIndex :: Int,
configLog :: [Text],
buffers :: [Buffer],
replace :: Maybe Replace
}
deriving stock (Show, Generic)
deriving anyclass (Default)
mainType :: Env -> Maybe ProjectType
mainType env =
case env ^. (#mainProject . #meta) of
DirProject _ _ tpe ->
tpe
VirtualProject _ ->
Nothing