summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/Trees.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-08-14 20:17:09 +0200
committerGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2012-08-20 08:10:50 +0100
commit1a6a9b4c75c5a8835ab1ed42a9e0269cf4bc2fe7 (patch)
treec663c62915d8432038e59da24e3c1d9669c80039 /src/reflect/scala/reflect/internal/Trees.scala
parentcf9b7ae0867f594aba39984ac732fbd26ed12f51 (diff)
downloadscala-1a6a9b4c75c5a8835ab1ed42a9e0269cf4bc2fe7.tar.gz
scala-1a6a9b4c75c5a8835ab1ed42a9e0269cf4bc2fe7.tar.bz2
scala-1a6a9b4c75c5a8835ab1ed42a9e0269cf4bc2fe7.zip
More method hoisting.
Also avoided systematically to map (_.tpe) on parameters in favor of lazy val paramTypes.
Diffstat (limited to 'src/reflect/scala/reflect/internal/Trees.scala')
-rw-r--r--src/reflect/scala/reflect/internal/Trees.scala6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/internal/Trees.scala b/src/reflect/scala/reflect/internal/Trees.scala
index b21a28eea8..8baed325fd 100644
--- a/src/reflect/scala/reflect/internal/Trees.scala
+++ b/src/reflect/scala/reflect/internal/Trees.scala
@@ -1540,6 +1540,12 @@ trait Trees extends api.Trees { self: SymbolTable =>
sys.error("Not a LabelDef: " + t + "/" + t.getClass)
}
+// ----- Hoisted closures and convenience methods, for compile time reductions -------
+
+ private[scala] final val tpeOfTree = (tree: Tree) => tree.tpe
+
+// -------------- Classtags --------------------------------------------------------
+
implicit val TreeTag = ClassTag[Tree](classOf[Tree])
implicit val TermTreeTag = ClassTag[TermTree](classOf[TermTree])
implicit val TypTreeTag = ClassTag[TypTree](classOf[TypTree])