mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
NullnessUtil#getExpressionNullness: fixed for reference expressions
This commit is contained in:
@@ -172,10 +172,6 @@ public class NullnessUtil {
|
||||
if (expression instanceof PsiTypeCastExpression) {
|
||||
return getExpressionNullness(((PsiTypeCastExpression)expression).getOperand(), useDataflow);
|
||||
}
|
||||
if (expression instanceof PsiReferenceExpression) {
|
||||
PsiElement target = ((PsiReferenceExpression)expression).resolve();
|
||||
return DfaPsiUtil.getElementNullability(expression.getType(), (PsiModifierListOwner)target);
|
||||
}
|
||||
if (expression instanceof PsiAssignmentExpression) {
|
||||
PsiAssignmentExpression assignment = (PsiAssignmentExpression)expression;
|
||||
if(assignment.getOperationTokenType().equals(JavaTokenType.EQ)) {
|
||||
@@ -186,6 +182,10 @@ public class NullnessUtil {
|
||||
if (useDataflow) {
|
||||
return fromBoolean(CommonDataflow.getExpressionFact(expression, DfaFactType.CAN_BE_NULL));
|
||||
}
|
||||
if (expression instanceof PsiReferenceExpression) {
|
||||
PsiElement target = ((PsiReferenceExpression)expression).resolve();
|
||||
return DfaPsiUtil.getElementNullability(expression.getType(), (PsiModifierListOwner)target);
|
||||
}
|
||||
if (expression instanceof PsiMethodCallExpression) {
|
||||
PsiMethod method = ((PsiMethodCallExpression)expression).resolveMethod();
|
||||
return method != null ? DfaPsiUtil.getElementNullability(expression.getType(), method) : Nullness.UNKNOWN;
|
||||
|
||||
Reference in New Issue
Block a user