protected override Expression VisitChildren (ExpressionTreeVisitor visitor) { var newCases = visitor.VisitList (_cases, p => p.VisitChildren (visitor)); var newElseCase = _elseCase != null ? visitor.VisitExpression (_elseCase) : null; return Update (newCases, newElseCase); }