summary refs log tree commit diff
path: root/third_party/bazel/rules_haskell/examples/transformers/transformers.cabal
blob: 945adda910fd568ba69f7b113c25a33f0672fc41 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
name:         transformers
version:      0.5.6.2
license:      BSD3
license-file: LICENSE
author:       Andy Gill, Ross Paterson
maintainer:   Ross Paterson <R.Paterson@city.ac.uk>
bug-reports:  http://hub.darcs.net/ross/transformers/issues
category:     Control
synopsis:     Concrete functor and monad transformers
description:
    A portable library of functor and monad transformers, inspired by
    the paper
    .
    * \"Functional Programming with Overloading and Higher-Order
    Polymorphism\", by Mark P Jones,
    in /Advanced School of Functional Programming/, 1995
    (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
    .
    This package contains:
    .
    * the monad transformer class (in "Control.Monad.Trans.Class")
    .
    * concrete functor and monad transformers, each with associated
      operations and functions to lift operations associated with other
      transformers.
    .
    The package can be used on its own in portable Haskell code, in
    which case operations need to be manually lifted through transformer
    stacks (see "Control.Monad.Trans.Class" for some examples).
    Alternatively, it can be used with the non-portable monad classes in
    the @mtl@ or @monads-tf@ packages, which automatically lift operations
    introduced by monad transformers through other transformers.
build-type: Simple
extra-source-files:
    changelog
cabal-version: >= 1.6

source-repository head
  type: darcs
  location: http://hub.darcs.net/ross/transformers

library
  build-depends: base >= 2 && < 6
  hs-source-dirs: .
  if !impl(ghc>=7.9)
    -- Data.Functor.Identity was moved into base-4.8.0.0 (GHC 7.10)
    -- see also https://ghc.haskell.org/trac/ghc/ticket/9664
    -- NB: using impl(ghc>=7.9) instead of fragile Cabal flags
    hs-source-dirs: legacy/pre709
    exposed-modules: Data.Functor.Identity
  if !impl(ghc>=7.11)
    -- modules moved into base-4.9.0 (GHC 8.0)
    -- see https://ghc.haskell.org/trac/ghc/ticket/10773
    -- see https://ghc.haskell.org/trac/ghc/ticket/11135
    hs-source-dirs: legacy/pre711
    exposed-modules:
      Control.Monad.IO.Class
      Data.Functor.Classes
      Data.Functor.Compose
      Data.Functor.Product
      Data.Functor.Sum
  if impl(ghc>=7.2 && <7.5)
    -- Prior to GHC 7.5, GHC.Generics lived in ghc-prim
    build-depends: ghc-prim
  exposed-modules:
    Control.Applicative.Backwards
    Control.Applicative.Lift
    Control.Monad.Signatures
    Control.Monad.Trans.Accum
    Control.Monad.Trans.Class
    Control.Monad.Trans.Cont
    Control.Monad.Trans.Except
    Control.Monad.Trans.Error
    Control.Monad.Trans.Identity
    Control.Monad.Trans.List
    Control.Monad.Trans.Maybe
    Control.Monad.Trans.Reader
    Control.Monad.Trans.RWS
    Control.Monad.Trans.RWS.CPS
    Control.Monad.Trans.RWS.Lazy
    Control.Monad.Trans.RWS.Strict
    Control.Monad.Trans.Select
    Control.Monad.Trans.State
    Control.Monad.Trans.State.Lazy
    Control.Monad.Trans.State.Strict
    Control.Monad.Trans.Writer
    Control.Monad.Trans.Writer.CPS
    Control.Monad.Trans.Writer.Lazy
    Control.Monad.Trans.Writer.Strict
    Data.Functor.Constant
    Data.Functor.Reverse