Module Backend.ExecutionDuration

type t
type counter
type 'a evaluation_result = {
result : 'a;
execution_duration : t;
}
val zero : t
val counter : unit -> counter
val since : counter -> t
val add_duration_since : t -> counter -> t
val add : t -> t -> t
val wall_time : t -> float
val pp : prefix:string -> Stdlib.Format.formatter -> t -> unit
val timed_evaluate : f:(unit -> 'a) -> 'a evaluation_result
val log : prefix:string -> IBase.Logging.debug_kind -> t -> unit

log to debug logs and to Scuba

val to_scuba_entries : prefix:string -> t -> IBase.LogEntry.t list