name:           enummapset
version:        0.6.0.3
synopsis:       IntMap and IntSet with Enum keys/elements.
description:    This package contains simple wrappers around 'Data.IntMap' and
                'Data.IntSet' with 'Enum' keys and elements respectively.
                Especially useful for 'Int's wrapped with `newtype`.
homepage:       https://github.com/Mikolaj/enummapset
bug-reports:    https://github.com/Mikolaj/enummapset/issues
license:        BSD3
license-file:   LICENSE
tested-with:    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.3, GHC==8.10.1
author:         Michal Terepeta
maintainer:     Mikolaj Konarski <mikolaj.konarski@funktory.com>
category:       Data Structures
build-type:     Simple

cabal-version:  >=1.10

extra-source-files: README.md

source-repository head
  type:         git
  location:     https://github.com/Mikolaj/enummapset.git

flag debug
  description:  Debug build (more warnings, etc.)
  default:      False

Library
  exposed-modules:
    Data.EnumMap
    Data.EnumMap.Lazy
    Data.EnumMap.Strict
    Data.EnumSet

  other-modules:
    Data.EnumMap.Base

  build-depends:
    base >= 4.6 && < 5,
    containers >= 0.5.2 && < 0.7,
    semigroups >=0.1 && <1.0,
    deepseq

  if flag(debug)
    ghc-options: -Wall

  default-language: Haskell2010

  other-extensions: CPP, BangPatterns,
                    DataKinds, FlexibleContexts, FlexibleInstances,
                    KindSignatures, TypeFamilies, UndecidableInstances

Test-suite intset-properties
  hs-source-dirs: tests, .
  main-is: intset-properties.hs
  other-modules:
      Data.EnumSet
      IntSetValidity
  type: exitcode-stdio-1.0
  cpp-options: -DTESTING

  build-depends: base >= 4.6 && < 5, array >= 0.4.0.0, deepseq >= 1.2 && < 1.5, ghc-prim
  ghc-options: -O2
  default-language: Haskell2010
  other-extensions: CPP, BangPatterns,
                    DataKinds, FlexibleContexts, FlexibleInstances,
                    KindSignatures, TypeFamilies, UndecidableInstances

  build-depends:
      containers,
      semigroups,
      HUnit,
      QuickCheck >= 2.7.1,
      test-framework,
      test-framework-hunit,
      test-framework-quickcheck2