src/Pure/General/logger.scala
changeset 76592 ec8bf1268f45
parent 75393 87ebf5a50283
child 76593 badb5264f7b9
equal deleted inserted replaced
76591:b9a7a658f7df 76592:ec8bf1268f45
    16 }
    16 }
    17 
    17 
    18 trait Logger {
    18 trait Logger {
    19   def apply(msg: => String): Unit
    19   def apply(msg: => String): Unit
    20 
    20 
    21   def timeit[A](message: String = "", enabled: Boolean = true)(e: => A): A =
    21   def timeit_result[A](
    22     Timing.timeit(message, enabled, apply(_))(e)
    22     message: Exn.Result[A] => String = null,
       
    23     enabled: Boolean = true
       
    24   )(e: => A): A = Timing.timeit_result(message, enabled, apply(_))(e)
       
    25 
       
    26   def timeit[A](message: String = "", enabled: Boolean = true)(e: => A) =
       
    27     timeit_result(_ => message, enabled)
    23 }
    28 }
    24 
    29 
    25 object No_Logger extends Logger {
    30 object No_Logger extends Logger {
    26   def apply(msg: => String): Unit = {}
    31   def apply(msg: => String): Unit = {}
    27 }
    32 }