public Expression SplitPotentialCompoundComparison (SqlIsNotNullExpression potentialCompoundComparison)
{
ArgumentUtility.CheckNotNull ("potentialCompoundComparison", potentialCompoundComparison);
var innerExpressionAsNewExpression = potentialCompoundComparison.Expression as NewExpression;
if (innerExpressionAsNewExpression != null)
{
if (innerExpressionAsNewExpression.Arguments.Count == 0)
return Expression.Constant (true);
return innerExpressionAsNewExpression.Arguments
.Select (arg => (Expression) new SqlIsNotNullExpression (arg))
.Aggregate (Expression.OrElse);
}
return potentialCompoundComparison;
}