Module InferBase.PerfEvent

module Json : sig ... end
type scope =
| Global
| Process
type logger
val log_begin_event : logger -> ?⁠timestamp:Mtime.t -> ?⁠categories:string list -> ?⁠arguments:(string * Json.t) list -> name:string -> unit -> unit
val log_end_event : logger -> ?⁠timestamp:Mtime.t -> ?⁠arguments:(string * Json.t) list -> unit -> unit
val log_complete_event : logger -> timestamp:Mtime.t -> ?⁠duration:Mtime.Span.t -> ?⁠categories:string list -> ?⁠arguments:(string * Json.t) list -> name:string -> unit -> unit
val log_instant_event : logger -> ?⁠timestamp:Mtime.t -> name:string -> scope -> unit
val log : (logger -> unit) -> unit
val init : unit -> unit