# Functor Deriving_Enum.Defaults

    module Defaults: functor (E : sig
    type a

    val numbering : (a * int) listend) -> Enum  with type a = E.a

Parameters:

`E` | : | `sig type a val numbering : (a * int) list 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