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