mirror of
https://github.com/alibaba/p3c.git
synced 2025-10-14 15:10:54 +00:00
do not check array and class starts with java. or javax.
This commit is contained in:
@@ -171,16 +171,20 @@ class MapOrSetKeyShouldOverrideHashCodeEqualsInspection : BaseInspection, AliBas
|
||||
|
||||
companion object {
|
||||
|
||||
private val skipJdkPackageJava = "java."
|
||||
private val skipJdkPackageJavax = "javax."
|
||||
|
||||
private fun redefineHashCodeEquals(psiType: PsiType): Boolean {
|
||||
if (psiType !is PsiClassType) {
|
||||
return true
|
||||
}
|
||||
val psiClass = psiType.resolve()
|
||||
if (psiClass == null || psiClass.containingFile == null || psiClass is PsiTypeParameter
|
||||
|| psiClass.isEnum || psiClass.isInterface) {
|
||||
return true
|
||||
}
|
||||
if (psiClass.containingFile.fileType !is JavaFileType) {
|
||||
val psiClass = psiType.resolve() ?: return false
|
||||
val skip = psiClass.containingFile == null || psiClass is PsiTypeParameter
|
||||
|| psiClass.isEnum || psiClass.isInterface
|
||||
|| psiClass.containingFile.fileType !is JavaFileType
|
||||
|| psiClass.qualifiedName?.startsWith(skipJdkPackageJava) ?: false
|
||||
|| psiClass.qualifiedName?.startsWith(skipJdkPackageJavax) ?: false
|
||||
if (skip) {
|
||||
return true
|
||||
}
|
||||
val hashCodeMethods = psiClass.findMethodsByName(ObjectConstants.METHOD_NAME_HASHCODE, false)
|
||||
|
Reference in New Issue
Block a user