void (@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); } }