Logs.TagMessage tags.
Message tags are arbitrary named and typed values that can be associated to log messages. See an example.
The type for tag definitions. The type 'a is the type of the tag. The definition specifies a name for the tag, a pretty-printer for the type of the tag and a documentation string. See def.
val def :
?doc:string ->
string ->
(Stdlib.Format.formatter -> 'a -> unit) ->
'a defdef ~doc name pp is a tag definition. name is the name of the tag, it doesn't need to be unique. pp is a printer for the type of the tag. doc is a documentation string describing the tag (defaults to "undocumented").
val name : 'a def -> stringname d is d's name.
val doc : 'a def -> stringdoc d is d's documentation string.
val printer : 'a def -> Stdlib.Format.formatter -> 'a -> unitprinter d is d's type pretty-printer.
val pp_def : Stdlib.Format.formatter -> 'a def -> unitpp_def ppf d prints an unspecified representation of d on ppf.
val list : unit -> def_e listtag_list () is the list of currently existing tag definitions.
val pp : Stdlib.Format.formatter -> t -> unitpp ppf t prints an unspecified representation of t on ppf.
val empty : setempty is the empty set.
val is_empty : set -> boolis_empty s is true iff s is empty.
add d v s is s with the tag (V (d, v)) added. If there was a tag with definition d in s it is replaced.
fold f s acc is the result of folding f over the tags of s starting with acc.
val pp_set : Stdlib.Format.formatter -> set -> unitpp_set ppf s prints an unspecified representation of s on ppf.