cabal-gild-1.1.2.0: source/library/CabalGild/Type/PkgconfigDependency.hs
module CabalGild.Type.PkgconfigDependency where
import qualified CabalGild.Type.PkgconfigVersionRange as PkgconfigVersionRange
import qualified Data.Ord as Ord
import qualified Distribution.Parsec as Parsec
import qualified Distribution.Pretty as Pretty
import qualified Distribution.Types.PkgconfigDependency as PkgconfigDependency
-- | This type exists to provide an 'Ord' instance for
-- 'PkgconfigDependency.PkgconfigDependency', which was added in
-- @Cabal-syntax-3.10.1.0@.
newtype PkgconfigDependency = PkgconfigDependency
{ unwrap :: PkgconfigDependency.PkgconfigDependency
}
deriving (Eq, Show)
instance Ord PkgconfigDependency where
compare =
Ord.comparing $
(\(PkgconfigDependency.PkgconfigDependency pn pvr) -> (pn, PkgconfigVersionRange.PkgconfigVersionRange pvr))
. unwrap
instance Parsec.Parsec PkgconfigDependency where
parsec = PkgconfigDependency <$> Parsec.parsec
instance Pretty.Pretty PkgconfigDependency where
pretty = Pretty.pretty . unwrap