From: Pino Toscano Date: Thu, 30 Aug 2018 10:13:42 +0000 (+0200) Subject: Register a custom exception printer X-Git-Url: http://git.annexia.org/?a=commitdiff_plain;h=8944bf149e66096d78f8b229da79362ba3eec3ef;p=ocaml-libvirt.git Register a custom exception printer This way all the users of ocaml-libvirt can use Printexc.to_string to print a Virterror exception, even in case they do not catch it explicitly. --- diff --git a/libvirt/libvirt.ml b/libvirt/libvirt.ml index 8049f42..c03032f 100644 --- a/libvirt/libvirt.ml +++ b/libvirt/libvirt.ml @@ -1616,4 +1616,9 @@ let () = "ocaml_libvirt_virterror" (Virterror (Virterror.no_error ())); Callback.register_exception "ocaml_libvirt_not_supported" (Not_supported ""); - c_init () + c_init (); + Printexc.register_printer ( + function + | Virterror e -> Some (Virterror.to_string e) + | _ -> None + )