The total-maps package

[ Tags: containers, data, data-structures, library, mit ] [ Propose Tags ]

Total maps are maps that contain a value for every key. This library provides various flavors of total maps.

Dense maps store values for all keys. Sparse maps store a default value and the values which differ from the default. Sparse maps trade the lack of Traversable for a very fast Foldable instance (if the data is really sparse).

Bounded maps require the key type to be enumerable and bounded (have a finite number of values) for most of their functionality. Subset maps do not require the key to be bounded, instead they are parametized by a finite set of valid keys. The key subset is retrieved with help of the excellent reflection library.

The Data.Total.Array modules provide total map implementations based on vectors. It should usually be faster then Maps, unless you need to adjust single elements.

Maps in this library provide most of their functions in typeclasses and so the modules are designed to be imported unqualified.

Properties

Versions 1.0.0.0, 1.0.0.1, 1.0.0.2, 1.0.0.3
Change log CHANGELOG.md
Dependencies adjunctions (==4.*), base (==4.*), base-compat (>=0.6), bytes (>=0.2 && <1), containers (>=0.3 && <1), distributive (==0.*), keys (==3.*), linear (>=1.1 && <2), reflection (<3), semigroups (==0.*), vector (>=0.10 && <1) [details]
License MIT
Copyright 2015 Paweł Nowak
Author Paweł Nowak
Maintainer pawel834@gmail.com
Category Data, Data Structures, Containers
Source repository head: git clone https://github.com/pawel-n/total-maps/
Uploaded Thu Nov 19 04:03:04 UTC 2015 by pawel834
Distributions NixOS:1.0.0.3
Downloads 569 total (72 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-11-30 [all 2 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees