42aa127132dd1823d9752964240b447a349fecda
[packages/old-time.git] / Data / Generics.hs
1 -----------------------------------------------------------------------------
2 -- |
3 -- Module : Data.Generics
4 -- Copyright : (c) The University of Glasgow, CWI 2001--2004
5 -- License : BSD-style (see the file libraries/base/LICENSE)
6 --
7 -- Maintainer : libraries@haskell.org
8 -- Stability : experimental
9 -- Portability : non-portable (uses Data.Generics.Basics)
10 --
11 -- \"Scrap your boilerplate\" --- Generic programming in Haskell
12 -- See <http://www.cs.vu.nl/boilerplate/>. To scrap your boilerplate it
13 -- is sufficient to import the present module, which simply re-exports all
14 -- themes of the Data.Generics library.
15 --
16 -----------------------------------------------------------------------------
17
18 module Data.Generics (
19
20 -- * All Data.Generics modules
21 module Data.Generics.Basics, -- primitives
22 module Data.Generics.Instances, -- instances of Data class
23 module Data.Generics.Aliases, -- aliases for type case, generic types
24 module Data.Generics.Schemes, -- traversal schemes (everywhere etc.)
25 module Data.Generics.Text, -- generic read and show
26 module Data.Generics.Twins, -- twin traversal, e.g., generic eq
27
28 #ifndef __HADDOCK__
29 ,
30 -- Data types for the sum-of-products type encoding;
31 -- included for backwards compatibility; maybe obsolete.
32 (:*:)(..), (:+:)(..), Unit(..)
33 #endif
34
35 ) where
36
37 ------------------------------------------------------------------------------
38
39 import Prelude -- So that 'make depend' works
40
41 #ifdef __GLASGOW_HASKELL__
42 #ifndef __HADDOCK__
43 -- Data types for the sum-of-products type encoding;
44 -- included for backwards compatibility; maybe obsolete.
45 import GHC.Base ( (:*:)(..), (:+:)(..), Unit(..) )
46 #endif
47 #endif
48
49 import Data.Generics.Basics
50 import Data.Generics.Instances
51 import Data.Generics.Aliases
52 import Data.Generics.Schemes
53 import Data.Generics.Text
54 import Data.Generics.Twins