[Xapian-tickets] [Xapian] #193: Check that NumberValueRangeProcessor::apply() is usable from bindings
Xapian
nobody at xapian.org
Thu Apr 16 06:27:56 BST 2015
#193: Check that NumberValueRangeProcessor::apply() is usable from bindings
-----------------------------+-----------------------------
Reporter: daniel | Owner: olly
Type: defect | Status: assigned
Priority: normal | Milestone: 1.3.x
Component: Xapian-bindings | Version: 1.0.2
Severity: normal | Resolution:
Keywords: | Blocked By:
Blocking: | Operating System: All
-----------------------------+-----------------------------
Comment (by olly):
It would be nicer if the range was returned as a `Query` object, as that
could do neat things like optimising to use filter terms to narrow the
range. With that change, the (in)ability to pass strings by reference and
have modified values returned wouldn't be an issue.
The issues I see with such a change are:
* migration - I think we could provide a `RangeProcessor` that works the
new way (since it isn't inherently linked to values), and deprecate
`ValueRangeProcessor`, handling it via a `RangeProcessor` subclass which
adapts the result.
* `QueryParser` wants to know which slot the range is for, so it knows
about combining ranges on the same slot with `OP_OR` and then combine
these groups with `OP_AND`. That isn't unsurmountable, but would probably
need us to return both a `Query` object and some sort of string or number
"key" to identify the type of range. Or perhaps this is an overly fussy
little detail, which most people wouldn't expect us to worry about.
`FieldProcessor` just returns a `Query` object after all.
--
Ticket URL: <http://trac.xapian.org/ticket/193#comment:23>
Xapian <http://xapian.org/>
Xapian
More information about the Xapian-tickets
mailing list