private static class ConjunctionDISI.TwoPhase extends ConjunctionDISI
TwoPhaseIterators.
Another important difference with ConjunctionDISI is that this
implementation supports approximations too: the approximation of this
impl is the conjunction of the approximations of the wrapped iterators.
This allows eg. +"A B" +C to be approximated as
+(+A +B) +C.| Modifier and Type | Field and Description |
|---|---|
(package private) ConjunctionDISI.TwoPhaseConjunctionDISI |
twoPhaseView |
lead, othersNO_MORE_DOCS| Modifier | Constructor and Description |
|---|---|
private |
TwoPhase(java.util.List<? extends DocIdSetIterator> iterators,
java.util.List<TwoPhaseIterator> twoPhaseIterators) |
| Modifier and Type | Method and Description |
|---|---|
ConjunctionDISI.TwoPhaseConjunctionDISI |
asTwoPhaseIterator() |
protected boolean |
matches() |
advance, cost, docID, intersectIterators, intersectScorers, intersectSpans, nextDocall, empty, slowAdvancefinal ConjunctionDISI.TwoPhaseConjunctionDISI twoPhaseView
private TwoPhase(java.util.List<? extends DocIdSetIterator> iterators, java.util.List<TwoPhaseIterator> twoPhaseIterators)
public ConjunctionDISI.TwoPhaseConjunctionDISI asTwoPhaseIterator()
asTwoPhaseIterator in class ConjunctionDISIprotected boolean matches()
throws java.io.IOException
matches in class ConjunctionDISIjava.io.IOException