diff options
author | Martin Odersky <odersky@gmail.com> | 2014-01-26 10:13:11 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2014-01-26 18:52:33 +0100 |
commit | 8b1cc2270c67157f60111a853680fd4f20418d59 (patch) | |
tree | 8527e023059546f2a8dc80e14237e3fab0555d64 /src/dotty/tools/dotc/util/Stats.scala | |
parent | b2dd6a8a67a70783e68da1f33c33f18c6641e5bb (diff) | |
download | dotty-8b1cc2270c67157f60111a853680fd4f20418d59.tar.gz dotty-8b1cc2270c67157f60111a853680fd4f20418d59.tar.bz2 dotty-8b1cc2270c67157f60111a853680fd4f20418d59.zip |
Some more statistic sampling
Diffstat (limited to 'src/dotty/tools/dotc/util/Stats.scala')
-rw-r--r-- | src/dotty/tools/dotc/util/Stats.scala | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/util/Stats.scala b/src/dotty/tools/dotc/util/Stats.scala index 894c1eb04..efae6be34 100644 --- a/src/dotty/tools/dotc/util/Stats.scala +++ b/src/dotty/tools/dotc/util/Stats.scala @@ -17,9 +17,11 @@ object Stats { override def default(key: String): Int = 0 } - def record(fn: String) = { - val name = if (fn.startsWith("member-")) "member" else fn - hits(name) += 1 + def record(fn: String, n: Int = 1) = { + if (monitored) { + val name = if (fn.startsWith("member-")) "member" else fn + hits(name) += n + } } private var monitored = false @@ -59,7 +61,9 @@ object Stats { try op finally { hb.continue = false + println() println(hits.toList.sortBy(_._2).map{ case (x, y) => s"$x -> $y" } mkString "\n") + println(s"unique types: ${ctx.base.uniquesSize}") } } else op } |