protected override Expression VisitNew(NewExpression node)
 {
     return(node.Update(this.VisitArguments(node.Arguments)));
 }
Ejemplo n.º 2
0
        public static void NullUpdateValidForEmptyParameters()
        {
            NewExpression newExp = Expression.New(typeof(Bar).GetConstructor(Type.EmptyTypes));

            Assert.Same(newExp, newExp.Update(null));
        }
Ejemplo n.º 3
0
 private NewExpression ReplaceInNew(NewExpression newing)
 {
     return(newing.Arguments.None()
         ? newing
         : newing.Update(newing.Arguments.ProjectToArray(Replace)));
 }
Ejemplo n.º 4
0
 protected internal virtual Expression VisitNew(NewExpression node)
 {
     return(node.Update(Visit(node.Arguments)));
 }
Ejemplo n.º 5
0
        protected override Expression VisitNew(NewExpression node)
        {
            var args = VisitMemberAndExpressionList(node.Arguments, node.Members);

            return(node.Update(node.Constructor, args, node.Members));
        }
Ejemplo n.º 6
0
        /// <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));
        }
Ejemplo n.º 7
0
 NewExpression Convert(NewExpression expr)
 {
     return(expr.Update(Process(expr.Arguments)));
 }