Marten.Linq.NotVisitor.VisitBinary C# (CSharp) Method

VisitBinary() protected method

protected VisitBinary ( BinaryExpression expression ) : Expression
expression System.Linq.Expressions.BinaryExpression
return System.Linq.Expressions.Expression
        protected override Expression VisitBinary(BinaryExpression expression)
        {
            if (expression.Type == typeof (bool) && expression.NodeType == ExpressionType.NotEqual)
            {
                var binaryExpression = expression.As<BinaryExpression>();
                var locator = _mapping.JsonLocator(binaryExpression.Left);
                if (binaryExpression.Right.NodeType == ExpressionType.Constant &&
                    binaryExpression.Right.As<ConstantExpression>().Value == null)
                {
                    var @where = new WhereFragment($"({locator}) IS NULL");
                    _callback(@where);
                }
            }

            return base.VisitBinary(expression);
        }
    }