private static class UnorderedIntervalsSource.UnorderedIntervalIterator extends ConjunctionIntervalIterator
| Modifier and Type | Field and Description |
|---|---|
(package private) int |
end |
(package private) int |
firstEnd |
private int[] |
innerPositions |
private PriorityQueue<IntervalIterator> |
queue |
(package private) int |
queueEnd |
(package private) int |
start |
private IntervalIterator[] |
subIterators |
approximation, costNO_MORE_INTERVALSNO_MORE_DOCS| Constructor and Description |
|---|
UnorderedIntervalIterator(java.util.List<IntervalIterator> subIterators) |
| Modifier and Type | Method and Description |
|---|---|
int |
end()
The end of the current interval
Returns -1 if
IntervalIterator.nextInterval() has not yet been called and IntervalIterator.NO_MORE_INTERVALS
once the iterator is exhausted. |
int |
gaps()
The number of gaps within the current interval
Note that this returns the number of gaps between the immediate sub-intervals
of this interval, and does not include the gaps inside those sub-intervals.
|
int |
nextInterval()
Advance the iterator to the next interval
|
protected void |
reset() |
int |
start()
The start of the current interval
Returns -1 if
IntervalIterator.nextInterval() has not yet been called and IntervalIterator.NO_MORE_INTERVALS
once the iterator is exhausted. |
(package private) void |
updateRightExtreme(IntervalIterator it) |
advance, cost, docID, matchCost, nextDoctoStringall, empty, range, slowAdvanceprivate final PriorityQueue<IntervalIterator> queue
private final IntervalIterator[] subIterators
private final int[] innerPositions
int start
int end
int firstEnd
int queueEnd
UnorderedIntervalIterator(java.util.List<IntervalIterator> subIterators)
public int start()
IntervalIteratorIntervalIterator.nextInterval() has not yet been called and IntervalIterator.NO_MORE_INTERVALS
once the iterator is exhausted.start in class IntervalIteratorpublic int end()
IntervalIteratorIntervalIterator.nextInterval() has not yet been called and IntervalIterator.NO_MORE_INTERVALS
once the iterator is exhausted.end in class IntervalIteratorvoid updateRightExtreme(IntervalIterator it)
public int nextInterval()
throws java.io.IOException
IntervalIteratornextInterval in class IntervalIteratorIntervalIterator.NO_MORE_INTERVALS if
there are no more intervals on the current documentjava.io.IOExceptionpublic int gaps()
IntervalIteratorIntervalIterator.nextInterval(), or after it has returned
IntervalIterator.NO_MORE_INTERVALSgaps in class IntervalIteratorprotected void reset()
throws java.io.IOException
reset in class ConjunctionIntervalIteratorjava.io.IOException