Module Base.Equal

This module defines signatures that are to be included in other signatures to ensure a consistent interface to equal functions. There is a signature (S, S1, S2, S3) for each arity of type. Usage looks like:

type t
include Equal.S with type t := t

or

type 'a t
include Equal.S1 with type 'a t := 'a t
type 'a t = 'a -> 'a -> bool
type 'a equal = 'a t
module type S = sig ... end
module type S1 = sig ... end
module type S2 = sig ... end
module type S3 = sig ... end