public static @NonNls List<String> generateStatements(@NotNull String caseLabelName, @NotNull PsiSwitchBlock switchBlock,
                                                        boolean isRuleBasedFormat, boolean isPatternsGenerated) {
    final String patternVariableName =
      isPatternsGenerated ? " " + new VariableNameGenerator(switchBlock, VariableKind.PARAMETER).byName(
        StringUtil.getShortName(caseLabelName)).generate(false) : "";
    if (switchBlock instanceof PsiSwitchExpression) {
      String value = TypeUtils.getDefaultValue(((PsiSwitchExpression)switchBlock).getType());
      if (isRuleBasedFormat) {
        return Collections.singletonList("case " + caseLabelName + patternVariableName + " -> " + value + ";");
      }
      else {
        return Arrays.asList("case " + caseLabelName + patternVariableName + ":", "yield " + value + ";");
      }
    }
    if (isRuleBasedFormat) {
      return Collections.singletonList("case " + caseLabelName + patternVariableName + " -> {}");
    }
    return Arrays.asList("case " + caseLabelName + patternVariableName + ":", "break;");
  }
public static @NonNls List<String> generateStatements(@NotNull String caseLabelName, @NotNull PsiSwitchBlock switchBlock,
                                                        boolean isRuleBasedFormat, boolean isPatternsGenerated)