Portability | non-portable |
---|---|
Stability | experimental |
Maintainer | generics@haskell.org |
Summary: Generic function that enumerates the values of a datatype.
enum
generates a list of the values of a datatypes. It will produce all
values of all supported datatypes (with only a few exceptions [1]). For
datatypes that have an infinite enumeration (e.g. Integer
and [a]
),
enum
produces an infinite list.
A number of the techniques used to write enum
came from a talk by Mark
Jones at the 2008 Advanced Functional Programming Summer School. The authors
gratefully acknowledge his contribution.
Documentation
The type of a generic function that takes no arguments and returns a list of some type.
enum :: Rep Enum a => [a]Source
Enumerate the values of a datatype. If the number of values is infinite,
the result will be an infinite list. The remaining functions are derived from
enum
.