aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2013-05-12 15:36:19 +0200
committerMartin Odersky <odersky@gmail.com>2013-05-12 15:36:19 +0200
commitd31407db2e99c674eb74431f327d02a41e70746f (patch)
treee730f8691c3fffe04e853ff26e0d81887226d764
parentdbc10c03035206fb0ca08dd50300b4828cd95e93 (diff)
downloaddotty-d31407db2e99c674eb74431f327d02a41e70746f.tar.gz
dotty-d31407db2e99c674eb74431f327d02a41e70746f.tar.bz2
dotty-d31407db2e99c674eb74431f327d02a41e70746f.zip
Fixes to tree printing
Now goes inside lists. Also prints positions.
-rw-r--r--src/dotty/tools/dotc/core/Printers.scala5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/core/Printers.scala b/src/dotty/tools/dotc/core/Printers.scala
index 15c2efa4c..51cb01e02 100644
--- a/src/dotty/tools/dotc/core/Printers.scala
+++ b/src/dotty/tools/dotc/core/Printers.scala
@@ -405,9 +405,10 @@ object Printers {
def toText[T >: Untyped](tree: Tree[T]): Text = {
tree match {
- case node: Product =>
+ case node: Positioned =>
def toTextElem(elem: Any): Text = elem match {
case elem: Showable => elem.toText
+ case elem: List[_] => "List(" ~ Text(elem map toTextElem, ",") ~ ")"
case elem => elem.toString
}
val nodeName = node.productPrefix
@@ -419,7 +420,7 @@ object Printers {
else
Text()
- nodeName ~ "(" ~ elems ~ tpSuffix ~ ")"
+ nodeName ~ "(" ~ elems ~ tpSuffix ~ ")" ~ node.pos.toString
case _ =>
tree.toString: Text
}