-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathparameterized-utils.cabal
151 lines (136 loc) · 4.56 KB
/
parameterized-utils.cabal
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
Cabal-version: 2.2
Name: parameterized-utils
Version: 2.1.9.0.99
Author: Galois Inc.
Maintainer: [email protected], [email protected]
stability: stable
Build-type: Simple
Copyright: ©2016-2022 Galois, Inc.
License: BSD-3-Clause
License-file: LICENSE
category: Data Structures, Dependent Types
Synopsis: Classes and data structures for working with data-kind indexed types
Description:
This package contains collection classes and type representations
used for working with values that have a single parameter. It's
intended for things like expression libraries where one wishes
to leverage the Haskell type-checker to improve type-safety by encoding
the object language type system into data kinds.
extra-source-files: Changelog.md
homepage: https://github.com/GaloisInc/parameterized-utils
bug-reports: https://github.com/GaloisInc/parameterized-utils/issues
tested-with: GHC==8.6.5, GHC==8.8.4, GHC==8.10.7, GHC==9.0.2, GHC==9.2.2, GHC==9.4.5, GHC==9.6.1, GHC==9.8.1, GHC==9.10.1
-- Many (but not all, sadly) uses of unsafe operations are
-- controlled by this compile flag. When this flag is set
-- to False, alternate implementations are used to avoid
-- Unsafe.Coerce and Data.Coerce. These alternate implementations
-- impose a significant performance hit.
flag unsafe-operations
Description: Use unsafe operations (e.g. coercions) to improve performance
Default: True
source-repository head
type: git
location: https://github.com/GaloisInc/parameterized-utils
common bldflags
ghc-options: -Wall
-Wcompat
-Wpartial-fields
-Wincomplete-uni-patterns
-Werror=incomplete-patterns
-Werror=missing-methods
-Werror=overlapping-patterns
-Wno-trustworthy-safe
-fhide-source-paths
default-language: Haskell2010
library
import: bldflags
build-depends: base >= 4.12 && < 5
, base-orphans >=0.8.2 && <0.10
, th-abstraction >=0.4.2 && <0.8
, constraints >=0.10 && <0.15
, containers
, deepseq
, ghc-prim
, hashable >=1.2 && <1.6
, hashtables >=1.2 && <1.5
, indexed-traversable
, lens >=4.16 && <5.4
, mtl
, profunctors >=5.6 && < 5.7
, template-haskell
, text
, vector >=0.12 && < 0.14
hs-source-dirs: src
exposed-modules:
Data.Parameterized
Data.Parameterized.All
Data.Parameterized.Axiom
Data.Parameterized.BoolRepr
Data.Parameterized.Classes
Data.Parameterized.ClassesC
Data.Parameterized.Compose
Data.Parameterized.Context
Data.Parameterized.Context.Safe
Data.Parameterized.Context.Unsafe
Data.Parameterized.Ctx
Data.Parameterized.Ctx.Proofs
Data.Parameterized.DataKind
Data.Parameterized.DecidableEq
Data.Parameterized.Fin
Data.Parameterized.FinMap
Data.Parameterized.FinMap.Safe
Data.Parameterized.FinMap.Unsafe
Data.Parameterized.HashTable
Data.Parameterized.List
Data.Parameterized.Map
Data.Parameterized.NatRepr
Data.Parameterized.Nonce
Data.Parameterized.Nonce.Transformers
Data.Parameterized.Nonce.Unsafe
Data.Parameterized.Pair
Data.Parameterized.Peano
Data.Parameterized.Some
Data.Parameterized.SymbolRepr
Data.Parameterized.TH.GADT
Data.Parameterized.TraversableF
Data.Parameterized.TraversableFC
Data.Parameterized.TraversableFC.WithIndex
Data.Parameterized.Utils.BinTree
Data.Parameterized.Utils.Endian
Data.Parameterized.Vector
Data.Parameterized.WithRepr
other-modules:
Data.Parameterized.NatRepr.Internal
if flag(unsafe-operations)
cpp-options: -DUNSAFE_OPS
test-suite parameterizedTests
import: bldflags
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: UnitTest.hs
other-modules:
Test.Context
Test.Fin
Test.FinMap
Test.List
Test.NatRepr
Test.Some
Test.SymbolRepr
Test.TH
Test.Vector
build-depends: base
, hashable
, hashtables
, hedgehog
, indexed-traversable
, ghc-prim
, lens
, mtl
, parameterized-utils
, tasty >= 1.2 && < 1.6
, tasty-ant-xml == 1.1.*
, tasty-hunit >= 0.9 && < 0.11
, tasty-hedgehog >= 1.2
if impl(ghc >= 8.6)
build-depends:
hedgehog-classes