1 -----------------------------------------------------------------------------
3 -- Module : Data.Generics
4 -- Copyright : (c) The University of Glasgow, CWI 2001--2003
5 -- License : BSD-style (see the file libraries/base/LICENSE)
7 -- Maintainer : libraries@haskell.org
8 -- Stability : experimental
9 -- Portability : non-portable
11 -- "Scrap your boilerplate" --- Generic programming in Haskell
12 -- See <http://www.cs.vu.nl/boilerplate/>.
14 -----------------------------------------------------------------------------
16 module Data.Generics (
18 -- * Re-export all relevant modules
19 module Data.Generics.Basics,
20 module Data.Generics.Aliases,
21 module Data.Generics.Schemes,
22 module Data.Generics.Twins,
23 module Data.Generics.Strings,
24 module Data.Generics.Counts,
25 module Data.Generics.Types
29 -- Data types for the sum-of-products type encoding;
30 -- included for backwards compatibility; maybe obsolete
31 (:*:)(..), (:+:)(..), Unit(..)
36 ------------------------------------------------------------------------------
38 import Prelude -- So that 'make depend' works
40 #ifdef __GLASGOW_HASKELL__
42 import GHC.Base ( (:*:)(..), (:+:)(..), Unit(..) )
46 import Data.Generics.Basics
47 import Data.Generics.Aliases
48 import Data.Generics.Schemes
49 import Data.Generics.Twins
50 import Data.Generics.Strings
51 import Data.Generics.Counts
52 import Data.Generics.Types