org.apache.lucene.index

Interface TermDocs

Known Subinterfaces:
TermPositions
Known Implementing Classes:
FilterIndexReader.FilterTermDocs, FilterIndexReader.FilterTermPositions, MultipleTermPositions

public interface TermDocs

TermDocs provides an interface for enumerating <document, frequency> pairs for a term.

The document portion names each document containing the term. Documents are indicated by number. The frequency portion gives the number of times the term occurred in each document.

The pairs are ordered by document number.

See Also:
IndexReader.termDocs

Method Summary

void
close()
Frees associated resources.
int
doc()
Returns the current document number.
int
freq()
Returns the frequency of the term within the current document.
boolean
next()
Moves to the next pair in the enumeration.
int
read(int[] docs, int[] freqs)
Attempts to read multiple entries from the enumeration, up to length of docs.
void
seek(Term term)
Sets this to the data for a term.
void
seek(TermEnum termEnum)
Sets this to the data for the current term in a TermEnum.
boolean
skipTo(int target)
Skips entries to the first beyond the current whose document number is greater than or equal to target.

Method Details

close

public void close()
            throws IOException
Frees associated resources.

doc

public int doc()

freq

public int freq()

next

public boolean next()
            throws IOException
Moves to the next pair in the enumeration.

Returns true iff there is such a next pair in the enumeration.


read

public int read(int[] docs,
                int[] freqs)
            throws IOException
Attempts to read multiple entries from the enumeration, up to length of docs. Document numbers are stored in docs, and term frequencies are stored in freqs. The freqs array must be as long as the docs array.

Returns the number of entries read. Zero is only returned when the stream has been exhausted.


seek

public void seek(Term term)
            throws IOException
Sets this to the data for a term. The enumeration is reset to the start of the data for this term.

seek

public void seek(TermEnum termEnum)
            throws IOException
Sets this to the data for the current term in a TermEnum. This may be optimized in some implementations.

skipTo

public boolean skipTo(int target)
            throws IOException
Skips entries to the first beyond the current whose document number is greater than or equal to target.

Returns true iff there is such an entry.

Behaves as if written:

   boolean skipTo(int target) {
     do {
       if (!next())
 	     return false;
     } while (target > doc());
     return true;
   }
 
Some implementations are considerably more efficient than that.

Copyright © 2000-2005 Apache Software Foundation. All Rights Reserved.