summaryrefslogtreecommitdiff
path: root/sources
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-08-31 13:08:43 +0000
committerpaltherr <paltherr@epfl.ch>2004-08-31 13:08:43 +0000
commit1a6515ccefc77fd8222d5b7df8fdf7726432a08f (patch)
treee9bd8be1d9b8b6e68773ccb88838343a1c751e63 /sources
parent1d35cb02584ab86bc5b5041826517626a3edf543 (diff)
downloadscala-1a6515ccefc77fd8222d5b7df8fdf7726432a08f.tar.gz
scala-1a6515ccefc77fd8222d5b7df8fdf7726432a08f.tar.bz2
scala-1a6515ccefc77fd8222d5b7df8fdf7726432a08f.zip
- Moved tree elimination code into AddAccessors
Diffstat (limited to 'sources')
-rw-r--r--sources/scala/tools/scalac/ast/printer/TextTreePrinter.scala2
-rw-r--r--sources/scalac/transformer/AddAccessorsPhase.java9
-rw-r--r--sources/scalac/transformer/ExplicitOuterClassesPhase.java10
3 files changed, 8 insertions, 13 deletions
diff --git a/sources/scala/tools/scalac/ast/printer/TextTreePrinter.scala b/sources/scala/tools/scalac/ast/printer/TextTreePrinter.scala
index bc590cbfdd..0c93b00f4e 100644
--- a/sources/scala/tools/scalac/ast/printer/TextTreePrinter.scala
+++ b/sources/scala/tools/scalac/ast/printer/TextTreePrinter.scala
@@ -640,7 +640,7 @@ class TextTreePrinter(writer: PrintWriter) with TreePrinter {
val types: java.util.List = new java.util.ArrayList();
if (symbol != null) {
val global: scalac_Global = scalac_Global.instance;
- if (global.currentPhase.id > global.PHASE.EXPLICITOUTER.id()) {
+ if (global.currentPhase.id > global.PHASE.ADDACCESSORS.id()) {
val i: Scope$SymbolIterator = symbol.members().iterator();
while (i.hasNext()) {
val member: Symbol = i.next();
diff --git a/sources/scalac/transformer/AddAccessorsPhase.java b/sources/scalac/transformer/AddAccessorsPhase.java
index e1a4e4e278..f9a459722b 100644
--- a/sources/scalac/transformer/AddAccessorsPhase.java
+++ b/sources/scalac/transformer/AddAccessorsPhase.java
@@ -16,7 +16,7 @@ import scalac.Global;
import scalac.Phase;
import scalac.PhaseDescriptor;
import scalac.CompilationUnit;
-import scalac.ast.Transformer;
+import scalac.ast.GenTransformer;
import scalac.ast.Tree;
import scalac.ast.Tree.Template;
import scalac.ast.TreeList;
@@ -54,7 +54,7 @@ public class AddAccessorsPhase extends Phase {
// Private Class - Tree transformer
/** The tree transformer */
- private final Transformer treeTransformer = new Transformer(global) {
+ private final GenTransformer treeTransformer = new GenTransformer(global) {
/** The parameter to accessor method map */
private final Map/*<Symbol,Symbol>*/ methods = new HashMap();
@@ -117,6 +117,11 @@ public class AddAccessorsPhase extends Phase {
impl = gen.Template(clasz.pos, impl.symbol(), parents, body);
return gen.ClassDef(clasz, impl);
}
+ case AbsTypeDef(_, _, _, _):
+ case AliasTypeDef(_, _, _, _):
+ return Tree.Empty; // eliminate
+ case Typed(Tree expr, _):
+ return transform(expr); // eliminate
case DefDef(_, _, _, _, _, _):
Symbol backup = this.method;
this.method = tree.symbol();
diff --git a/sources/scalac/transformer/ExplicitOuterClassesPhase.java b/sources/scalac/transformer/ExplicitOuterClassesPhase.java
index cec8becc1b..e7e4fe33d8 100644
--- a/sources/scalac/transformer/ExplicitOuterClassesPhase.java
+++ b/sources/scalac/transformer/ExplicitOuterClassesPhase.java
@@ -338,16 +338,6 @@ public class ExplicitOuterClassesPhase extends Phase {
context = backup;
return gen.DefDef(method, rhs);
- // !!!
- case AbsTypeDef(_, _, _, _):
- case AliasTypeDef(_, _, _, _):
- // eliminate // !!!
- return Tree.Empty;
-
- case Typed(Tree expr, Tree tpe):
- // eliminate // !!!
- return transform(expr);
-
case Apply(Tree vfun, Tree[] vargs):
switch (vfun) {
case TypeApply(Tree tfun, Tree[] targs):