mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-05-04 20:30:42 +07:00
Global inspections: track if class is enum to simplify code a bit
(will also be used in the future for better "Unused declaration" inspection messages) GitOrigin-RevId: a24d1d2e01fc7e0644ad06c506bac9d89e39fab3
This commit is contained in:
committed by
intellij-monorepo-bot
parent
cb390d5287
commit
310e3b8f2e
@@ -100,14 +100,7 @@ public class RefJavaUtilImpl extends RefJavaUtil {
|
||||
|
||||
@Override
|
||||
public boolean visitSimpleNameReferenceExpression(@NotNull USimpleNameReferenceExpression node) {
|
||||
final PsiElement target = node.resolve();
|
||||
|
||||
visitReferenceExpression(node);
|
||||
if (target instanceof PsiClass) {
|
||||
final PsiClass aClass = (PsiClass)target;
|
||||
final RefElement refElement = refManager.getReference(aClass);
|
||||
refFrom.addReference(refElement, aClass, decl, false, true, null);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -272,7 +265,7 @@ public class RefJavaUtilImpl extends RefJavaUtil {
|
||||
|
||||
@Override
|
||||
public boolean visitCallableReferenceExpression(@NotNull UCallableReferenceExpression methodRef) {
|
||||
RefElement refMethod = refFrom.getRefManager().getReference(methodRef.getSourcePsi());
|
||||
RefElement refMethod = refManager.getReference(methodRef.getSourcePsi());
|
||||
if (refFrom == refMethod) {
|
||||
visitReferenceExpression(methodRef);
|
||||
return false;
|
||||
@@ -294,7 +287,7 @@ public class RefJavaUtilImpl extends RefJavaUtil {
|
||||
refFrom.addReference(refWhat, aClass, decl, false, true, null);
|
||||
}
|
||||
PsiElement functionalExpr = expression.getSourcePsi();
|
||||
RefElement refFunctionalExpr = refFrom.getRefManager().getReference(functionalExpr);
|
||||
RefElement refFunctionalExpr = refManager.getReference(functionalExpr);
|
||||
if (refFunctionalExpr != null) refFunctionalExpr.waitForInitialized();
|
||||
refFrom.addReference(refFunctionalExpr, functionalExpr, decl, false, true, expression);
|
||||
}
|
||||
@@ -379,15 +372,11 @@ public class RefJavaUtilImpl extends RefJavaUtil {
|
||||
hasConstructorsMarked = true;
|
||||
}
|
||||
|
||||
UClass uClass = refClass.getUastElement();
|
||||
if (uClass != null && uClass.getJavaPsi().isEnum()) {
|
||||
for (RefEntity child : refClass.getChildren()) {
|
||||
if (child instanceof RefFieldImpl) {
|
||||
UField uField = ((RefField)child).getUastElement();
|
||||
if (uField instanceof UEnumConstant) {
|
||||
((RefFieldImpl)child).markReferenced(refFrom, false, true, node);
|
||||
refFrom.addOutReference((RefElement)child);
|
||||
}
|
||||
if (refClass.isEnum()) {
|
||||
for (RefField field : refClass.getFields()) {
|
||||
if (field.isEnumConstant()) {
|
||||
((RefFieldImpl)field).markReferenced(refFrom, false, true, node);
|
||||
refFrom.addOutReference(field);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user