/// <summary> /// Visits a <see cref="SerializableLambdaExpression"/>. /// </summary> /// <param name="expression"><see cref="SerializableLambdaExpression"/> to visit.</param> /// <returns>Returns the converted <see cref="Expression"/>.</returns> protected override Expression VisitSerializableLambdaExpression(SerializableLambdaExpression expression) { return(Expression.Lambda(Visit(expression.Body), VisitCollection <ParameterExpression>(expression.Parameters).ToArray())); }
/// <summary> /// Visits a <see cref="SerializableLambdaExpression"/>. /// </summary> /// <param name="expression"><see cref="SerializableLambdaExpression"/> to visit.</param> /// <returns>Returns the converted <see cref="Expression"/>.</returns> protected abstract Expression VisitSerializableLambdaExpression(SerializableLambdaExpression expression);
private Expression VisitLambda(SerializableLambdaExpression l) { return(FastExpression.Lambda(l.Type, Visit(l.Body), l.Parameters.Select(p => (ParameterExpression)Visit(p)))); }