protected virtual Expression VisitBoostBinaryExpression(BoostBinaryExpression expression)
        {
            var binary = VisitExpression(expression.BinaryExpression);

            if (ReferenceEquals(expression.BinaryExpression, binary)) return expression;

            return new BoostBinaryExpression((BinaryExpression) binary, expression.Boost);
        }
        protected override Expression VisitBoostBinaryExpression(BoostBinaryExpression expression)
        {
            var result = base.VisitBoostBinaryExpression(expression);

            var query = queries.Peek();

            query.Boost = expression.Boost;

            return result;
        }