Equals for JetLightClass
This commit is contained in:
@@ -46,7 +46,9 @@ import org.jetbrains.jet.lang.psi.JetClass;
|
||||
import org.jetbrains.jet.lang.psi.JetFile;
|
||||
import org.jetbrains.jet.lang.psi.JetFunction;
|
||||
import org.jetbrains.jet.lang.psi.JetPsiUtil;
|
||||
import org.jetbrains.jet.lang.resolve.java.*;
|
||||
import org.jetbrains.jet.lang.resolve.java.AnalyzerFacadeForJVM;
|
||||
import org.jetbrains.jet.lang.resolve.java.JetFilesProvider;
|
||||
import org.jetbrains.jet.lang.resolve.java.JetJavaMirrorMarker;
|
||||
import org.jetbrains.jet.lang.resolve.name.FqName;
|
||||
import org.jetbrains.jet.plugin.JetLanguage;
|
||||
import org.jetbrains.jet.util.QualifiedNamesUtil;
|
||||
@@ -236,6 +238,30 @@ public class JetLightClass extends AbstractLightClass implements JetJavaMirrorMa
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
int result = getManager().hashCode();
|
||||
result = 31 * result + file.hashCode();
|
||||
result = 31 * result + qualifiedName.hashCode();
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
if (this == obj) return true;
|
||||
if (obj == null || getClass() != obj.getClass()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
JetLightClass lightClass = (JetLightClass) obj;
|
||||
|
||||
if (getManager() != lightClass.getManager()) return false;
|
||||
if (!file.equals(lightClass.file)) return false;
|
||||
if (!qualifiedName.equals(lightClass.qualifiedName)) return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static JetLightClass wrapDelegate(JetClass jetClass) {
|
||||
return new JetLightClass(jetClass.getManager(), (JetFile) jetClass.getContainingFile(), JetPsiUtil.getFQName(jetClass));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user