HORIZON HASKELLDocslts/ghc-9.14.xd82dee82026-10-12Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · d82dee8 · 2026-10-12

Modulederiving-compat-0.6.8Haskell2010

Data.Ord.Deriving.Internal

Exports functions to mechanically derive Ord, Ord1, and Ord2 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.

  • 14 values

Ord

8 declarations
valuederiveOrd :: Name -> Q [Dec]
#

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

valuemakeLE :: Name -> Q Exp
#

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

valuemakeLT :: Name -> Q Exp
#

Generates a lambda expression which behaves like (<) (without requiring an Ord instance).

valuemakeGT :: Name -> Q Exp
#

Generates a lambda expression which behaves like (>) (without requiring an Ord instance).

valuemakeGE :: Name -> Q Exp
#

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

valuemakeMax :: Name -> Q Exp
#

Generates a lambda expression which behaves like max (without requiring an Ord instance).

valuemakeMin :: Name -> Q Exp
#

Generates a lambda expression which behaves like min (without requiring an Ord instance).

Ord1

3 declarations
valuederiveOrd1 :: Name -> Q [Dec]
#

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

valuemakeLiftCompare :: Name -> Q Exp
#

Generates a lambda expression which behaves like liftCompare (without requiring an Ord1 instance).

This function is not available with transformers-0.4.

valuemakeCompare1 :: Name -> Q Exp
#

Generates a lambda expression which behaves like compare1 (without requiring an Ord1 instance).

Ord2

3 declarations
valuederiveOrd2 :: Name -> Q [Dec]
#

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

This function is not available with transformers-0.4.

valuemakeLiftCompare2 :: Name -> Q Exp
#

Generates a lambda expression which behaves like liftCompare2 (without requiring an Ord2 instance).

This function is not available with transformers-0.4.

valuemakeCompare2 :: Name -> Q Exp
#

Generates a lambda expression which behaves like compare2 (without requiring an Ord2 instance).

This function is not available with transformers-0.4.