module type Collection_category =sig
..end
Signature for a category over a collection.
type
elt
Element in the category
typet =
elt Parameter_category.t
val none : t
The category '@none'
val default : unit -> t
The '@default' category. By default, it is Parameter_sig.Collection_category.none
.
val all : unit -> t
The '@all' category. If this category has not been created, it is
Parameter_sig.Collection_category.none
, which means 'ignored'.
val set_default : t -> unit
Modify the '@default' category.
val add : string ->
State.t list ->
elt Parameter_category.accessor ->
t
Adds a new category for this collection with the given name, accessor and dependencies.
val enable_all : State.t list ->
elt Parameter_category.accessor ->
t
The category '@all' is enabled in positive occurrences, with the given interpretation. In negative occurrences, it is always enabled and '-@all' means 'empty'.
val enable_all_as : t -> unit
The category '@all' is equivalent to the given category.