Index: compiler/java/com/google/dart/compiler/ast/DartParameterizedTypeNode.java |
diff --git a/compiler/java/com/google/dart/compiler/ast/DartParameterizedNode.java b/compiler/java/com/google/dart/compiler/ast/DartParameterizedTypeNode.java |
similarity index 67% |
rename from compiler/java/com/google/dart/compiler/ast/DartParameterizedNode.java |
rename to compiler/java/com/google/dart/compiler/ast/DartParameterizedTypeNode.java |
index 016f15f950f149c7e4991676ab912d64862138aa..50fb7bcc1413f9bcc2281899dd1046751a097ffd 100644 |
--- a/compiler/java/com/google/dart/compiler/ast/DartParameterizedNode.java |
+++ b/compiler/java/com/google/dart/compiler/ast/DartParameterizedTypeNode.java |
@@ -4,30 +4,52 @@ |
package com.google.dart.compiler.ast; |
+import com.google.dart.compiler.type.Type; |
+ |
+import java.util.Collections; |
import java.util.List; |
-public class DartParameterizedNode extends DartExpression { |
+public class DartParameterizedTypeNode extends DartExpression { |
private DartExpression expression; |
private List<DartTypeParameter> typeParameters; |
+ private Type type; |
+ |
+ public DartParameterizedTypeNode(DartExpression expression, List<DartTypeParameter> typeParameters) { |
+ setExpression(expression); |
+ setTypeParameters(typeParameters); |
+ } |
- public DartParameterizedNode(DartExpression expression, List<DartTypeParameter> typeParameters) { |
- this.setExpression(becomeParentOf(expression)); |
- this.setTypeParameters(becomeParentOf(typeParameters)); |
+ @Override |
+ public <R> R accept(DartPlainVisitor<R> visitor) { |
+ return visitor.visitParameterizedTypeNode(this); |
} |
public DartExpression getExpression() { |
return expression; |
} |
- public void setExpression(DartExpression expression) { |
- this.expression = becomeParentOf(expression); |
+ @Override |
+ public Type getType() { |
+ return type; |
} |
public List<DartTypeParameter> getTypeParameters() { |
return typeParameters; |
} |
+ public void setExpression(DartExpression expression) { |
+ this.expression = becomeParentOf(expression); |
+ } |
+ |
+ @Override |
+ public void setType(Type type) { |
+ this.type = type; |
+ } |
+ |
public void setTypeParameters(List<DartTypeParameter> typeParameters) { |
+ if (typeParameters == null) { |
+ typeParameters = Collections.emptyList(); |
+ } |
this.typeParameters = becomeParentOf(typeParameters); |
} |
@@ -45,9 +67,4 @@ public class DartParameterizedNode extends DartExpression { |
getExpression().accept(visitor); |
visitor.visit(getTypeParameters()); |
} |
- |
- @Override |
- public <R> R accept(DartPlainVisitor<R> visitor) { |
- return visitor.visitParameterizedNode(this); |
- } |
} |