equals() fixed for types

This commit is contained in:
Andrey Breslav
2013-06-07 16:24:24 +04:00
parent a6edc21c49
commit 9d248d5c4a
2 changed files with 10 additions and 4 deletions
@@ -96,7 +96,13 @@ public class DeferredType implements JetType {
@Override
public boolean equals(Object obj) {
return getActualType().equals(obj);
if (this == obj) return true;
JetType actualType = getActualType();
if (actualType == obj) return true;
if (!(obj instanceof JetType)) return false;
return TypeUtils.equalTypes(actualType, (JetType) obj);
}
@Override
@@ -102,11 +102,11 @@ public final class JetTypeImpl extends AnnotatedImpl implements JetType {
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
if (!(o instanceof JetType)) return false;
JetTypeImpl type = (JetTypeImpl) o;
JetType type = (JetType) o;
return nullable == type.nullable && JetTypeChecker.INSTANCE.equalTypes(this, type);
return nullable == type.isNullable() && JetTypeChecker.INSTANCE.equalTypes(this, type);
}
@Override