blob: 120634e60d6935af029c86c9e08dd18fb844271a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
(***********************************************************************)
(* v * The Coq Proof Assistant / The Coq Development Team *)
(* <O___,, * INRIA-Rocquencourt & LRI-CNRS-Orsay *)
(* \VV/ *************************************************************)
(* // * This file is distributed under the terms of the *)
(* * GNU Lesser General Public License Version 2.1 *)
(***********************************************************************)
(** This modules implements basic manipulations of errors for use
throughout Coq's code. *)
(** [register_handler h] registers [h] as a handler.
When an expression is printed with [print e], it
goes through all registered handles (the most
recent first) until a handle deals with it.
Handles signal that they don't deal with some exception
by raisine [Unhandled].
Handles can raise exceptions themselves, in which
case, the exception is passed to the handles which
were registered before. *)
exception Unhandled
val register_handler : (exn -> Pp.std_ppcmds) -> unit
val print : exn -> Pp.std_ppcmds
|