Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal On branch : master
http://hackage.haskell.org/trac/ghc/changeset/86871970d9982c2bea47832e7f9ecf11bbf32000 >--------------------------------------------------------------- commit 86871970d9982c2bea47832e7f9ecf11bbf32000 Author: bjorn <[email protected]> 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 _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
