Copyright | (C) 2015-2017 Ryan Scott |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Ryan Scott |
Portability | Template Haskell |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Exports functions to mechanically derive Bounded
instances.
Synopsis
- deriveBounded :: Name -> Q [Dec]
- makeMinBound :: Name -> Q Exp
- makeMaxBound :: Name -> Q Exp
Bounded
deriveBounded :: Name -> Q [Dec] Source #
Generates a Bounded
instance declaration for the given data type or data
family instance.
deriveBounded
limitations
Be aware of the following potential gotchas:
- Type variables of kind
*
are assumed to haveBounded
constraints. If this is not desirable, usemakeMinBound
or one of its cousins.