public SwitchExpression Update(Expression switchValue, IEnumerable<SwitchCase> cases, Expression defaultBody) { if (switchValue == SwitchValue && cases == Cases && defaultBody == DefaultBody) { return this; } return Expression.Switch(Type, switchValue, defaultBody, Comparison, cases); } }
private Expression VisitSwitchExtracted(SwitchExpression node) { var visitedSwitchValue = node.SwitchValue; var visitedCases = Visit(node.Cases, VisitSwitchCase); var visitedDefaultBody = Visit(node.DefaultBody); var updated = node.Update(visitedSwitchValue, visitedCases, visitedDefaultBody); return(ValidateSwitch(node, updated)); }