mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-20 05:21:29 +07:00
[java-highlighting] IJ-CR-140387 IDEA-356470 Support jep 455. Generate true and false cases for boolean selector
- support constants GitOrigin-RevId: ff51020da5086de2e59439647588e8b5c4ba4c85
This commit is contained in:
committed by
intellij-monorepo-bot
parent
616898e4c9
commit
01b39de56a
@@ -4,6 +4,7 @@ package com.siyeh.ig.fixes;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.siyeh.InspectionGadgetsBundle;
|
||||
import com.siyeh.ig.psiutils.ExpressionUtils;
|
||||
import com.siyeh.ig.psiutils.SwitchUtils;
|
||||
import org.jetbrains.annotations.Nls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -40,8 +41,8 @@ public final class CreateMissingBooleanPrimitiveBranchesFix extends CreateMissin
|
||||
PsiType type = patternVariable.getType();
|
||||
if (type.isAssignableFrom(boxedBooleanType)) return null;
|
||||
}
|
||||
if (branch instanceof PsiLiteralExpression literal && literal.getValue() instanceof Boolean) {
|
||||
existed.add(literal.getText());
|
||||
if (branch instanceof PsiExpression expression && ExpressionUtils.computeConstantExpression(expression) instanceof Boolean booleanValue) {
|
||||
existed.add(booleanValue.toString());
|
||||
}
|
||||
}
|
||||
List<String> missed = new ArrayList<>();
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
// "Create missing switch branch 'false'" "true-preview"
|
||||
import java.util.List;
|
||||
|
||||
class Test {
|
||||
public static void main(String[] args) {
|
||||
test(true);
|
||||
}
|
||||
|
||||
private static final boolean yes = true;
|
||||
|
||||
public static void test(boolean b) {
|
||||
switch (b){
|
||||
case yes -> {
|
||||
}
|
||||
case false -> {
|
||||
}
|
||||
}
|
||||
}e
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// "Create missing switch branch 'false'" "true-preview"
|
||||
import java.util.List;
|
||||
|
||||
class Test {
|
||||
public static void main(String[] args) {
|
||||
test(true);
|
||||
}
|
||||
|
||||
private static final boolean yes = true;
|
||||
|
||||
public static void test(boolean b) {
|
||||
switch (b<caret>){
|
||||
case yes -> {
|
||||
}
|
||||
}
|
||||
}e
|
||||
}
|
||||
Reference in New Issue
Block a user