Module type Relude_Interface.ENUM

Module type which describes a type that can be ordered and for which we can determine a lawful chain of successors and predecessors

include BsBastet.Interface.ORD;
type t;
let eq: t => t => bool;
let compare: t => t => BsBastet.Interface.ordering;
let succ: t => option(t);
let pred: t => option(t);