@Override public TwoPhaseIterator twoPhaseIterator() { return spans.asTwoPhaseIterator(); }
/** Adds the Spans. */ private static void addSpans(Spans spans, List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators) { TwoPhaseIterator twoPhaseIter = spans.asTwoPhaseIterator(); if (twoPhaseIter != null) { addTwoPhaseIterator(twoPhaseIter, allIterators, twoPhaseIterators); } else { // no approximation support, use the iterator as-is addIterator(spans, allIterators, twoPhaseIterators); } }
@Override public final TwoPhaseIterator asTwoPhaseIterator() { TwoPhaseIterator inner = in.asTwoPhaseIterator(); if (inner != null) {
/** * Return a {@link TwoPhaseIterator} view of this ConjunctionSpans. */ @Override public TwoPhaseIterator asTwoPhaseIterator() { float totalMatchCost = 0; // Compute the matchCost as the total matchCost/positionsCostant of the sub spans. for (Spans spans : subSpans) { TwoPhaseIterator tpi = spans.asTwoPhaseIterator(); if (tpi != null) { totalMatchCost += tpi.matchCost(); } else { totalMatchCost += spans.positionsCost(); } } final float matchCost = totalMatchCost; return new TwoPhaseIterator(conjunction) { @Override public boolean matches() throws IOException { return twoPhaseCurrentDocMatches(); } @Override public float matchCost() { return matchCost; } }; }
public DisiWrapper(Spans spans) { this.scorer = null; this.spans = spans; this.iterator = spans; this.cost = iterator.cost(); this.doc = -1; this.twoPhaseView = spans.asTwoPhaseIterator(); if (twoPhaseView != null) { approximation = twoPhaseView.approximation(); matchCost = twoPhaseView.matchCost(); } else { approximation = iterator; matchCost = 0f; } this.lastApproxNonMatchDoc = -2; this.lastApproxMatchDoc = -2; } }
TwoPhaseIterator excludeTwoPhase = excludeSpans.asTwoPhaseIterator(); DocIdSetIterator excludeApproximation = excludeTwoPhase == null ? null : excludeTwoPhase.approximation();
@Override public TwoPhaseIterator asTwoPhaseIterator() { return in.asTwoPhaseIterator(); }
@Override public TwoPhaseIterator asTwoPhaseIterator() { return in.asTwoPhaseIterator(); }
@Override public TwoPhaseIterator twoPhaseIterator() { return spans.asTwoPhaseIterator(); }
@Override public TwoPhaseIterator twoPhaseIterator() { return spans.asTwoPhaseIterator(); }
@Override public TwoPhaseIterator twoPhaseIterator() { return spans.asTwoPhaseIterator(); }
@Override public TwoPhaseIterator twoPhaseIterator() { return spans.asTwoPhaseIterator(); }
@Override public TwoPhaseIterator asTwoPhaseIterator() { return in.asTwoPhaseIterator(); }
@Override public TwoPhaseIterator asTwoPhaseIterator() { return in.asTwoPhaseIterator(); }
/** Adds the Spans. */ private static void addSpans(Spans spans, List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators) { TwoPhaseIterator twoPhaseIter = spans.asTwoPhaseIterator(); if (twoPhaseIter != null) { addTwoPhaseIterator(twoPhaseIter, allIterators, twoPhaseIterators); } else { // no approximation support, use the iterator as-is addIterator(spans, allIterators, twoPhaseIterators); } }
/** Adds the Spans. */ private static void addSpans(Spans spans, List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators) { TwoPhaseIterator twoPhaseIter = spans.asTwoPhaseIterator(); if (twoPhaseIter != null) { addTwoPhaseIterator(twoPhaseIter, allIterators, twoPhaseIterators); } else { // no approximation support, use the iterator as-is addIterator(spans, allIterators, twoPhaseIterators); } }
/** Adds the Spans. */ private static void addSpans(Spans spans, List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators) { TwoPhaseIterator twoPhaseIter = spans.asTwoPhaseIterator(); if (twoPhaseIter != null) { addTwoPhaseIterator(twoPhaseIter, allIterators, twoPhaseIterators); } else { // no approximation support, use the iterator as-is addIterator(spans, allIterators, twoPhaseIterators); } }
public DisiWrapper(Spans spans) { this.scorer = null; this.spans = spans; this.iterator = spans; this.cost = iterator.cost(); this.doc = -1; this.twoPhaseView = spans.asTwoPhaseIterator(); if (twoPhaseView != null) { approximation = twoPhaseView.approximation(); matchCost = twoPhaseView.matchCost(); } else { approximation = iterator; matchCost = 0f; } this.lastApproxNonMatchDoc = -2; this.lastApproxMatchDoc = -2; } }
public DisiWrapper(Spans spans) { this.scorer = null; this.spans = spans; this.iterator = spans; this.cost = iterator.cost(); this.doc = -1; this.twoPhaseView = spans.asTwoPhaseIterator(); if (twoPhaseView != null) { approximation = twoPhaseView.approximation(); matchCost = twoPhaseView.matchCost(); } else { approximation = iterator; matchCost = 0f; } this.lastApproxNonMatchDoc = -2; this.lastApproxMatchDoc = -2; } }
public DisiWrapper(Spans spans) { this.scorer = null; this.spans = spans; this.iterator = spans; this.cost = iterator.cost(); this.doc = -1; this.twoPhaseView = spans.asTwoPhaseIterator(); if (twoPhaseView != null) { approximation = twoPhaseView.approximation(); matchCost = twoPhaseView.matchCost(); } else { approximation = iterator; matchCost = 0f; } this.lastApproxNonMatchDoc = -2; this.lastApproxMatchDoc = -2; } }