mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
unnecessary inner class qualification inspection: avoid cases when resulted class won't be accessed in the call place (IDEA-78144); fix test data accordingly
This commit is contained in:
+2
-4
@@ -168,8 +168,7 @@ public class UnnecessarilyQualifiedInnerClassAccessInspection
|
||||
visitReferenceElement(expression);
|
||||
}
|
||||
|
||||
private boolean isReferenceToTarget(
|
||||
String referenceText, PsiClass target, PsiElement context) {
|
||||
private boolean isReferenceToTarget(String referenceText, PsiClass target, PsiElement context) {
|
||||
final PsiManager manager = target.getManager();
|
||||
final JavaPsiFacade facade =
|
||||
JavaPsiFacade.getInstance(manager.getProject());
|
||||
@@ -177,8 +176,7 @@ public class UnnecessarilyQualifiedInnerClassAccessInspection
|
||||
final PsiClass referencedClass =
|
||||
resolveHelper.resolveReferencedClass(referenceText,
|
||||
context);
|
||||
return referencedClass == null ||
|
||||
manager.areElementsEquivalent(target, referencedClass);
|
||||
return manager.areElementsEquivalent(target, referencedClass);
|
||||
}
|
||||
|
||||
private boolean isInImportOrPackage(PsiElement element) {
|
||||
|
||||
+8
-1
@@ -29,4 +29,11 @@ public class Test<T> {
|
||||
}
|
||||
@interface Y {
|
||||
Class value();
|
||||
}
|
||||
}
|
||||
|
||||
class Foo extends PresenterWidget<Foo.Bar> { //no warning as Bar here is not accessible
|
||||
interface Bar extends View { }
|
||||
}
|
||||
|
||||
interface View {}
|
||||
class PresenterWidget<T>{}
|
||||
-14
@@ -1,19 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<problems>
|
||||
|
||||
<problem>
|
||||
<file>Test.java</file>
|
||||
<line>3</line>
|
||||
<problem_class severity="WARNING" attribute_key="WARNING_ATTRIBUTES">Unnecessarily qualified inner class access</problem_class>
|
||||
<description>'X' is unnecessarily qualified with <code>Test</code> #loc</description>
|
||||
</problem>
|
||||
|
||||
<problem>
|
||||
<file>Test.java</file>
|
||||
<line>7</line>
|
||||
<problem_class severity="WARNING" attribute_key="WARNING_ATTRIBUTES">Unnecessarily qualified inner class access</problem_class>
|
||||
<description>'Entry' is unnecessarily qualified with <code>Map</code> #loc</description>
|
||||
</problem>
|
||||
|
||||
<problem>
|
||||
<file>Test.java</file>
|
||||
|
||||
Reference in New Issue
Block a user