packages feed

ghc-typelits-presburger-0.6.0.0: ghc-typelits-presburger.cabal

cabal-version: 1.12

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

name:           ghc-typelits-presburger
version:        0.6.0.0
synopsis:       Presburger Arithmetic Solver for GHC Type-level natural numbers.
description:    @ghc-typelits-presburger@ augments GHC type-system with Presburger
                Arithmetic Solver for Type-level natural numbers.
                This plugin only work with GHC builtin operations.
                To work with those of @singletons@ package, use @ghc-typelits-meta@ and/or @ghc-typelits-presburger@ instead.
                .
                Since 0.3.0.0, integration with <https://hackage.haskell.org/package/singletons singletons> package moves to <https://hackage.haskell.org/package/singletons-presburger singletons-presburger>.
                .
                You can use by adding this package to @build-depends@ and add the following pragma
                to the head of .hs files:
                .
                .
                > OPTIONS_GHC -fplugin GHC.TypeLits.Presburger
category:       Math, Type System
homepage:       https://github.com/konn/ghc-typelits-presburger#readme
bug-reports:    https://github.com/konn/ghc-typelits-presburger/issues
author:         Hiromi ISHII
maintainer:     konn.jinro _at_ gmail.com
copyright:      2015 (c) Hiromi ISHII
license:        BSD3
license-file:   LICENSE
tested-with:    GHC==8.6.5 GHC==8.8.4 GHC==8.10.4 GHC==9.0.1
build-type:     Simple

source-repository head
  type: git
  location: https://github.com/konn/ghc-typelits-presburger

flag examples
  description: Builds example
  manual: False
  default: False

library
  exposed-modules:
      GHC.TypeLits.Presburger.Types
      GHC.TypeLits.Presburger
      GHC.TypeLits.Presburger.Compat
  other-modules:
      Data.Integer.SAT
      Paths_ghc_typelits_presburger
  hs-source-dirs:
      src
  ghc-options: -Wall -Wno-dodgy-imports
  build-depends:
      base >=4.7 && <5
    , containers
    , ghc <9.1
    , ghc-tcplugins-extra >=0.2 && <0.5
    , mtl
    , pretty
    , reflection
    , syb
    , transformers
  default-language: Haskell2010

executable simple-arith-core
  main-is: simple-arith-core.hs
  other-modules:
      Paths_ghc_typelits_presburger
  hs-source-dirs:
      examples
  ghc-options: -Wall -Wno-dodgy-imports -Wno-unused-imports
  build-depends:
      base
    , equational-reasoning
    , ghc-typelits-presburger
  if !(flag(examples))
    buildable: False
  default-language: Haskell2010

test-suite test-typeltis-presburger
  type: exitcode-stdio-1.0
  main-is: test.hs
  other-modules:
      ErrorsNoPlugin
      ErrorsWithPlugin
      GHC.TypeLits.PresburgerSpec
      Shared
      Paths_ghc_typelits_presburger
  hs-source-dirs:
      test
  ghc-options: -Wall -Wno-dodgy-imports
  build-tool-depends:
      tasty-discover:tasty-discover
  build-depends:
      base
    , equational-reasoning
    , ghc-typelits-presburger
    , tasty
    , tasty-discover
    , tasty-expected-failure
    , tasty-hunit
    , text
  default-language: Haskell2010