packages feed

constraints-deriving-1.0.1.0: constraints-deriving.cabal

cabal-version: 1.24

-- This file has been generated from package.yaml by hpack version 0.31.0.
--
-- see: https://github.com/sol/hpack
--
-- hash: 6c8f5cef290d153bdcf309c40e67aad5a37963821df9a06e92c4a260a1c79adf

name:           constraints-deriving
version:        1.0.1.0
synopsis:       Manipulating constraints and deriving class instances programmatically.
description:    The library provides a plugin to derive class instances programmatically. Please see the README on GitHub at <https://github.com/achirkin/constraints-deriving#readme>
category:       Constraints
homepage:       https://github.com/achirkin/constraints-deriving#readme
bug-reports:    https://github.com/achirkin/constraints-deriving/issues
author:         Artem Chirkin
maintainer:     achirkin@users.noreply.github.com
copyright:      Copyright: (c) 2019 Artem Chirkin
license:        BSD3
license-file:   LICENSE
build-type:     Custom
extra-source-files:
    README.md
    test/Spec/DeriveAll01.hs
    test/Spec/DeriveAll02.hs
    test/Spec/DeriveAll03.hs
    test/Spec/DeriveAll04.hs
    test/Spec/DeriveAll05.hs
    test/Spec/DeriveAll06.hs
    test/Spec/ToInstance01.hs
    test/out/DeriveAll01.stderr
    test/out/DeriveAll02.stderr
    test/out/DeriveAll03.stderr
    test/out/DeriveAll04.stderr
    test/out/DeriveAll05.stderr
    test/out/DeriveAll06.stderr
    test/out/ToInstance01.stderr
    test/out/DeriveAll01.stdout
    test/out/DeriveAll02.stdout
    test/out/DeriveAll03.stdout
    test/out/DeriveAll04.stdout
    test/out/DeriveAll05.stdout
    test/out/DeriveAll06.stdout
    test/out/ToInstance01.stdout

source-repository head
  type: git
  location: https://github.com/achirkin/constraints-deriving

custom-setup
  setup-depends:
      Cabal
    , base

flag constraints
  description: Use vanilla constraints package as a dependency instead of the manual minimalistic definitions copied from there.
  manual: True
  default: False

flag debug
  description: Show debug trace info (used only for library develpoment)
  manual: True
  default: False

flag examples
  description: Whether to build examples
  manual: True
  default: False

library
  exposed-modules:
      Data.Constraint.Bare
      Data.Constraint.Deriving
      Data.Constraint.Deriving.DeriveAll
      Data.Constraint.Deriving.ToInstance
  other-modules:
      Data.Constraint.Deriving.CorePluginM
  hs-source-dirs:
      src
  ghc-options: -Wall
  build-depends:
      base >=4.9 && <5
    , ghc >=8.0.1
  if flag(debug)
    cpp-options: -DPLUGIN_DEBUG
  if flag(constraints)
    build-depends:
        constraints >=0.6
  else
    exposed-modules:
        Data.Constraint
        Data.Constraint.Unsafe
    hs-source-dirs:
        src-constraints
  default-language: Haskell2010

executable deriving-example
  main-is: Main.hs
  other-modules:
      Lib.BackendFamily
      Lib.VecBackend
      Lib.Vector
  hs-source-dirs:
      example
  ghc-options: -Wall
  build-depends:
      base >=4.9 && <5
    , constraints-deriving
  if flag(examples)
    ghc-options: -dcore-lint
  else
    buildable: False
  default-language: Haskell2010

test-suite functional-tests
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  hs-source-dirs:
      test
  ghc-options: -Wall
  build-depends:
      base >=4.9 && <5
    , bytestring
    , constraints-deriving
    , filepath
    , ghc
    , ghc-paths
    , path
    , path-io
  default-language: Haskell2010