PsiExpression (PsiExpression expression) { final PsiElement parent = expression.getParent(); if (parent instanceof PsiPolyadicExpression polyParent && TypeConversionUtil.isNumericType(polyParent.getType())) { final IElementType tokenType = polyParent.getOperationTokenType(); if (!isShiftToken(tokenType) || expression == polyParent.getOperands()[0]) { return getContainingExpression(polyParent); } } if (parent instanceof PsiParenthesizedExpression || parent instanceof PsiPrefixExpression || parent instanceof PsiConditionalExpression) { return getContainingExpression((PsiExpression)parent); } return expression; }