packages feed

ban-instance-0.1.0.1: ban-instance.cabal

name:           ban-instance
version:        0.1.0.1
synopsis:       For when a type should never be an instance of a class
description:
  <<https://raw.githubusercontent.com/qfpl/assets/master/data61-transparent-bg.png>>
  .
  Banning an instance allows the programmer to actively declare that
  an instance should never be defined, and provide a reason why:
  .
  @
  data Foo = -- ...

  -- Declare that Foo should never have a ToJSON instance
  $(banInstance [t|ToJSON Foo|] "why ToJSON Foo should never be defined")
  @

category:       Haskell
homepage:       https://github.com/qfpl/ban-instance#readme
bug-reports:    https://github.com/qfpl/ban-instance/issues
author:         Jack Kelly, Alex Mason
maintainer:     jack.kelly@data61.csiro.au
copyright:      Copyright (C) 2017 Data61
license:        BSD3
license-file:   LICENSE
build-type:     Simple
cabal-version:  >= 1.10
tested-with: GHC == 8.0.2
              || == 8.2.2
              || == 8.4.4
              || == 8.6.5
              || == 8.8.1

extra-source-files: ChangeLog.md
                    README.md

source-repository head
  type: git
  location: https://github.com/qfpl/ban-instance

library
  hs-source-dirs: src
  ghc-options: -Wall
  build-depends: base >= 4.7 && < 4.14
               , template-haskell >= 2.11 && < 2.16
  exposed-modules: Language.Haskell.Instance.Ban
  default-language: Haskell2010

test-suite ban-instance-test
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  hs-source-dirs: test
  ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
  build-depends: base >= 4.7 && < 4.14
               , ban-instance
  default-language: Haskell2010