[commit: Cabal] master: Some refactoring of the Dependency module. (8687197)
Ian Lynagh
igloo at earth.li
Fri Jun 24 01:46:39 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/86871970d9982c2bea47832e7f9ecf11bbf32000
>---------------------------------------------------------------
commit 86871970d9982c2bea47832e7f9ecf11bbf32000
Author: bjorn <bjorn at bringert.net>
Date: Sun Oct 7 13:13:49 2007 +0000
Some refactoring of the Dependency module.
>---------------------------------------------------------------
.../src/Network/Hackage/CabalInstall/Dependency.hs | 28 ++++++++++---------
1 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs b/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs
index 24b4814..3aff9d9 100644
--- a/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs
+++ b/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs
@@ -14,7 +14,6 @@ module Network.Hackage.CabalInstall.Dependency
(
-- * Dependency resolution
resolveDependencies
- , resolveDependenciesAux
-- * Utilities
, depToUnresolvedDep
, getPackages -- :: [ResolvedPackage] -> [(PackageIdentifier,[String],String)]
@@ -164,23 +163,26 @@ finalizePackage comp installed available flags desc
(showCompilerId comp, compilerVersion comp)
(pkgDesc desc)
+resolveDependency :: Compiler
+ -> [PackageIdentifier] -- ^ Installed packages.
+ -> [PkgInfo] -- ^ Installable packages
+ -> UnresolvedDependency
+ -> ResolvedPackage
+resolveDependency comp installed available dep
+ = let rDep = getDependency comp installed available dep
+ in case resolvedData rDep of
+ Nothing -> resolvedDepToResolvedPkg (dependency dep,Nothing)
+ _ -> rDep
+
-- |Resolve some dependencies from the known packages while filtering out installed packages.
-- The result hasn't been modified to put the dependencies in front of the packages.
-resolveDependenciesAux :: ConfigFlags
- -> Compiler
- -> ProgramConfiguration
+resolveDependenciesAux :: Compiler
-> [PackageIdentifier] -- ^Installed packages.
-> [PkgInfo] -- ^ Installable packages
-> [UnresolvedDependency] -- ^Dependencies in need of resolution.
-> [ResolvedPackage]
-resolveDependenciesAux cfg comp conf installed available deps
- = map resolve (filter (not . isInstalled installed . dependency) deps)
- where resolve dep
- = let rDep = getDependency comp installed available dep
- in case resolvedData rDep of
- Nothing -> resolvedDepToResolvedPkg (dependency dep,Nothing)
- _ -> rDep
-
+resolveDependenciesAux comp installed available =
+ map (resolveDependency comp installed available)
-- |Resolve some dependencies from the known packages while filtering out installed packages.
-- The result has been modified to put the dependencies in front of the packages.
@@ -192,4 +194,4 @@ resolveDependencies :: ConfigFlags
resolveDependencies cfg comp conf deps
= do installed <- listInstalledPackages cfg comp conf
available <- getKnownPackages cfg
- return $ flattenDepList installed $ resolveDependenciesAux cfg comp conf installed available deps
+ return $ flattenDepList installed $ resolveDependenciesAux comp installed available deps
More information about the Cvs-libraries
mailing list