diff options
author | Martin Odersky <odersky@gmail.com> | 2013-05-12 15:36:19 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2013-05-12 15:36:19 +0200 |
commit | d31407db2e99c674eb74431f327d02a41e70746f (patch) | |
tree | e730f8691c3fffe04e853ff26e0d81887226d764 | |
parent | dbc10c03035206fb0ca08dd50300b4828cd95e93 (diff) | |
download | dotty-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.scala | 5 |
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 } |