protected override Expression VisitUnary(UnaryExpression expression) { ArgumentUtility.CheckNotNull("expression", expression); var vistedExpression = base.VisitUnary(expression); // Testing the parent expression is only required if all children are evaluatable if (_isCurrentSubtreeEvaluatable) { _isCurrentSubtreeEvaluatable = _evaluatableExpressionFilter.IsEvaluatableUnary(expression); } return(vistedExpression); }
protected override Expression VisitUnary(UnaryExpression expression) { if (expression == null) { throw new ArgumentNullException(nameof(expression)); } var vistedExpression = base.VisitUnary(expression); // Testing the parent expression is only required if all children are evaluatable if (IsCurrentSubtreeEvaluatable) { IsCurrentSubtreeEvaluatable = EvaluatableExpressionFilter.IsEvaluatableUnary(expression); } return(vistedExpression); }