~fgaz/bimap-many

ref: 9daa15b22fecb46134a82155ed83006ecb8eacab bimap-many/bimap-many.cabal -rw-r--r-- 2.4 KiB
9daa15b2Francesco Gazzetta Add description, readme, and source-repository 8 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
cabal-version:      3.0
name:               bimap-many
version:            0.1.0.0
synopsis:           Bidirectional many-to-many mapping between two key types
description:
    A data structure representing a bidirectional mapping between two key types.
    Each key in the bimap is associated with at least one of the opposite type.
    Finally, each pair of keys is associated with a value type.
homepage:           https://sr.ht/~fgaz/bimap-many
license:            BSD-3-Clause
license-file:       LICENSE
author:             Francesco Gazzetta
maintainer:         Francesco Gazzetta <fgaz@fgaz.me>
copyright:          2021 Francesco Gazzetta
category:           Data
build-type:         Simple
extra-doc-files:    CHANGELOG.md README.md
-- extra-source-files:
tested-with: GHC ==
  { 8.8.4
  , 8.10.4
  , 9.0.1
  }

source-repository head
  type:     git
  location: https://git.sr.ht/~fgaz/bimap-many


common common
    ghc-options:
        -Wall
        -Wunused-packages
        -Wmissing-home-modules
        -Wredundant-constraints
        -Wincomplete-uni-patterns
        -Wincomplete-record-updates
    default-language: Haskell2010

library bimap-indef
    import:          common
    signatures:      Data.Map.Signature
    exposed-modules: Data.BimapMany
    build-depends:
        , base       ^>=4.13.0.0
                  || ^>=4.14.1.0
                  || ^>=4.15.0.0
        , containers ^>=0.6.2
        , deepseq    ^>=1.4.4
    hs-source-dirs:  src
    other-extensions:
        DeriveTraversable
        DeriveGeneric

library
    import:             common
    build-depends:      containers, bimap-indef
    reexported-modules: Data.BimapMany.Strict
    mixins:
        , bimap-indef (Data.BimapMany as Data.BimapMany.Lazy)
             requires (Data.Map.Signature as Data.Map.Lazy)
        , bimap-indef (Data.BimapMany as Data.BimapMany.Strict)
             requires (Data.Map.Signature as Data.Map.Strict)

test-suite bimap-many-test
    import:           common
    type:             exitcode-stdio-1.0
    hs-source-dirs:   test
    main-is:          Main.hs
    -- other-modules:
    build-depends:
        , base
        , bimap-many
        , containers
        , tasty            ^>=1.4.2
        , tasty-quickcheck ^>=0.10.1.2
    ghc-options:      -Wno-orphans
    -- https://gitlab.haskell.org/ghc/ghc/-/issues/18563
    ghc-options:      -Wno-unused-packages
    other-extensions: TypeApplications