diff options
author | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2012-08-17 10:46:49 +0200 |
---|---|---|
committer | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2012-08-20 08:11:07 +0100 |
commit | 76d8f8bb4ba97db10d836ed5c27525089991a122 (patch) | |
tree | 8d4070dcf443cb8abc81d5159ea4b4d7d4d5d2bd /src | |
parent | fb3157726bb16d69542de7cf0df1ebefa3505484 (diff) | |
download | scala-76d8f8bb4ba97db10d836ed5c27525089991a122.tar.gz scala-76d8f8bb4ba97db10d836ed5c27525089991a122.tar.bz2 scala-76d8f8bb4ba97db10d836ed5c27525089991a122.zip |
Mark logging methods in `SymbolTable` with `@inline`.
Those two methods contribute 2% of Function0 allocation
when compiling `Vector.scala`.
Diffstat (limited to 'src')
-rw-r--r-- | src/reflect/scala/reflect/internal/SymbolTable.scala | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/reflect/scala/reflect/internal/SymbolTable.scala b/src/reflect/scala/reflect/internal/SymbolTable.scala index 761dcc0534..4100e97cdd 100644 --- a/src/reflect/scala/reflect/internal/SymbolTable.scala +++ b/src/reflect/scala/reflect/internal/SymbolTable.scala @@ -72,11 +72,13 @@ abstract class SymbolTable extends macros.Universe Console.err.println(msg + ": " + result) result } - private[scala] def logResult[T](msg: String)(result: T): T = { + @inline + final private[scala] def logResult[T](msg: => String)(result: T): T = { log(msg + ": " + result) result } - private[scala] def logResultIf[T](msg: String, cond: T => Boolean)(result: T): T = { + @inline + final private[scala] def logResultIf[T](msg: => String, cond: T => Boolean)(result: T): T = { if (cond(result)) log(msg + ": " + result) |