summaryrefslogtreecommitdiff
path: root/sources/scalac/ast/printer
diff options
context:
space:
mode:
authorMatthias Zenger <mzenger@gmail.com>2003-08-25 22:16:12 +0000
committerMatthias Zenger <mzenger@gmail.com>2003-08-25 22:16:12 +0000
commit20b0001740186773e222b1341c234e4cfb988045 (patch)
tree1a44763de7b7ef90daa7772ac664a6636ef9b877 /sources/scalac/ast/printer
parentca6bfb0f68cb26e1105fbea373b30cf4772d95fe (diff)
downloadscala-20b0001740186773e222b1341c234e4cfb988045.tar.gz
scala-20b0001740186773e222b1341c234e4cfb988045.tar.bz2
scala-20b0001740186773e222b1341c234e4cfb988045.zip
Included optimization for top-level switches on...
Included optimization for top-level switches on expressions of type Int. It is switched off in the checked in version.
Diffstat (limited to 'sources/scalac/ast/printer')
-rw-r--r--sources/scalac/ast/printer/TextTreePrinter.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/sources/scalac/ast/printer/TextTreePrinter.java b/sources/scalac/ast/printer/TextTreePrinter.java
index 50ff615b6d..a956bcb8ee 100644
--- a/sources/scalac/ast/printer/TextTreePrinter.java
+++ b/sources/scalac/ast/printer/TextTreePrinter.java
@@ -456,6 +456,30 @@ public class TextTreePrinter implements TreePrinter {
printType(tree);
break;
+ case Switch(Tree expr, int[] tags, Tree[] bodies, Tree defaultBody):
+ print("<switch>");
+ print(Text.Space);
+ print(TXT_LEFT_PAREN);
+ print(expr);
+ print(TXT_RIGHT_PAREN);
+ print(Text.Space);
+ indent();
+ print(TXT_BLOCK_BEGIN);
+ for (int i = 0; i < tags.length; i++) {
+ print(KW_CASE);
+ print("" + i);
+ print(Text.Space);
+ print(TXT_RIGHT_ARROW);
+ print(Text.Space);
+ print(bodies[i]);
+ print(Text.Newline);
+ }
+ print("<default> => ");
+ print(defaultBody);
+ undent();
+ print(TXT_BLOCK_END);
+ break;
+
case New(Tree.Template templ):
printTemplate(KW_NEW, templ, false);
printType(tree);