{-# LANGUAGE DeriveGeneric #-} module HaskellWorks.Polysemy.Hedgehog.Workspace.Types ( PackagePath(..), ProjectRoot(..), Workspace(..), ) where import GHC.Generics import HaskellWorks.Polysemy.Prelude newtype Workspace = Workspace { Workspace -> FilePath filePath :: FilePath } deriving (Workspace -> Workspace -> Bool (Workspace -> Workspace -> Bool) -> (Workspace -> Workspace -> Bool) -> Eq Workspace forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: Workspace -> Workspace -> Bool == :: Workspace -> Workspace -> Bool $c/= :: Workspace -> Workspace -> Bool /= :: Workspace -> Workspace -> Bool Eq, Int -> Workspace -> ShowS [Workspace] -> ShowS Workspace -> FilePath (Int -> Workspace -> ShowS) -> (Workspace -> FilePath) -> ([Workspace] -> ShowS) -> Show Workspace forall a. (Int -> a -> ShowS) -> (a -> FilePath) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> Workspace -> ShowS showsPrec :: Int -> Workspace -> ShowS $cshow :: Workspace -> FilePath show :: Workspace -> FilePath $cshowList :: [Workspace] -> ShowS showList :: [Workspace] -> ShowS Show, (forall x. Workspace -> Rep Workspace x) -> (forall x. Rep Workspace x -> Workspace) -> Generic Workspace forall x. Rep Workspace x -> Workspace forall x. Workspace -> Rep Workspace x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. Workspace -> Rep Workspace x from :: forall x. Workspace -> Rep Workspace x $cto :: forall x. Rep Workspace x -> Workspace to :: forall x. Rep Workspace x -> Workspace Generic) newtype ProjectRoot = ProjectRoot { ProjectRoot -> FilePath filePath :: FilePath } deriving (ProjectRoot -> ProjectRoot -> Bool (ProjectRoot -> ProjectRoot -> Bool) -> (ProjectRoot -> ProjectRoot -> Bool) -> Eq ProjectRoot forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: ProjectRoot -> ProjectRoot -> Bool == :: ProjectRoot -> ProjectRoot -> Bool $c/= :: ProjectRoot -> ProjectRoot -> Bool /= :: ProjectRoot -> ProjectRoot -> Bool Eq, Int -> ProjectRoot -> ShowS [ProjectRoot] -> ShowS ProjectRoot -> FilePath (Int -> ProjectRoot -> ShowS) -> (ProjectRoot -> FilePath) -> ([ProjectRoot] -> ShowS) -> Show ProjectRoot forall a. (Int -> a -> ShowS) -> (a -> FilePath) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> ProjectRoot -> ShowS showsPrec :: Int -> ProjectRoot -> ShowS $cshow :: ProjectRoot -> FilePath show :: ProjectRoot -> FilePath $cshowList :: [ProjectRoot] -> ShowS showList :: [ProjectRoot] -> ShowS Show) newtype PackagePath = PackagePath { PackagePath -> FilePath filePath :: FilePath } deriving (PackagePath -> PackagePath -> Bool (PackagePath -> PackagePath -> Bool) -> (PackagePath -> PackagePath -> Bool) -> Eq PackagePath forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: PackagePath -> PackagePath -> Bool == :: PackagePath -> PackagePath -> Bool $c/= :: PackagePath -> PackagePath -> Bool /= :: PackagePath -> PackagePath -> Bool Eq, Int -> PackagePath -> ShowS [PackagePath] -> ShowS PackagePath -> FilePath (Int -> PackagePath -> ShowS) -> (PackagePath -> FilePath) -> ([PackagePath] -> ShowS) -> Show PackagePath forall a. (Int -> a -> ShowS) -> (a -> FilePath) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> PackagePath -> ShowS showsPrec :: Int -> PackagePath -> ShowS $cshow :: PackagePath -> FilePath show :: PackagePath -> FilePath $cshowList :: [PackagePath] -> ShowS showList :: [PackagePath] -> ShowS Show)