enumset: Sets of enumeration values represented by machine words

[ bsd3, data, foreign, library ] [ Propose Tags ]

With this package you can create a type safe interface to flag sets. It is intended for interfacing to C libraries via FFI, where Word8, Word16, or Word32 types are commonly used to store bit vectors. E.g. the type EnumSet Word16 Ordering represents a flag set stored in a Word16 that supports the flags LT, EQ, GT.

This package is similar to the bitset package and the Data.Edison.Coll.EnumSet module in the edison package, however our implementation allows you to choose the embedding type and thus the maximum size of the set.

See also data-flags and Data.EnumSet in enummapset.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.0, 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.0.4.1, 0.0.5, 0.1
Dependencies base (>=4 && <5), data-accessor (>=0.2.1 && <0.3), semigroups (>=0.1 && <1.0), storable-record (>=0.0.1 && <0.1) [details]
License BSD-3-Clause
Author Henning Thielemann <haskell@henning-thielemann.de>
Maintainer Henning Thielemann <haskell@henning-thielemann.de>
Category Data, Foreign
Source repo this: darcs get http://code.haskell.org/~thielema/enumset/ --tag 0.1
head: darcs get http://code.haskell.org/~thielema/enumset/
Uploaded by HenningThielemann at 2021-07-26T16:46:44Z
Distributions LTSHaskell:0.1, NixOS:0.1, Stackage:0.1
Reverse Dependencies 11 direct, 20 indirect [details]
Downloads 7637 total (31 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2021-07-27 [all 1 reports]