module HaskellCI.Package where

import HaskellCI.Prelude

import qualified Distribution.Types.GenericPackageDescription as C

import HaskellCI.Compiler

data Package = Pkg
    { Package -> String
pkgName :: String
    , Package -> Set CompilerVersion
pkgJobs :: Set CompilerVersion
    , Package -> String
pkgDir  :: FilePath
    , Package -> GenericPackageDescription
pkgGpd  :: C.GenericPackageDescription
    }
  deriving (Package -> Package -> Bool
(Package -> Package -> Bool)
-> (Package -> Package -> Bool) -> Eq Package
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Package -> Package -> Bool
== :: Package -> Package -> Bool
$c/= :: Package -> Package -> Bool
/= :: Package -> Package -> Bool
Eq, Int -> Package -> ShowS
[Package] -> ShowS
Package -> String
(Int -> Package -> ShowS)
-> (Package -> String) -> ([Package] -> ShowS) -> Show Package
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Package -> ShowS
showsPrec :: Int -> Package -> ShowS
$cshow :: Package -> String
show :: Package -> String
$cshowList :: [Package] -> ShowS
showList :: [Package] -> ShowS
Show, (forall x. Package -> Rep Package x)
-> (forall x. Rep Package x -> Package) -> Generic Package
forall x. Rep Package x -> Package
forall x. Package -> Rep Package x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Package -> Rep Package x
from :: forall x. Package -> Rep Package x
$cto :: forall x. Rep Package x -> Package
to :: forall x. Rep Package x -> Package
Generic)