summaryrefslogtreecommitdiff
path: root/vault.cabal
blob: c77d1d80e6cccf771d93469e74492f858b305aee (plain)
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
Name:               vault
Version:            0.3.1.5
x-revision: 3
Synopsis:           a persistent store for values of arbitrary types
Description:
  A /vault/ is a persistent store for values of arbitrary types.
  It's like having first-class access to the storage space behind IORefs.
  .
  The data structure is analogous to a bank vault,
  where you can access different bank boxes with different keys;
  hence the name.
  .
  Also provided is a /locker/ type, representing a store for a single element.

Category:           Data
License:            BSD3
License-file:       LICENSE
Author:             Heinrich Apfelmus, Elliott Hird
Maintainer:         Heinrich Apfelmus <apfelmus at quantentunnel de>
Homepage:           https://github.com/HeinrichApfelmus/vault
Copyright:          (c) Heinrich Apfelmus 2011-2013

build-type:         Simple
cabal-version:      >= 1.10
Tested-With:         GHC == 7.6.3
                    ,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

extra-source-files:
    CHANGELOG.md
    README.md
    src/Data/Vault/IO.h
    src/Data/Vault/ST/ST.h
    src/Data/Vault/ST/backends/GHC.h

source-repository head
    type:           git
    location:       git://github.com/HeinrichApfelmus/vault.git

flag UseGHC
    description: Use GHC-specific packages and extensions.
    default:     True

Library
    hs-source-dirs:     src
    build-depends:      base >= 4.5 && < 4.19,
                        containers >= 0.4 && < 0.7,
                        unordered-containers >= 0.2.3.0 && < 0.3,
                        hashable >= 1.1.2.5 && < 1.5

    if impl(ghc < 8.0)
        build-depends:  semigroups >= 0.1 && < 1.0

    default-language:   Haskell2010
    default-extensions: CPP
    ghc-options:        -Wall -fno-warn-missing-signatures

    exposed-modules:
                        Data.Vault.Lazy,
                        Data.Vault.Strict,
                        Data.Vault.ST.Lazy,
                        Data.Vault.ST.Strict,
                        Data.Unique.Really

    if impl(ghc) && flag(UseGHC)
        CPP-options:    -DUseGHC