public boolean skipTo(int target) throws IOException { if (termDocs==null) return false; return termDocs.skipTo(target); }
public boolean skipTo(int target) throws IOException { if (termDocs==null) return false; return termDocs.skipTo(target); }
public boolean skipTo(int i) throws IOException { return in.skipTo(i); } public void close() throws IOException { in.close(); }
public boolean skipTo(int i) throws IOException { return in.skipTo(i); } public void close() throws IOException { in.close(); }
public boolean skipTo(int i) throws IOException { return in.skipTo(i); } public void close() throws IOException { in.close(); }
public boolean skipTo(int target) throws IOException { for(;;) { if (current != null && current.skipTo(target-base)) { return true; } else if (pointer < readers.length) { base = starts[pointer]; current = termDocs(pointer++); } else return false; } }
public boolean skipTo(int target) throws IOException { for(;;) { if (current != null && current.skipTo(target-base)) { return true; } else if (pointer < readers.length) { base = starts[pointer]; current = termDocs(pointer++); } else return false; } }
/** * @inheritDoc */ public final boolean skipTo(int i) throws IOException { boolean exists = in.skipTo(i); while (exists && deleted.get(doc())) { exists = next(); } return exists; } }
List docIds = // doc ids for documents that matched the query, // sorted in ascending order int totalFreq = 0; TermDocs termDocs = reader.termDocs(); termDocs.seek(new Term("my_field", "congress")); for (int id : docIds) { termDocs.skipTo(id); totalFreq += termDocs.freq(); }
/** * @inheritDoc */ public final boolean skipTo(int i) throws IOException { boolean exists = in.skipTo(i); while (exists && deleted.get(doc())) { exists = next(); } return exists; } }
public static Map<Integer, Integer> getFrequencies( final IndexReader reader, final Term term, final int[] docIDs) throws CorruptIndexException, IOException { final Map<Integer, Integer> id2freq = new HashMap<Integer, Integer>(); final TermDocs tds = reader.termDocs(term); if (tds != null) { for (final int docID : docIDs) { // Skip to the next docID tds.skipTo(docID); // Get its term frequency id2freq.put(docID, tds.freq()); } } return id2freq; }
public boolean skipTo(int target) throws IOException { // first scan in cache for (pointer++; pointer < pointerMax; pointer++) { if (docs[pointer] >= target) { doc = docs[pointer]; return true; } } // not found in cache, seek underlying stream boolean result = termDocs.skipTo(target); if (result) { pointerMax = 1; pointer = 0; docs[pointer] = doc = termDocs.doc(); freqs[pointer] = termDocs.freq(); } else { doc = Integer.MAX_VALUE; } return result; }
public boolean skipTo(int i) throws IOException { if (!in.skipTo(i)) return false; if (_nextDelDoc!=DocIdSetIterator.NO_MORE_DOCS){ int doc = in.doc(); if (doc<_nextDelDoc) return true; _nextDelDoc = _delSetIterator.advance(doc); if (doc==_nextDelDoc) return next(); } return true; } }
/** Skips to the first match beyond the current whose document number is * greater than or equal to a given target. * <br>The implementation uses {@link TermDocs#skipTo(int)}. * @param target The target document number. * @return true iff there is such a match. */ public boolean skipTo(int target) throws IOException { // first scan in cache for (pointer++; pointer < pointerMax; pointer++) { if (docs[pointer] >= target) { doc = docs[pointer]; return true; } } // not found in cache, seek underlying stream boolean result = termDocs.skipTo(target); if (result) { pointerMax = 1; pointer = 0; docs[pointer] = doc = termDocs.doc(); freqs[pointer] = termDocs.freq(); } else { doc = Integer.MAX_VALUE; } return result; }
/** Skips to the first match beyond the current whose document number is * greater than or equal to a given target. * <br>The implementation uses {@link TermDocs#skipTo(int)}. * @param target The target document number. * @return true iff there is such a match. */ public boolean skipTo(int target) throws IOException { // first scan in cache for (pointer++; pointer < pointerMax; pointer++) { if (docs[pointer] >= target) { doc = docs[pointer]; return true; } } // not found in cache, seek underlying stream boolean result = termDocs.skipTo(target); if (result) { pointerMax = 1; pointer = 0; docs[pointer] = doc = termDocs.doc(); freqs[pointer] = termDocs.freq(); } else { doc = Integer.MAX_VALUE; } return result; }
/** Skips to the first match beyond the current whose document number is * greater than or equal to a given target. * <br>The implementation uses {@link TermDocs#skipTo(int)}. * @param target The target document number. * @return true iff there is such a match. */ public boolean skipTo(int target) throws IOException { // first scan in cache for (pointer++; pointer < pointerMax; pointer++) { if (docs[pointer] >= target) { doc = docs[pointer]; return true; } } // not found in cache, seek underlying stream boolean result = termDocs.skipTo(target); if (result) { pointerMax = 1; pointer = 0; docs[pointer] = doc = termDocs.doc(); freqs[pointer] = termDocs.freq(); } else { doc = Integer.MAX_VALUE; } return result; }
/** Skips to the first match beyond the current whose document number is * greater than or equal to a given target. * <br>The implementation uses {@link TermDocs#skipTo(int)}. * @param target The target document number. * @return true iff there is such a match. */ public boolean skipTo(int target) throws IOException { // first scan in cache for (pointer++; pointer < pointerMax; pointer++) { if (docs[pointer] >= target) { doc = docs[pointer]; return true; } } // not found in cache, seek underlying stream boolean result = termDocs.skipTo(target); if (result) { pointerMax = 1; pointer = 0; docs[pointer] = doc = termDocs.doc(); freqs[pointer] = termDocs.freq(); } else { doc = Integer.MAX_VALUE; } return result; }
public boolean skipTo(int i) throws IOException { if (!in.skipTo(i)) { return false; } OpenBitSet deletedDocuments = getDeletedDocuments(); while (deletedDocuments.get(in.doc())) { if (!in.next()) { return false; } } return true; }
public boolean skipTo(int i) throws IOException { if (!in.skipTo(i)) { return false; } OpenBitSet deletedDocuments = getDeletedDocuments(); while (deletedDocuments.get(in.doc())) { if (!in.next()) { return false; } } return true; }
@Override public boolean advanceToNextIntersection(final TermDocs termDocs) throws IOException { int currentIterator = this.docIdSetIterator.nextDoc(); if (!termDocs.next()) { return false; } int currentTermDocs = termDocs.doc(); while (currentIterator != currentTermDocs) { if (currentIterator < currentTermDocs) { currentIterator = this.docIdSetIterator.advance(currentTermDocs); if (currentIterator == DocIdSetIterator.NO_MORE_DOCS) { return false; } } else { if (!termDocs.skipTo(currentIterator)) { return false; } currentTermDocs = termDocs.doc(); } } return true; }