summaryrefslogtreecommitdiff
path: root/TrieMap.cabal
blob: 5312debaec181ca7236003e1b8d8de1dd718ee61 (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
name:		TrieMap
version:	0.0.1.1
license:	BSD3
license-file:	LICENSE
maintainer:	wasserman.louis@gmail.com
category:	Data Structures
synopsis:	An implementation of generalized tries with sophisticated map type inference.
description:	Generalized trie implementation that automatically infers map types.  Keys must implement the class 'TrieMap.Algebraic.Algebraic', which 
			declares that they are isomorphic to an /algebraic type/,
			defined recursively as follows:
 .
 * () and 'Int' are algebraic types.
 .
 * If @'Ord' a@, then @'Ordered' a@ is an algebraic type.
 .
 * If @a,b@ are algebraic types, then so are @(a, b)@ and @Either a b@.
 .
 * If @a@ is algebraic, so is @[a]@.
 .
 This package exports almost the entire collection of methods available in Data.Map, and several new methods as well.  In addition, each method will automatically infer the correct map type.
 
build-type:	Simple
build-depends:
	base >= 4 && <= 5, containers == 0.2.0.1
exposed-modules:
	TrieMap
	TrieMap.Algebraic
other-modules:
	TrieMap.TrieAlgebraic
	TrieMap.Applicative
	TrieMap.Reflection
	TrieMap.RadixTrie
	TrieMap.MapTypes