Base.Backtrace
Module for managing stack backtraces.
The Backtrace
module deals with two different kinds of backtraces:
Backtrace.get
)Backtrace.Exn
)type t = Printexc.raw_backtrace
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.
val sexp_of_t : t -> Sexplib0.Sexp.t
val get : ?at_most_num_frames:int -> unit -> t
val to_string : t -> string
val to_string_list : t -> string list
val elide : bool ref
The value of elide
controls the behavior of backtrace serialization functions such as to_string
, to_string_list
, and sexp_of_t
. When set to false
, these functions behave as expected, returning a faithful representation of their argument. When set to true
, these functions will ignore their argument and return a message indicating that behavior.
The default value is false
.
module Exn : sig ... end
Backtrace.Exn
has functions for controlling and printing the backtrace of the most recently raised exception.