# Functor Deriving_Enum.Defaults'

    module Defaults': functor (E : sig

    type a

    val from_enum : a -> int

    val to_enum : int -> a

    end) -> functor (B : Deriving_Bounded.Bounded  with type a = E.a) -> Enum  with type a = B.a

Parameters:

`E` | : | `sig type a val from_enum : a -> int val to_enum : int -> a end`
`B` | : | `Deriving_Bounded.Bounded with type a = E.a`

    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