Module Action.Meta

Action and action invocation metadata.

Convenience for more informative tracing.

Metadata

module Key : sig ... end

Metadata keys.

type name = string

The type for action names.

type binding =
  1. | Binding : 'a Key.t * 'a -> binding

The type for metadata bindings.

type t

The type for metadata.

val make : ?bindings:binding list -> name:name -> unit -> t

make ~name ~meta () is metadata for an action named name with additional metadata meta.

val none : t

none is metadata for when there is none.

val name : t -> name

name meta is the name of the primitive operation.

val bindings : t -> binding list

bindings meta is meta's list of bindings.

Predicates

val is_none : t -> bool

is_none m is true if and only if m is none.

Formatting

val pp : Stdlib.Format.formatter -> t -> unit

pp formats metadata.