deriving-compat-0.6.7: Backports of GHC deriving extensions

Copyright | (C) 2015-2017 Ryan Scott
License | BSD-style (see the file LICENSE)
Maintainer | Ryan Scott
Portability | Template Haskell
Safe Haskell | None
Language | Haskell2010

Data.Bounded.Deriving.Internal

Contents

- `Bounded`

Description

Exports functions to mechanically derive `Bounded` instances.

Note: this is an internal module, and as such, the API presented here is not guaranteed to be stable, even between minor releases of this library.

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.

makeMinBound :: Name -> Q Exp Source #

Generates a lambda expression which behaves like `minBound` (without requiring a `Bounded` instance).

makeMaxBound :: Name -> Q Exp Source #

Generates a lambda expression which behaves like `maxBound` (without requiring a `Bounded` instance).