PsiReferenceExpression (PsiExpression expression) { if (!(expression instanceof PsiPolyadicExpression polyadicExpression)) return null; final IElementType tokenType = polyadicExpression.getOperationTokenType(); if (JavaTokenType.OROR != tokenType) return null; final PsiExpression[] operands = polyadicExpression.getOperands(); final PsiReferenceExpression referenceExpression = getReferenceFromImplicitNullCheckExpression(operands[0]); if (referenceExpression == null) return null; final PsiVariable variable = tryCast(referenceExpression.resolve(), PsiVariable.class); if (variable == null) return null; for (int i = 1, operandsLength = operands.length; i < operandsLength; i++) { final PsiReferenceExpression reference2 = getReferenceFromImplicitNullCheckExpression(operands[i]); if (reference2 == null || !reference2.isReferenceTo(variable)) { return null; } } return referenceExpression; }