Log events synchronously using the given printer.
include S
val before_prim : t ‑> ('a, 'b) Shexp_process.Prim.t ‑> ('a, 'b) Shexp_process.Prim.Args.t ‑> ('a, 'b) prim_token
Called before the execution of a primitive. The S-expression is a representation of
the primitive call, for instance (mkdir "foo")
.
val after_prim : t ‑> ('a, 'b) Shexp_process.Prim.t ‑> ('b, exn * Printexc.raw_backtrace) Pervasives.result ‑> ('a, 'b) prim_token ‑> unit
Called after the execution of a primitive, with the result.
val user_exn : t ‑> exn ‑> Printexc.raw_backtrace ‑> unit
Register a user exception, i.e. when a bind
raises.
val enter_sub : t ‑> unit
Shexp tries to linearize the trace as much as possible. When an execution parameter
is changed locally, such as in (chdir ...) >>= ...
, a sub context is entered.
val leave_sub : t ‑> unit
val create : (Shexp_sexp.Std.Sexp.t ‑> unit) ‑> t