packages feed

constraint-tuples-0.1: constraint-tuples.cabal

cabal-version:       >=1.10
name:                constraint-tuples
version:             0.1
synopsis:            Partially applicable constraint tuples
description:         This library provides classes that emulate the behavior of
                     GHC's constraint tuple syntax. Unlike GHC's built-in
                     constraint tuples, the classes in this library can be
                     partially applied.
                     .
                     This library exposes two different modules that are
                     semantically identical, but compile to slightly different
                     Core:
                     .
                     * "Data.Tuple.Constraint": A @CTupleN@ class compiles to
                       a dictionary data type with @N@ fields.
                     .
                     * "Data.Tuple.Constraint.ClassNewtype": A @CTupleN@ class
                       compiles to a newtype around the corresponding built-in
                       constraint tuple type with @N@ arguments.
homepage:            https://github.com/RyanGlScott/constraint-tuples
bug-reports:         https://github.com/RyanGlScott/constraint-tuples/issues
license:             BSD3
license-file:        LICENSE
author:              Ryan Scott
maintainer:          ryan.gl.scott@gmail.com
stability:           Stable
copyright:           (C) 2018-2019 Ryan Scott
category:            Data
build-type:          Simple
extra-source-files:  CHANGELOG.md, README.md, GenCTuples.sh
tested-with:         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

source-repository head
  type:                git
  location:            https://github.com/RyanGlScott/constraint-tuples

flag generator-script
  description:         Build the script which generates the source code for
                       this library.
  default:             False

library
  exposed-modules:     Data.Tuple.Constraint
                       Data.Tuple.Constraint.ClassNewtype
  build-depends:       base >= 4.6 && < 5
  hs-source-dirs:      src
  default-language:    Haskell2010
  ghc-options:         -Wall

executable generator-script
  if !flag(generator-script)
    buildable:         False

  main-is:             GeneratorScript.hs
  build-depends:       base                  >= 4.6  && < 5
                     , base-compat-batteries >= 0.10 && < 0.12
                     , optparse-applicative  >= 0.13 && < 0.16
  hs-source-dirs:      exe
  default-language:    Haskell2010
  ghc-options:         -Wall -threaded -rtsopts