protected override Expression VisitNew(NewExpression node) { return(node.Update(this.VisitArguments(node.Arguments))); }
public static void NullUpdateValidForEmptyParameters() { NewExpression newExp = Expression.New(typeof(Bar).GetConstructor(Type.EmptyTypes)); Assert.Same(newExp, newExp.Update(null)); }
private NewExpression ReplaceInNew(NewExpression newing) { return(newing.Arguments.None() ? newing : newing.Update(newing.Arguments.ProjectToArray(Replace))); }
protected internal virtual Expression VisitNew(NewExpression node) { return(node.Update(Visit(node.Arguments))); }
protected override Expression VisitNew(NewExpression node) { var args = VisitMemberAndExpressionList(node.Arguments, node.Members); return(node.Update(node.Constructor, args, node.Members)); }
/// <summary> /// 访问 <see cref="NewExpression"/>。 /// </summary> /// <param name="newExp">要访问的表达式。</param> /// <returns></returns> protected virtual Expression VisitNew(NewExpression newExp) { var args = VisitMemberAndExpressionList(newExp.Arguments, newExp.Members); return(newExp.Update(newExp.Constructor, args, newExp.Members)); }
NewExpression Convert(NewExpression expr) { return(expr.Update(Process(expr.Arguments))); }