Module type Deriving_Enum.Enum

module type Enum = sig .. end

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