/// <summary> /// Initializes the specified expression. /// </summary> /// <param name="expression">The expression.</param> protected override void Initialize(BinaryExpression expression) { Left = Factory.Create(expression.Left); Right = Factory.Create(expression.Right); Conversion = Factory.Create(expression.Conversion); Method = new MethodInfoNode(Factory, expression.Method); IsLiftedToNull = expression.IsLiftedToNull; }
/// <summary> /// Initializes the specified element init. /// </summary> /// <param name="elementInit">The element init.</param> /// <exception cref="System.ArgumentNullException">elementInit</exception> private void Initialize(ElementInit elementInit) { if (elementInit == null) { throw new ArgumentNullException("elementInit"); } AddMethod = new MethodInfoNode(Factory, elementInit.AddMethod); Arguments = new ExpressionNodeList(Factory, elementInit.Arguments); }
protected override void Initialize(MethodCallExpression expression) { Arguments = new ExpressionNodeList(Factory, expression.Arguments); Method = new MethodInfoNode(Factory, expression.Method); Object = Factory.Create(expression.Object); }