Index: lib/compiler/implementation/elements/elements.dart |
diff --git a/lib/compiler/implementation/elements/elements.dart b/lib/compiler/implementation/elements/elements.dart |
index 00ead02f822f0dc39e470fa607a31239f2e76fd2..01dc5707385cb7b796a6e953e8bced1569a4e765 100644 |
--- a/lib/compiler/implementation/elements/elements.dart |
+++ b/lib/compiler/implementation/elements/elements.dart |
@@ -813,13 +813,13 @@ class VoidElement extends Element { |
class ClassElement extends ContainerElement { |
final int id; |
- Type type; |
- Type supertype; |
- Type defaultClass; |
+ InterfaceType type; |
+ InterfaceType supertype; |
+ InterfaceType defaultClass; |
Link<Element> members = const EmptyLink<Element>(); |
Map<SourceString, Element> localMembers; |
Map<SourceString, Element> constructors; |
- Link<Type> interfaces = const EmptyLink<Type>(); |
+ Link<InterfaceType> interfaces = const EmptyLink<InterfaceType>(); |
LinkedHashMap<SourceString, TypeVariableElement> typeParameters; |
bool isResolved = false; |
bool isBeingResolved = false; |
@@ -827,7 +827,7 @@ class ClassElement extends ContainerElement { |
// compilation. They don't have any user-side counter-part. |
Link<Element> backendMembers = const EmptyLink<Element>(); |
- Link<Type> allSupertypes; |
+ Link<InterfaceType> allSupertypes; |
ClassElement patch = null; |
Node defaultClause; // Only for interfaces. |
@@ -881,7 +881,7 @@ class ClassElement extends ContainerElement { |
} |
} |
- Type computeType(compiler) { |
+ InterfaceType computeType(compiler) { |
ensureParametersAndType(compiler); |
return type; |
} |
@@ -1211,11 +1211,11 @@ class TargetElement extends Element { |
class TypeVariableElement extends Element { |
final Node node; |
Type bound; |
- Type type; |
+ TypeVariableType type; |
TypeVariableElement(name, Element enclosing, this.node, this.type, |
[this.bound]) |
: super(name, ElementKind.TYPE_VARIABLE, enclosing); |
- Type computeType(compiler) => type; |
+ TypeVariableType computeType(compiler) => type; |
Node parseNode(compiler) => node; |
toString() => "${enclosingElement.toString()}.${name.slowToString()}"; |
} |