void (@NotNull PsiPrefixExpression expression) { super.visitPrefixExpression(expression); if (!JavaTokenType.EXCL.equals(expression.getOperationTokenType())) return; PsiBinaryExpression maybeXor = tryCast(PsiUtil.skipParenthesizedExprDown(expression.getOperand()), PsiBinaryExpression.class); if (maybeXor == null || !JavaTokenType.XOR.equals(maybeXor.getOperationTokenType())) return; final PsiExpression lhs = PsiUtil.skipParenthesizedExprDown(maybeXor.getLOperand()); final PsiExpression rhs = PsiUtil.skipParenthesizedExprDown(maybeXor.getROperand()); if (lhs == null || rhs == null) { return; } registerError(expression, expression); }