tuned
authorhaftmann
Mon, 17 Dec 2007 22:40:12 +0100
changeset 25682 c65add60a1e4
parent 25681 ded611be9604
child 25683 d9fefc4859be
tuned
src/Pure/General/output.ML
--- a/src/Pure/General/output.ML	Mon Dec 17 18:39:18 2007 +0100
+++ b/src/Pure/General/output.ML	Mon Dec 17 22:40:12 2007 +0100
@@ -125,25 +125,27 @@
 val timing = ref false;
 
 (*generic timing combinator*)
-fun gen_timeit flag some_msg f =
+fun gen_timeit flag msg f =
   if flag then
     let
       val start = start_timing ();
       val result = f ();
-      val _ = Option.map warning some_msg;
-      val _ = warning (end_timing start);
+      val end_msg = end_timing start;
+      val output_msg = if msg = "" then end_msg
+        else msg ^ " - " ^ end_msg;
+      val _ = warning output_msg;
     in result end
   else f ();
 
 (*conditional timing*)
-fun cond_timeit flag = gen_timeit flag NONE;
+fun cond_timeit flag = gen_timeit flag "";
 
 (*unconditional timing*)
 fun timeit x = cond_timeit true x;
 
 (*timed application function*)
 fun timeap f x = timeit (fn () => f x);
-fun timeap_msg s f x = gen_timeit true (SOME s) (fn () => f x);
+fun timeap_msg s f x = gen_timeit true s (fn () => f x);
 
 
 (* accumulated timing *)