moonpool/src/core/exn_bt.mli
2024-02-11 16:40:14 -05:00

25 lines
539 B
OCaml

(** Exception with backtrace.
@since NEXT_RELEASE *)
type t = exn * Printexc.raw_backtrace
(** An exception bundled with a backtrace *)
val exn : t -> exn
val bt : t -> Printexc.raw_backtrace
val make : exn -> Printexc.raw_backtrace -> t
(** Trivial builder *)
val get : exn -> t
(** [get exn] is [make exn (get_raw_backtrace ())] *)
val get_callstack : int -> exn -> t
val raise : t -> 'a
(** Raise the exception with its save backtrace *)
val show : t -> string
(** Simple printing *)
type nonrec 'a result = ('a, t) result