Index: dart/lib/compiler/implementation/typechecker.dart |
diff --git a/dart/lib/compiler/implementation/typechecker.dart b/dart/lib/compiler/implementation/typechecker.dart |
index 290b68a73e5f58d783a688d94943537d26df3484..8918e9a7a5fed736cfd0fb888b00e08241e9b47a 100644 |
--- a/dart/lib/compiler/implementation/typechecker.dart |
+++ b/dart/lib/compiler/implementation/typechecker.dart |
@@ -93,11 +93,11 @@ class InterfaceType implements Type { |
class FunctionType implements Type { |
final Element element; |
- final Type returnType; |
- final Link<Type> parameterTypes; |
+ Type returnType; |
+ Link<Type> parameterTypes; |
- const FunctionType(Type this.returnType, Link<Type> this.parameterTypes, |
- Element this.element); |
+ FunctionType(Type this.returnType, Link<Type> this.parameterTypes, |
+ Element this.element); |
toString() { |
StringBuffer sb = new StringBuffer(); |
@@ -115,6 +115,13 @@ class FunctionType implements Type { |
parameterTypes.forEach((_) { arity++; }); |
return arity; |
} |
+ |
+ void initializeFrom(FunctionType other) { |
Lasse Reichstein Nielsen
2012/08/13 13:34:48
Again, make this a copy constructor, and keep the
ahe
2012/08/13 15:14:01
I can't :-(
But as Johnni pointed out, this reall
|
+ assert(returnType === null); |
+ assert(parameterTypes === null); |
+ returnType = other.returnType; |
+ parameterTypes = other.parameterTypes; |
+ } |
} |
class Types { |