summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/StdNames.scala
diff options
context:
space:
mode:
authorDenys Shabalin <denys.shabalin@typesafe.com>2014-01-22 19:49:21 +0100
committerDenys Shabalin <denys.shabalin@typesafe.com>2014-01-23 13:59:06 +0100
commitadf990ac516d8e04c725a4c7be7c23bdbf922ffa (patch)
tree33039f07740854ed2b6e5ffd1d3bf8624f040294 /src/reflect/scala/reflect/internal/StdNames.scala
parent01f9ab52111712a6f4bc677415e9ad7a3bfe41a2 (diff)
downloadscala-adf990ac516d8e04c725a4c7be7c23bdbf922ffa.tar.gz
scala-adf990ac516d8e04c725a4c7be7c23bdbf922ffa.tar.bz2
scala-adf990ac516d8e04c725a4c7be7c23bdbf922ffa.zip
SI-7275 allow flattening of blocks with ..$
This commit extends current splicing rules to allow flattening of trees into other trees. Without such support it is impossible to correctly create vals with patterns and use it in other location as they could expand into multiple-statement blocks: scala> q"val (a, b) = (1, 2)" res0: reflect.runtime.universe.Tree = { <synthetic> <artifact> private[this] val x$1 = scala.Tuple2(1, 2): @scala.unchecked match { case scala.Tuple2((a @ _), (b @ _)) => scala.Tuple2(a, b) }; val a = x$1._1; val b = x$1._2; () } scala> q"..$res0; println(a + b)" res1: reflect.runtime.universe.Tree = { <synthetic> <artifact> private[this] val x$1 = scala.Tuple2(1, 2): @scala.unchecked match { case scala.Tuple2((a @ _), (b @ _)) => scala.Tuple2(a, b) }; val a = x$1._1; val b = x$1._2; println(a.$plus(b)) }
Diffstat (limited to 'src/reflect/scala/reflect/internal/StdNames.scala')
-rw-r--r--src/reflect/scala/reflect/internal/StdNames.scala1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/internal/StdNames.scala b/src/reflect/scala/reflect/internal/StdNames.scala
index ed3e7dbc4c..0ca74a07c9 100644
--- a/src/reflect/scala/reflect/internal/StdNames.scala
+++ b/src/reflect/scala/reflect/internal/StdNames.scala
@@ -750,6 +750,7 @@ trait StdNames {
val toArray: NameType = "toArray"
val toList: NameType = "toList"
val toObjectArray : NameType = "toObjectArray"
+ val toStats: NameType = "toStats"
val TopScope: NameType = "TopScope"
val toString_ : NameType = "toString"
val toTypeConstructor: NameType = "toTypeConstructor"