public abstract class IntervalIterator extends DocIdSetIterator
DocIdSetIterator
that also allows iteration over matching
intervals in a document.
Once the iterator is positioned on a document by calling DocIdSetIterator.advance(int)
or DocIdSetIterator.nextDoc()
, intervals may be retrieved by calling nextInterval()
until NO_MORE_INTERVALS
is returned.
The limits of the current interval are returned by start()
and end()
.
When the iterator has been moved to a new document, but before nextInterval()
has been called, both these methods return -1
.
Note that it is possible for a document to return NO_MORE_INTERVALS
on the first call to nextInterval()
Modifier and Type | Field and Description |
---|---|
static int |
NO_MORE_INTERVALS
When returned from
nextInterval() , indicates that there are no more
matching intervals on the current document |
NO_MORE_DOCS
Constructor and Description |
---|
IntervalIterator() |
Modifier and Type | Method and Description |
---|---|
abstract int |
end()
The end of the current interval
Returns -1 if
nextInterval() has not yet been called |
abstract float |
matchCost()
An indication of the average cost of iterating over all intervals in a document
|
abstract int |
nextInterval()
Advance the iterator to the next interval
|
abstract int |
start()
The start of the current interval
Returns -1 if
nextInterval() has not yet been called |
String |
toString() |
advance, all, cost, docID, empty, nextDoc, range, slowAdvance
public static final int NO_MORE_INTERVALS
nextInterval()
, indicates that there are no more
matching intervals on the current documentpublic abstract int start()
nextInterval()
has not yet been calledpublic abstract int end()
nextInterval()
has not yet been calledpublic abstract int nextInterval() throws IOException
NO_MORE_INTERVALS
if
there are no more intervals on the current documentIOException
public abstract float matchCost()
TwoPhaseIterator.matchCost()
Copyright © 2000-2018 Apache Software Foundation. All Rights Reserved.