DocIdSetIterator that skips non-competitive docs thanks to the indexed impacts. Call
#setMinCompetitiveScore(float) in order to give this iterator the ability to skip
low-scoring documents.
<init>(org.apache.lucene.search.DocIdSetIterator in, org.apache.lucene.search.MaxScoreCache maxScoreCache)Sole constructor.
| name | type | description |
|---|---|---|
| in | org.apache.lucene.search.DocIdSetIterator | the iterator, typically an ImpactsEnum |
| max_score_cache | org.apache.lucene.search.MaxScoreCache | the cache of maximum scores, typically computed from the same ImpactsEnum |
advance(int target)Get the MaxScoreCache.
setMinCompetitiveScore(float minCompetitiveScore) · also: set_min_competitive_scoreSet the minimum competitive score.
nextDoc()| field | type | note |
|---|---|---|
| NO_MORE_DOCS | int | When returned by #nextDoc(), #advance(int) and #docID() it means there
are no more docs in the iterator. |
docIDRunEnd()Returns the end of the run of consecutive doc IDs that match this DocIdSetIterator and
that contains the current #docID(), that is: one plus the last doc ID of the run.
#docID().
[docID(), docIDRunEnd()) match this iterator.
#docIDRunEnd().
Note: It is illegal to call this method when the iterator is exhausted or not positioned.
The default implementation assumes runs of a single doc ID and returns #docID()) +
1.
intoBitSet(int upTo, org.apache.lucene.util.FixedBitSet bitSet, int offset)Load doc IDs into a FixedBitSet. This should behave exactly as if implemented as below,
which is the default implementation:
for (int doc = docID(); doc < upTo; doc = nextDoc()) {
bitSet.set(doc - offset);
}
Note: offset must be less than or equal to the current doc
ID. Behaviour is undefined if this iterator is unpositioned.
Note: It is important not to clear bits from bitSet that may be already set.
Note: offset may be negative.
cost()docID()