refactor [java]: Extract PsiImplUtil.isTypeQualifierOfStaticMember() out of AnnotationChecker

GitOrigin-RevId: ec17169848b689d83b72039626b44aa5e8e311a2
This commit is contained in:
Marcin Mikosik
2026-02-12 20:01:14 +00:00
committed by intellij-monorepo-bot
parent 4d44085484
commit 100f749763
2 changed files with 26 additions and 14 deletions
@@ -33,7 +33,6 @@ import com.intellij.psi.PsiErrorElement;
import com.intellij.psi.PsiExpression;
import com.intellij.psi.PsiIdentifier;
import com.intellij.psi.PsiJavaCodeReferenceElement;
import com.intellij.psi.PsiMember;
import com.intellij.psi.PsiMethod;
import com.intellij.psi.PsiModifier;
import com.intellij.psi.PsiModifierList;
@@ -109,19 +108,8 @@ final class AnnotationChecker {
return;
}
PsiElement parent = ref.getParent();
while (parent instanceof PsiJavaCodeReferenceElement referenceElement) {
PsiElement qualified = referenceElement.resolve();
if (qualified instanceof PsiMember member && member.hasModifierProperty(PsiModifier.STATIC)) {
myVisitor.report(JavaErrorKinds.ANNOTATION_NOT_ALLOWED_STATIC.create(annotation));
return;
}
if (qualified instanceof PsiClass) {
parent = parent.getParent();
}
else {
break;
}
if (PsiImplUtil.isTypeQualifierOfStaticMember(ref)) {
myVisitor.report(JavaErrorKinds.ANNOTATION_NOT_ALLOWED_STATIC.create(annotation));
}
}