Module Knowledge.Enum

An extensible enumerated type.

An enumerated type is a set of names that are represented underneath the hood using the KB.Name.t.

The enumerated type had to be declared before used and is commonly referenced as a module declared constant. It is possible, however to reference the enumerated type value using its string representation, via the read function.

interface as Theory.Enum, since then was moved here).

module type S = sig ... end

The enumerated type interface

module Make () : S

Creates a new enumerated type.