示例#1
0
        /// <summary>
        /// Updates the is null.
        /// </summary>
        /// <param name="isnull">The isnull.</param>
        /// <param name="expression">The expression.</param>
        /// <returns></returns>
        protected IsNullExpression UpdateIsNull(IsNullExpression isnull, Expression expression)
        {
            if (expression != isnull.Expression)
            {
                return(new IsNullExpression(expression));
            }

            return(isnull);
        }
示例#2
0
 /// <summary>
 /// Compares the is null.
 /// </summary>
 /// <param name="a">A.</param>
 /// <param name="b">The b.</param>
 /// <returns></returns>
 protected virtual bool CompareIsNull(IsNullExpression a, IsNullExpression b)
 {
     return(this.Compare(a.Expression, b.Expression));
 }
示例#3
0
        /// <summary>
        /// Visits the is null.
        /// </summary>
        /// <param name="isnull">The isnull.</param>
        /// <returns></returns>
        protected virtual Expression VisitIsNull(IsNullExpression isnull)
        {
            var expr = this.Visit(isnull.Expression);

            return(this.UpdateIsNull(isnull, expr));
        }