VisitParameter が各パラメータを 2 回出力するのはなぜですか?
class MyExpressionVisitor : ExpressionVisitor
{
protected override Expression VisitParameter(ParameterExpression node)
{
Console.WriteLine(node.Name);
Console.WriteLine("*************************");
return base.VisitParameter(node);
}
}
class Program
{
public static void Main(string[] args)
{
Expression<Func<int,int int>> someExpr = (x,y) => x + y + 1;
var myVisitor = new MyExpressionVisitor();
myVisitor.Visit(someExpr);
Console.ReadKey();
}
}
結果:
バツ
y
バツ
y