grisette-0.10.0.0: Symbolic evaluation as a library
Copyright(c) Sirui Lu 2024
LicenseBSD-3-Clause (see the LICENSE file)
Maintainersiruilu@cs.washington.edu
StabilityExperimental
PortabilityGHC only
Safe HaskellSafe-Inferred
LanguageHaskell2010

Grisette.Internal.TH.GADT.DeriveGADT

Description

 
Synopsis

Documentation

deriveGADT :: Name -> [Name] -> Q [Dec] Source #

Derive the specified classes for a GADT with the given name.

Support the following classes.

deriveGADTAll :: Name -> Q [Dec] Source #

Derive all (non-functor) classes related to Grisette for a GADT with the given name.

Classes that are derived by this procedure are:

Note that it is okay to derive for non-GADT types using this procedure, and it will be slightly more efficient.

deriveGADTAllExcept :: Name -> [Name] -> Q [Dec] Source #

Derive all (non-functor) classes related to Grisette for a GADT with the given name except the specified classes.