`sig
type a
val succ : Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a
val pred : Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a
val to_enum : int -> Deriving_Enum.Enum.a
val from_enum : Deriving_Enum.Enum.a -> int
val enum_from : Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a list
val enum_from_then :
Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a list
val enum_from_to :
Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a list
val enum_from_then_to :
Deriving_Enum.Enum.a ->
Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a -> Deriving_Enum.Enum.a list
end`