@Override
  public void visitSwitchExpression(@NotNull PsiSwitchExpression expression) {
    PsiCodeBlock body = expression.getBody();
    if (body == null) {
      processSwitch(expression);
      pushUnknown();
    } else {
      startElement(expression);
      PsiType expressionType = expression.getType();
      DfaVariableValue resultVariable = createTempVariable(expressionType);
      enterExpressionBlock(body, Nullability.UNKNOWN, resultVariable, expressionType);
      processSwitch(expression);
      exitExpressionBlock();
      push(resultVariable, expression);
      finishElement(expression);
    }
  }
@Override
  public void visitSwitchExpression(@NotNull PsiSwitchExpression expression)