packages feed

ghc-typelits-extra-0.1.2: ghc-typelits-extra.cabal

name:                ghc-typelits-extra
version:             0.1.2
synopsis:            Additional type-level operations on GHC.TypeLits.Nat
description:
  Additional type-level operations on @GHC.TypeLits.Nat@:
  .
  * @GHC.TypeLits.Extra.GCD@: a type-level @gcd@
  .
  * @GHC.TypeLits.Extra.CLog@: type-level equivalent of
    \"@clog x y = ceiling (logBase x y)@\"
  .
  And a custom solver for the above operations defined in
  @GHC.TypeLits.Extra.Solver@ as a GHC type-checker plugin. To use the plugin,
  add the
  .
  @
  OPTIONS_GHC -fplugin GHC.TypeLits.Extra.Solver
  @
  .
  pragma to the header of your file.
homepage:            http://www.clash-lang.org/
bug-reports:         http://github.com/clash-lang/ghc-typelits-extra/issues
license:             BSD2
license-file:        LICENSE
author:              Christiaan Baaij
maintainer:          christiaan.baaij@gmail.com
copyright:           Copyright © 2015-2016 University of Twente
category:            Type System
build-type:          Simple
extra-source-files:  README.md
                     CHANGELOG.md
cabal-version:       >=1.10

source-repository head
  type: git
  location: https://github.com/clash-lang/ghc-typelits-extra.git

flag deverror
  description:
    Enables `-Werror` for development mode and TravisCI
  default: False
  manual: True

library
  exposed-modules:     GHC.TypeLits.Extra,
                       GHC.TypeLits.Extra.Solver
  other-modules:       GHC.TypeLits.Extra.Solver.Unify
                       GHC.TypeLits.Extra.Solver.Operations
  build-depends:       base                >= 4.8  && <5,
                       ghc                 >= 7.10 && <8.2,
                       ghc-tcplugins-extra >= 0.2,
                       transformers        >= 0.4.2.0 && < 0.6
  hs-source-dirs:      src
  default-language:    Haskell2010
  other-extensions:    CPP
                       DataKinds
                       TupleSections
                       TypeFamilies
  if flag(deverror)
    ghc-options:         -Wall -Werror
  else
    ghc-options:         -Wall

test-suite test-ghc-typelits-extra
  type:                exitcode-stdio-1.0
  main-is:             Main.hs
  Other-Modules:       ErrorTests
  build-depends:       base                      >= 4.8 && <5,
                       ghc-typelits-extra        >= 0.1.1,
                       ghc-typelits-natnormalise >= 0.4.1,
                       tasty                     >= 0.10,
                       tasty-hunit               >= 0.9
  hs-source-dirs:      tests
  default-language:    Haskell2010
  other-extensions:    CPP
                       DataKinds
                       TypeOperators
                       ScopedTypeVariables
  if flag(deverror)
    ghc-options:       -O0 -dcore-lint