Copyright | (C) 2015-2017 Ryan Scott |
---|---|

License | BSD-style (see the file LICENSE) |

Maintainer | Ryan Scott |

Portability | Template Haskell |

Safe Haskell | None |

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 have`Bounded`

constraints. If this is not desirable, use`makeMinBound`

or one of its cousins.