summaryrefslogtreecommitdiff
path: root/AAC_helper.ml
diff options
context:
space:
mode:
authorGravatar Stephane Glondu <steph@glondu.net>2010-12-01 13:33:59 +0100
committerGravatar Stephane Glondu <steph@glondu.net>2010-12-01 13:33:59 +0100
commitaa51449cb692a9a1d183b2663679645aba16b036 (patch)
treef32b2fd38d3442e4d583009cb09cbac701c33bc0 /AAC_helper.ml
parenta3c2b799e0eceb0896af062887c762c654d2e2f6 (diff)
parent8ab748064ddeec8400859e210bf9963826cba631 (diff)
Merge commit 'upstream/0.2.1'
Diffstat (limited to 'AAC_helper.ml')
-rw-r--r--AAC_helper.ml41
1 files changed, 41 insertions, 0 deletions
diff --git a/AAC_helper.ml b/AAC_helper.ml
new file mode 100644
index 0000000..637def1
--- /dev/null
+++ b/AAC_helper.ml
@@ -0,0 +1,41 @@
+(***************************************************************************)
+(* This is part of aac_tactics, it is distributed under the terms of the *)
+(* GNU Lesser General Public License version 3 *)
+(* (see file LICENSE for more details) *)
+(* *)
+(* Copyright 2009-2010: Thomas Braibant, Damien Pous. *)
+(***************************************************************************)
+
+module type CONTROL = sig
+ val debug : bool
+ val time : bool
+ val printing : bool
+end
+
+module Debug (X : CONTROL) = struct
+ open X
+ let debug x =
+ if debug then
+ Printf.printf "%s\n%!" x
+
+
+ let time f x fmt =
+ if time then
+ let t = Sys.time () in
+ let r = f x in
+ Printf.printf fmt (Sys.time () -. t);
+ r
+ else f x
+
+ let pr_constr msg constr =
+ if printing then
+ ( Pp.msgnl (Pp.str (Printf.sprintf "=====%s====" msg));
+ Pp.msgnl (Printer.pr_constr constr);
+ )
+
+
+ let debug_exception msg e =
+ debug (msg ^ (Printexc.to_string e))
+
+
+end