HORIZON HASKELLDocslts/ghc-10.0.x8fef28d2026-11-02Search packagesCtrl K
Theme: |

GHC 10.0.0.20260917 · lts/ghc-10.0.x · 8fef28d · 2026-11-02

Modulederiving-compat-0.6.8Haskell2010

Data.Eq.Deriving.Internal

Exports functions to mechanically derive Eq, Eq1, and Eq2 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.

Contents
  1. Eq
  2. Eq1
  3. Eq2
Synopsis
valuederiveEq :: Name -> Q [Dec]

Generates an Eq instance declaration for the given data type or data family instance.

valuemakeEq :: Name -> Q Exp

Generates a lambda expression which behaves like (==) (without requiring an Eq instance).

valuemakeNotEq :: Name -> Q Exp

Generates a lambda expression which behaves like (/=) (without requiring an Eq instance).

Eq1

valuederiveEq1 :: Name -> Q [Dec]

Generates an Eq1 instance declaration for the given data type or data family instance.

valuemakeLiftEq :: Name -> Q Exp

Generates a lambda expression which behaves like liftEq (without requiring an Eq1 instance).

This function is not available with transformers-0.4.

valuemakeEq1 :: Name -> Q Exp

Generates a lambda expression which behaves like eq1 (without requiring an Eq1 instance).

Eq2

valuederiveEq2 :: Name -> Q [Dec]

Generates an Eq2 instance declaration for the given data type or data family instance.

This function is not available with transformers-0.4.

valuemakeLiftEq2 :: Name -> Q Exp

Generates a lambda expression which behaves like liftEq2 (without requiring an Eq2 instance).

This function is not available with transformers-0.4.

valuemakeEq2 :: Name -> Q Exp

Generates a lambda expression which behaves like eq2 (without requiring an Eq2 instance).

This function is not available with transformers-0.4.