cabal-version:        2.0
name:                 one-liner
version:              2.0
synopsis:             Constraint-based generics
description:          Write short and concise generic instances of type classes.
                      one-liner is particularly useful for writing default
                      implementations of type class methods.
homepage:             https://github.com/sjoerdvisscher/one-liner
bug-reports:          https://github.com/sjoerdvisscher/one-liner/issues
license:              BSD3
license-file:         LICENSE
author:               Sjoerd Visscher, Xia Li-yao
maintainer:           sjoerd@w3future.com
category:             Generics
build-type:           Simple

extra-source-files:
  examples/*.hs
  CHANGELOG

library
  hs-source-dirs:     src
  default-language:   Haskell2010

  exposed-modules:
    Generics.OneLiner
    Generics.OneLiner.Binary
    Generics.OneLiner.Classes
    Generics.OneLiner.Internal
    Generics.OneLiner.Internal.Unary

  build-depends:
      base          >= 4.9 && < 5
    , transformers  >= 0.5 && < 0.6
    , contravariant >= 1.4 && < 1.6
    , ghc-prim      >= 0.5 && < 1.0
    , bifunctors    >= 5.4 && < 6.0
    , profunctors   >= 5.2 && < 6.0
    , tagged        >= 0.8 && < 0.9
    , linear-base   >= 0.1 && < 1.0

source-repository head
  type:     git
  location: git://github.com/sjoerdvisscher/one-liner.git

test-suite unittests
  hs-source-dirs:  test
  main-is:         unittests.hs
  default-language:   Haskell2010

  build-depends:
      base
    , contravariant
    , HUnit
    , one-liner

  type: exitcode-stdio-1.0
