Module Logs.Tag

type 'a def
type def_e =
  1. | Def : 'a def -> def_e
val def : ?doc:string -> string -> (Format.formatter -> 'a -> unit) -> 'a def
val name : 'a def -> string
val doc : 'a def -> string
val printer : 'a def -> Format.formatter -> 'a -> unit
val pp_def : Format.formatter -> 'a def -> unit
val list : unit -> def_e list
type t =
  1. | V : 'a def * 'a -> t
val pp : Format.formatter -> t -> unit
type set
val empty : set
val is_empty : set -> bool
val mem : 'a def -> set -> bool
val add : 'a def -> 'a -> set -> set
val rem : 'a def -> set -> set
val find : 'a def -> set -> 'a option
val get : 'a def -> set -> 'a
val fold : (t -> 'a -> 'a) -> set -> 'a -> 'a
val pp_set : Format.formatter -> set -> unit