From: ross Date: Fri, 30 Dec 2005 00:18:59 +0000 (+0000) Subject: [project @ 2005-12-30 00:18:59 by ross] X-Git-Tag: Initial_conversion_from_CVS_complete~6 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=638e07f4e7b806768e688ebfedb1e0dcb3d6a70c;p=ghc-base.git [project @ 2005-12-30 00:18:59 by ross] deriving Data --- diff --git a/Data/Tree.hs b/Data/Tree.hs index e0a7cb6..fec5856 100644 --- a/Data/Tree.hs +++ b/Data/Tree.hs @@ -37,7 +37,9 @@ import Data.Foldable (Foldable(foldMap), toList) import Data.Traversable (Traversable(traverse)) import Data.Typeable -#include "Typeable.h" +#ifdef __GLASGOW_HASKELL__ +import Data.Generics.Basics (Data) +#endif -- | Multi-way trees, also known as /rose trees/. data Tree a = Node { @@ -45,14 +47,20 @@ data Tree a = Node { subForest :: Forest a -- ^ zero or more child trees } #ifndef __HADDOCK__ +# ifdef __GLASGOW_HASKELL__ + deriving (Eq, Read, Show, Data) +# else deriving (Eq, Read, Show) +# endif #else /* __HADDOCK__ (which can't figure these out by itself) */ instance Eq a => Eq (Tree a) instance Read a => Read (Tree a) instance Show a => Show (Tree a) +instance Data a => Data (Tree a) #endif type Forest a = [Tree a] +#include "Typeable.h" INSTANCE_TYPEABLE1(Tree,treeTc,"Tree") instance Functor Tree where