Example #1
0
        /// <summary>
        /// Visits a <see cref="SerializableUnaryExpression"/>.
        /// </summary>
        /// <param name="expression"><see cref="SerializableUnaryExpression"/> to visit.</param>
        /// <returns>Returns the converted <see cref="Expression"/>.</returns>
        protected override Expression VisitSerializableUnaryExpression(SerializableUnaryExpression expression)
        {
            Expression operand = Visit(expression.Operand);
            Type       type    = (Type)expression.Type.GetClrVersion();
            MethodInfo method  = expression.Method != null ? (MethodInfo)expression.Method.GetClrVersion() : null;

            return(Expression.MakeUnary(expression.NodeType, operand, type, method));
        }
 /// <summary>
 /// Visits a <see cref="SerializableUnaryExpression"/>.
 /// </summary>
 /// <param name="expression"><see cref="SerializableUnaryExpression"/> to visit.</param>
 /// <returns>Returns the converted <see cref="Expression"/>.</returns>
 protected abstract Expression VisitSerializableUnaryExpression(SerializableUnaryExpression expression);
 private Expression VisitUnary(SerializableUnaryExpression u)
 {
     return(Expression.MakeUnary(u.NodeType, Visit(u.Operand), u.Type, u.Method));
 }