text-containers: Memory-efficient string-indexed container types.

[ data, data-structures, gpl, library ] [ Propose Tags ]

This package provides memory-optimised implementations of string-indexed container types.

The API is aligned with the naming convention of the containers package's API.

The following data-structures are provided:

Data.TextArray.Unboxed
Array of unboxed ShortText strings.
Data.TextSet.Unboxed
Set of unboxed ShortText strings.
Data.TextMap.Unboxed.Lazy
Associative map from unboxed ShortText keys to non-strict values.

Where unboxed ShortText refers to strings being stored in their UTF-8 representation without any alignment/padding back-to-back thereby providing good memory locality for index operations, avoiding pointer chasing, as well as increasing memory efficiency by reducing memory waste due to alignment.

Versions 0.1.0.0
Dependencies base (>=4.8.0.0 && <4.9 || >=4.9.0.0 && <4.10 || >=4.10.0.0 && <4.11 || >=4.11.0.0 && <4.12 || >=4.12.0.0 && <4.13), bytestring (>=0.10.6 && <0.11), containers (>=0.5.6.2 && <0.6 || >=0.6.0.1 && <0.7), deepseq (>=1.4.1.1 && <1.5), ghc-prim (>=0.4.0.0 && <0.5 || >=0.5.0.0 && <0.6), hashable (>=1.2.6.1 && <1.3), semigroups (>=0.18.3 && <0.19), text-short (>=0.1.1 && <0.2) [details]
License GPL-3.0-only
Copyright © 2017 Herbert Valerio Riedel
Author Herbert Valerio Riedel
Maintainer hvr@gnu.org
Revised Revision 2 made by HerbertValerioRiedel at Sun Aug 12 07:53:30 UTC 2018
Category Data, Data Structures
Bug tracker https://github.com/hvr/text-containers/issues
Source repo head: git clone https://github.com/hvr/text-containers.git
Uploaded by HerbertValerioRiedel at Fri Oct 13 12:37:16 UTC 2017
Distributions NixOS:0.1.0.0
Downloads 206 total (3 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

Modules

[Index]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees