homepage: ''
changelog-type: ''
hash: 3f99135d92c5b66a9a47e4ad22ce7c05d3c62c621905e71f7aa0d14554de8ea6
test-bench-deps: {}
maintainer: haskell@henning-thielemann.de
synopsis: Wrapper that makes any Enum type Storable
changelog: ''
basic-deps:
  base: ! '>=3 && <5'
  prelude-compat: ! '>=0.0 && <0.0.1'
all-versions:
- '0.0'
author: Henning Thielemann
latest: '0.0'
description-type: haddock
description: |-
  In foreign function interfaces you will often want to use enumeration types
  but defining 'Storable' instances is cumbersome.
  This package provides the type @Enum.Storable.T w e@,
  where e.g. @Enum.Storable.T Word8 Ordering@
  means that values of type 'Ordering' are stored in a 'Word8'.
  The 'Storable' methods store the numeric values of the enumeration elements
  as obtained by 'fromEnum'.
  E.g. 'EQ' is stored as @1@.
  The type itself stores a Haskell enumeration element,
  such that GHC can apply all of its optimizations for enumerations.
  It is not checked, whether the storage type @w@ is large enough
  to hold all admissible numeric values of @e@.
  It is also not checked, whether the storage type @w@ supports negative values
  whenever the enumeration of @e@ contains ones.

  See the @bool8@ package for the special case of a 'Bool' stored in a 'Word8'.
license-name: BSD-3-Clause

Update from Hackage at 2019-10-08T16:01:27Z
Update from Hackage at 2019-10-08T16:01:27Z
