boolean (@NonNls String methodName, PsiExpression expression, PsiVariable calledOn) { if (expression instanceof PsiPolyadicExpression polyadicExpression) { for (PsiExpression operand : polyadicExpression.getOperands()) { if (isCallToBooleanZeroArgumentMethod(methodName, operand, calledOn)) { return true; } } return false; } if (!(expression instanceof PsiMethodCallExpression call)) { return false; } if (!MethodCallUtils.isCallToMethod(call, null, PsiTypes.booleanType(), methodName)) { return false; } final PsiReferenceExpression methodExpression = call.getMethodExpression(); final PsiExpression qualifier = methodExpression.getQualifierExpression(); if (!(qualifier instanceof PsiReferenceExpression referenceExpression)) { return true; } final PsiElement target = referenceExpression.resolve(); return calledOn.equals(target); }