diff --git a/plugins/InspectionGadgets/src/com/siyeh/ig/controlflow/SwitchStatementWithTooFewBranchesInspection.java b/plugins/InspectionGadgets/src/com/siyeh/ig/controlflow/SwitchStatementWithTooFewBranchesInspection.java index 7ed527e0fc12..8b02c8e0e08f 100644 --- a/plugins/InspectionGadgets/src/com/siyeh/ig/controlflow/SwitchStatementWithTooFewBranchesInspection.java +++ b/plugins/InspectionGadgets/src/com/siyeh/ig/controlflow/SwitchStatementWithTooFewBranchesInspection.java @@ -20,9 +20,7 @@ import com.intellij.codeInsight.daemon.impl.quickfix.UnwrapSwitchLabelFix; import com.intellij.codeInspection.CommonQuickFixBundle; import com.intellij.codeInspection.ProblemDescriptor; import com.intellij.codeInspection.SetInspectionOptionFix; -import com.intellij.codeInspection.ui.InspectionOptionsPanel; import com.intellij.codeInspection.ui.SingleIntegerFieldOptionsPanel; -import com.intellij.java.JavaBundle; import com.intellij.openapi.project.Project; import com.intellij.psi.*; import com.intellij.psi.util.PsiTreeUtil; @@ -33,7 +31,7 @@ import com.siyeh.ig.BaseInspectionVisitor; import com.siyeh.ig.DelegatingFix; import com.siyeh.ig.InspectionGadgetsFix; import com.siyeh.ig.psiutils.SwitchUtils; -import one.util.streamex.StreamEx; +import org.jdom.Element; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -94,6 +92,12 @@ public class SwitchStatementWithTooFewBranchesInspection extends BaseInspection return fixes.toArray(InspectionGadgetsFix.EMPTY_ARRAY); } + @Override + public void writeSettings(@NotNull Element node) { + defaultWriteSettings(node, "ignorePatternSwitch"); + writeBooleanOption(node, "ignorePatternSwitch", false); + } + @Override public BaseInspectionVisitor buildVisitor() { return new MinimumSwitchBranchesVisitor(); diff --git a/plugins/InspectionGadgets/src/inspectionDescriptions/SwitchStatementWithTooFewBranches.html b/plugins/InspectionGadgets/src/inspectionDescriptions/SwitchStatementWithTooFewBranches.html index 9c680d259d20..15dbdb80f9aa 100644 --- a/plugins/InspectionGadgets/src/inspectionDescriptions/SwitchStatementWithTooFewBranches.html +++ b/plugins/InspectionGadgets/src/inspectionDescriptions/SwitchStatementWithTooFewBranches.html @@ -21,5 +21,14 @@ and
Configure the inspection:
Use the Minimum number of branches field to specify the minimum expected number of case labels.
Use the Do not report pattern switch statements option to avoid reporting switch statements and expressions that +have pattern branches. E.g.:
+
+ String result = switch(obj) {
+ case String str -> str.trim();
+ default -> "none";
+ };
+
+It might be preferred to keep the switch even with a single pattern branch, rather than using the instanceof statement.