1cabal-version:      >= 1.18
2build-type:         Simple
3name:               uniplate
4version:            1.6.13
5x-revision: 1
6author:             Neil Mitchell <ndmitchell@gmail.com>
7maintainer:         Neil Mitchell <ndmitchell@gmail.com>
8copyright:          Neil Mitchell 2006-2020
9homepage:           https://github.com/ndmitchell/uniplate#readme
10bug-reports:        https://github.com/ndmitchell/uniplate/issues
11license:            BSD3
12license-file:       LICENSE
13synopsis:           Help writing simple, concise and fast generic operations.
14category:           Generics
15description:
16    Uniplate is library for writing simple and concise generic operations.
17    Uniplate has similar goals to the original Scrap Your Boilerplate work,
18    but is substantially simpler and faster.
19    .
20    To get started with Uniplate you should import one of the three following
21    modules:
22    .
23    * "Data.Generics.Uniplate.Data" - to quickly start writing generic functions.
24    Most users should start by importing this module.
25    .
26    * "Data.Generics.Uniplate.Direct" - a replacement for "Data.Generics.Uniplate.Data"
27    with substantially higher performance (around 5 times), but requires writing
28    instance declarations.
29    .
30    * "Data.Generics.Uniplate.Operations" - definitions of all the operations defined
31    by Uniplate. Both the above two modules re-export this module.
32    .
33    In addition, some users may want to make use of the following modules:
34    .
35    * "Data.Generics.Uniplate.Zipper" - a zipper built on top of Uniplate instances.
36    .
37    * "Data.Generics.SYB" - users transitioning from the Scrap Your Boilerplate library.
38    .
39    * "Data.Generics.Compos" - users transitioning from the Compos library.
40    .
41    * "Data.Generics.Uniplate.DataOnly" - users making use of both @Data@ and @Direct@
42    to avoid getting instance conflicts.
43
44extra-source-files:
45    Data/Generics/Uniplate/Internal/DataInc.hs
46    Data/Generics/Uniplate/Internal/OperationsInc.hs
47extra-doc-files:
48    README.md
49    CHANGES.txt
50tested-with: GHC==8.10, GHC==8.8, GHC==8.6, GHC==8.4, GHC==8.2, GHC==8.0
51
52source-repository head
53    type:     git
54    location: https://github.com/ndmitchell/uniplate.git
55
56library
57    default-language: Haskell2010
58    build-depends:
59        base >=4.10 && <5, containers, syb, ghc-prim,
60        hashable >= 1.1.2.3,
61        unordered-containers >= 0.2.1
62
63    exposed-modules:
64        Data.Generics.Str
65        Data.Generics.Compos
66        Data.Generics.SYB
67        Data.Generics.Uniplate.Data
68        Data.Generics.Uniplate.Data.Instances
69        Data.Generics.Uniplate.DataOnly
70        Data.Generics.Uniplate.Direct
71        Data.Generics.Uniplate.Operations
72        Data.Generics.Uniplate.Typeable
73        Data.Generics.Uniplate.Zipper
74
75        -- DEPRECATED
76        Data.Generics.Uniplate
77        Data.Generics.UniplateOn
78        Data.Generics.UniplateStr
79        Data.Generics.UniplateStrOn
80        Data.Generics.Biplate
81        Data.Generics.PlateDirect
82        Data.Generics.PlateTypeable
83        Data.Generics.PlateData
84
85    other-modules:
86        Data.Generics.Uniplate.Internal.Data
87        Data.Generics.Uniplate.Internal.DataOnlyOperations
88        Data.Generics.Uniplate.Internal.Utils
89