-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | RPM package tree diff tool
--   
--   Tool for comparing RPM packages and versions in OS dist trees or
--   instances.
@package pkgtreediff
@version 0.5.0


-- | A library for pkgtreediff for comparing trees of rpm packages
module Distribution.RPM.PackageTreeDiff
data NVRA
NVRA :: String -> VerRel -> String -> NVRA
[rpmName] :: NVRA -> String
[rpmVerRel] :: NVRA -> VerRel
[rpmArch] :: NVRA -> String
readNVRA :: String -> NVRA

-- | RPMPkgDiff type encodes how a particular rpm package differs between
--   trees
data RPMPkgDiff
PkgUpdate :: NVRA -> NVRA -> RPMPkgDiff
PkgDowngrade :: NVRA -> NVRA -> RPMPkgDiff
PkgAdd :: NVRA -> RPMPkgDiff
PkgDel :: NVRA -> RPMPkgDiff
PkgArch :: NVRA -> NVRA -> RPMPkgDiff

-- | Compare two lists of packages NVRAs
diffPkgs :: Ignore -> [NVRA] -> [NVRA] -> [RPMPkgDiff]

-- | Ignore describes how comparison is done
data Ignore

-- | do not ignore version or release
IgnoreNone :: Ignore

-- | ignore differences in release
IgnoreRelease :: Ignore

-- | ignore differences in version
IgnoreVersion :: Ignore

-- | Mode describes the kind of summary generated by compareDirs
data Mode
AutoSummary :: Mode
NoSummary :: Mode
ShowSummary :: Mode
Added :: Mode
Deleted :: Mode
Updated :: Mode
Downgraded :: Mode
RST :: Mode
instance GHC.Classes.Eq Distribution.RPM.PackageTreeDiff.Mode
instance GHC.Classes.Eq Distribution.RPM.PackageTreeDiff.Ignore
instance GHC.Classes.Eq Distribution.RPM.PackageTreeDiff.RPMPkgDiff
