Module Base.Backtrace

Dealing with stack backtraces.

The Backtrace module deals with two different kinds of backtraces:

  1. snapshots of the stack obtained on demand (Backtrace.get)
  2. the stack frames unwound when an exception is raised (Backtrace.Exn)
type t

A Backtrace.t is a snapshot of the stack obtained by calling Backtrace.get. It is represented as a string with newlines separating the frames. sexp_of_t splits the string at newlines and removes some of the cruft, leaving a human-friendly list of frames, but to_string does not.

include sig ... end
val sexp_of_t : t ‑> Base__.Sexplib.Sexp.t
val get : ?at_most_num_frames:int ‑> unit ‑> t
val to_string : t ‑> string
module Exn : sig ... end

Backtrace.Exn has functions for controlling and printing the backtrace of the most recently raised exception.

val initialize_module : unit ‑> unit

User code never calls this. It is called only in std_kernel.ml, as a top-level side effect, to initialize am_recording () as specified above.