packages feed

list-tries-0.2: list-tries.cabal

Cabal-Version: >= 1.6

Name:        list-tries
Version:     0.2
Homepage:    http://iki.fi/matti.niemenmaa/list-tries/
Synopsis:    Tries and Patricia tries: finite sets and maps for list keys
Category:    Data, Data Structures
Stability:   provisional
Description:
   This library provides implementations of finite sets and maps for list keys
   using tries, both simple and of the Patricia kind. In most (or all? sorry,
   haven't benchmarked yet) cases, the Patricia tries will have better
   performance, so use them unless you have reasons not to.
   .
   The data types are parametrized over the map type they use internally to
   store the child nodes: this allows extending them to support different kinds
   of key types or increasing efficiency. Child maps are required to be
   instances of the Map class in Data.ListTrie.Base.Map. Some operations
   additionally require an OrdMap instance.
   .
   The Eq, Ord, and Enum modules contain ready structures for key types which
   are instances of those classes, using lists of pairs, Data.Map, and
   Data.IntMap respectively.

Author:       Matti Niemenmaa
Maintainer:   Matti Niemenmaa <matti.niemenmaa+list-tries@iki.fi>
License:      BSD3
License-File: LICENSE.txt

Build-Type: Simple

Extra-Source-Files: CHANGELOG.txt
                    CREDITS.txt
                    headers/*.h
                    tests/README.txt
                    tests/*.hs
                    tests/Tests/*.hs

Flag containers03
   Description: Assume that containers has a version number of at least 0.3. If
                false, some functionality cannot be implemented and is changed
                to call 'error' instead. Defaults to True, as >= 0.3 is shipped
                with GHC 6.12.
   Default: True

Library
   Extensions: CPP

   if flag(containers03)
      Build-Depends: base       >= 3   && < 4.3
                   , containers >= 0.3 && < 0.4
                   , dlist      >= 0.4 && < 0.6
                   , binary     >= 0.5 && < 0.6
   else
      Build-Depends: base       >= 3   && < 4.3
                   , containers >= 0.2 && < 0.3
                   , dlist      >= 0.4 && < 0.6
                   , binary     >= 0.5 && < 0.6

   Exposed-Modules: Data.ListTrie.Base.Map
                    Data.ListTrie.Map
                    Data.ListTrie.Map.Eq
                    Data.ListTrie.Map.Ord
                    Data.ListTrie.Map.Enum
                    Data.ListTrie.Set
                    Data.ListTrie.Set.Eq
                    Data.ListTrie.Set.Ord
                    Data.ListTrie.Set.Enum
                    Data.ListTrie.Patricia.Map
                    Data.ListTrie.Patricia.Map.Eq
                    Data.ListTrie.Patricia.Map.Ord
                    Data.ListTrie.Patricia.Map.Enum
                    Data.ListTrie.Patricia.Set
                    Data.ListTrie.Patricia.Set.Eq
                    Data.ListTrie.Patricia.Set.Ord
                    Data.ListTrie.Patricia.Set.Enum
   Other-Modules:   Data.ListTrie.Base
                    Data.ListTrie.Base.Classes
                    Data.ListTrie.Base.Map.Internal
                    Data.ListTrie.Patricia.Base
                    Data.ListTrie.Util

   Include-Dirs: headers