packages feed

mtl-compat-0.2.2: mtl-compat.cabal

name:                mtl-compat
version:             0.2.2
synopsis:            Backported Control.Monad.Except module from mtl
description:         This package backports the "Control.Monad.Except" module from
                     @mtl@ (if using @mtl-2.2.0.1@ or earlier), which reexports the
                     @ExceptT@ monad transformer and the @MonadError@ class.
                     .
                     This package should only be used if there is a need to use the
                     @Control.Monad.Except@ module specifically. If you just want
                     the @mtl@ class instances for @ExceptT@, use
                     @transformers-compat@ instead, since @mtl-compat@ does nothing
                     but reexport the instances from that package.
                     .
                     Note that unlike how @mtl-2.2@ or later works, the
                     "Control.Monad.Except" module defined in this package exports
                     all of @ExceptT@'s monad class instances. Therefore, you may
                     have to declare @import Control.Monad.Except ()@ at the top of
                     your file to get all of the @ExceptT@ instances in scope.
homepage:            https://github.com/haskell-compat/mtl-compat
bug-reports:         https://github.com/haskell-compat/mtl-compat/issues
stability:           Provisional
license:             BSD3
license-file:        LICENSE
author:              Ryan Scott
maintainer:          Ryan Scott <ryan.gl.scott@gmail.com>
copyright:           (C) 2015-2017 Ryan Scott
category:            Compatibility
build-type:          Simple
extra-source-files:  CHANGELOG.md, README.md
tested-with:         GHC == 7.0.4
                   , GHC == 7.2.2
                   , GHC == 7.4.2
                   , GHC == 7.6.3
                   , GHC == 7.8.4
                   , GHC == 7.10.3
                   , GHC == 8.0.2
                   , GHC == 8.2.2
                   , GHC == 8.4.4
                   , GHC == 8.6.5
                   , GHC == 8.8.1
cabal-version:       >=1.8

source-repository head
  type:                git
  location:            https://github.com/haskell-compat/mtl-compat

flag two-point-one
  default:             False
  manual:              False
  description:         Use mtl-2.1.3.1 or earlier with transformers-compat. This
                       will cause this package to export the Control.Monad.Except module.

flag two-point-two
  default:             False
  manual:              False
  description:         Use mtl-2.2.0.1 with transformers. This will cause this
                       package to export the Control.Monad.Except module.

library
  build-depends:       base                >= 4.3     && < 5

  if flag(two-point-one) || flag(two-point-two)
    exposed-modules:   Control.Monad.Except
    hs-source-dirs:    src

  if flag(two-point-two)
    build-depends:   mtl                   >= 2.2.0.1 &&  < 2.2.1
                   , transformers          >= 0.4.1   &&  < 0.6
  else
    build-depends:   mtl                    < 2.2.0.1 || >= 2.2.1

  if flag(two-point-one)
    build-depends:     mtl                 >= 2.0.1   &&  < 2.2
                     , transformers-compat >= 0.4     &&  < 0.7
  else
    build-depends:     mtl                 >= 2.2

  ghc-options:         -Wall