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