HORIZON HASKELLDocslts/ghc-10.0.xa8896112026-10-18Search names, modules, packages, or :: a typeCtrl K

GHC 10.0.0.20260917 · lts/ghc-10.0.x · a889611 · 2026-10-18

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.