summaryrefslogtreecommitdiff
path: root/sources/meta/scalac
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2003-04-16 09:21:53 +0000
committerpaltherr <paltherr@epfl.ch>2003-04-16 09:21:53 +0000
commit609593beeb70645c1a9ce2cb02331a264d8cbf5b (patch)
tree182d868a483f799b31e253f4f2cd2b801d403396 /sources/meta/scalac
parent9a6a3347293acf9827555c60201a41ace52669f4 (diff)
downloadscala-609593beeb70645c1a9ce2cb02331a264d8cbf5b.tar.gz
scala-609593beeb70645c1a9ce2cb02331a264d8cbf5b.tar.bz2
scala-609593beeb70645c1a9ce2cb02331a264d8cbf5b.zip
- Changed LazyTreeCopier to used a copier inste...
- Changed LazyTreeCopier to used a copier instead of a factory
Diffstat (limited to 'sources/meta/scalac')
-rw-r--r--sources/meta/scalac/ast/MetaLazyTreeCopier.java13
1 files changed, 5 insertions, 8 deletions
diff --git a/sources/meta/scalac/ast/MetaLazyTreeCopier.java b/sources/meta/scalac/ast/MetaLazyTreeCopier.java
index a3d770b0d1..56ed1e3e00 100644
--- a/sources/meta/scalac/ast/MetaLazyTreeCopier.java
+++ b/sources/meta/scalac/ast/MetaLazyTreeCopier.java
@@ -16,8 +16,8 @@ public class MetaLazyTreeCopier extends AbstractTreeMethodExpander {
public void printTreeMethod(TreeNode node) {
printTreeMethodHeader(node, tree.t_Tree + " tree");
writer.lbrace();
+ writer.println(node.name + " t = (" + node.name + ")tree;");
if (node.fields.length > 0) {
- writer.println(node.name + " t = (" + node.name + ")tree;");
writer.print("if (").indent();
for (int i = 0; i < node.fields.length; i++) {
if (i > 0) writer.println(" &&");
@@ -26,14 +26,11 @@ public class MetaLazyTreeCopier extends AbstractTreeMethodExpander {
}
writer.println(")");
writer.println("return t;").undent();
- } else {
- writer.print(node.name).space();
+ writer.print("t = copier." + node.name + "(");
+ node.printArgs(writer, "tree").println(");");
+ writer.println("t.type = tree.type;");
+ if (node.hasSymbol())writer.println("t.setSymbol(tree.symbol());");
}
-
- writer.print("t = make." + node.name + "(");
- node.printArgs(writer, "tree.pos").println(");");
- writer.println("t.type = tree.type;");
- if (node.hasSymbol()) writer.println("t.setSymbol(tree.symbol());");
writer.println("return t;");
writer.rbrace();
}