File: universe-base.cabal

package info (click to toggle)
haskell-universe-base 1.1.3.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 104 kB
  • sloc: haskell: 434; makefile: 3
file content (121 lines) | stat: -rw-r--r-- 2,953 bytes parent folder | download
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
name:               universe-base
version:            1.1.3.1
synopsis:           A class for finite and recursively enumerable types.
description:
  A class for finite and recursively enumerable types and some helper functions for enumerating them.
  .
  @
  class Universe a where universe :: [a]
  class Universe a => Finite a where universeF :: [a]; universeF = universe
  @
  .
  This is slim package definiting only the type-classes and instances
  for types in GHC boot libraries.
  For more instances check @universe-instances-*@ packages.

homepage:           https://github.com/dmwit/universe
license:            BSD3
license-file:       LICENSE
author:             Daniel Wagner
maintainer:         me@dmwit.com
copyright:          2014 Daniel Wagner
category:           Data
build-type:         Simple
cabal-version:      >=1.10
extra-source-files: changelog
tested-with:
  GHC ==7.0.4
   || ==7.4.2
   || ==7.6.3
   || ==7.8.4
   || ==7.10.3
   || ==8.0.2
   || ==8.2.2
   || ==8.4.4
   || ==8.6.5
   || ==8.8.4
   || ==8.10.7
   || ==9.0.2
   || ==9.2.7
   || ==9.4.4
   || ==9.6.1

source-repository head
  type:     git
  location: https://github.com/dmwit/universe

source-repository this
  type:     git
  location: https://github.com/dmwit/universe
  tag:      instances-extended-1.1

library
  default-language: Haskell2010
  hs-source-dirs:   src
  exposed-modules:
    Data.Universe.Class
    Data.Universe.Helpers

  if impl(ghc >=7.2)
    exposed-modules: Data.Universe.Generic

    if impl(ghc <7.6)
      build-depends: ghc-prim

  other-extensions:
    BangPatterns
    CPP
    GADTs
    ScopedTypeVariables
    TypeFamilies

  build-depends:
      base          >=4.3     && <4.19
    , containers    >=0.4.0.0 && <0.7
    , tagged        >=0.8.6.1 && <0.9
    , transformers  >=0.3.0.0 && <0.7

  if impl(ghc >=7.10.3)
    build-depends: transformers >=0.4.2.0

  if !impl(ghc >=7.10.3)
    build-depends: transformers-compat >=0.6.1 && <0.8

  if !impl(ghc >=7.10)
    build-depends:
        nats  >=1.1.2 && <1.2
      , void  >=0.7.3 && <0.8

  if !impl(ghc >=8.0)
    build-depends: semigroups >=0.18.5 && <0.21

  if impl(ghc >=7.4)
    cpp-options:      -DDEFAULT_SIGNATURES
    other-extensions: DefaultSignatures

  if !impl(ghc >= 9.2)
    if impl(ghc >= 9.0)
      build-depends: ghc-prim
    else
      build-depends: OneTuple >=0.3 && <0.5

  if impl(ghc >= 9.0)
    -- these flags may abort compilation with GHC-8.10
    -- https://gitlab.haskell.org/ghc/ghc/-/merge_requests/3295
    ghc-options: -Winferred-safe-imports -Wmissing-safe-haskell-mode

test-suite tests
  default-language: Haskell2010
  other-extensions: ScopedTypeVariables
  type:             exitcode-stdio-1.0
  main-is:          Tests.hs
  hs-source-dirs:   tests
  ghc-options:      -Wall
  build-depends:
      base
    , containers
    , QuickCheck     >=2.8.2 && <2.15
    , universe-base

  if !impl(ghc >=7.10)
    build-depends: nats