SimplifyBooleanExpressionAction: do not warn on x = (true)

This commit is contained in:
Tagir Valeev
2018-07-04 17:51:32 +07:00
parent 10d50eb603
commit ee8d7915e8
2 changed files with 10 additions and 1 deletions

View File

@@ -60,7 +60,9 @@ public class SimplifyBooleanExpressionAction implements IntentionAction{
if (element == null) return null;
PsiExpression expression = PsiTreeUtil.getParentOfType(element, PsiExpression.class);
PsiElement parent = expression;
while (parent instanceof PsiExpression && (PsiType.BOOLEAN.equals(((PsiExpression)parent).getType()) || parent instanceof PsiConditionalExpression)) {
while (parent instanceof PsiExpression &&
!(parent instanceof PsiAssignmentExpression) &&
(PsiType.BOOLEAN.equals(((PsiExpression)parent).getType()) || parent instanceof PsiConditionalExpression)) {
expression = (PsiExpression)parent;
parent = parent.getParent();
}

View File

@@ -0,0 +1,7 @@
// "Simplify boolean expression" "false"
class X {
void f() {
boolean x;
x = (<caret>false); // Another action "Remove redundant parentheses" is ok here
}
}