[commit: Cabal] master: Added a Functor instance for search trees. (42d5932)
Ian Lynagh
igloo at earth.li
Fri Nov 4 18:06:59 CET 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/42d5932fdf7f883139add3a9a6c8c1588aa0ab06
>---------------------------------------------------------------
commit 42d5932fdf7f883139add3a9a6c8c1588aa0ab06
Author: Andres Loeh <andres at well-typed.com>
Date: Mon Jul 4 18:45:33 2011 +0000
Added a Functor instance for search trees.
>---------------------------------------------------------------
.../Distribution/Client/Dependency/Modular/Tree.hs | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/cabal-install/Distribution/Client/Dependency/Modular/Tree.hs b/cabal-install/Distribution/Client/Dependency/Modular/Tree.hs
index 954bef4..50b522d 100644
--- a/cabal-install/Distribution/Client/Dependency/Modular/Tree.hs
+++ b/cabal-install/Distribution/Client/Dependency/Modular/Tree.hs
@@ -21,6 +21,13 @@ data Tree a =
| Fail (ConflictSet QPN) FailReason
deriving (Eq, Show)
+instance Functor Tree where
+ fmap f (PChoice qpn i xs) = PChoice qpn (f i) (fmap (fmap f) xs)
+ fmap f (FChoice qpn i b xs) = FChoice qpn (f i) b (fmap (fmap f) xs)
+ fmap f (GoalChoice xs) = GoalChoice (fmap (fmap f) xs)
+ fmap f (Done rdm ) = Done rdm
+ fmap f (Fail cs fr ) = Fail cs fr
+
data FailReason = InconsistentInitialConstraints
| Conflicting [Dep QPN]
| ConflictingFlag
More information about the Cvs-libraries
mailing list