Class Terms

java.lang.Object
org.apache.lucene.index.Terms
Direct Known Subclasses:
BlockTreeTermsReader.FieldReader, FilterAtomicReader.FilterTerms, MultiTerms

public abstract class Terms extends Object
Access to the terms in a specific field. See Fields.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Terms[]
    Zero-length array of Terms.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Sole constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    Return the BytesRef Comparator used to sort terms provided by the iterator.
    abstract int
    Returns the number of documents that have at least one term for this field, or -1 if this measure isn't stored by the codec.
    abstract long
    Returns the sum of TermsEnum.docFreq() for all terms in this field, or -1 if this measure isn't stored by the codec.
    abstract long
    Returns the sum of TermsEnum.totalTermFreq() for all terms in this field, or -1 if this measure isn't stored by the codec (or if this fields omits term freq and positions).
    abstract boolean
    Returns true if documents in this field store per-document term frequency (DocsEnum.freq()).
    abstract boolean
    Returns true if documents in this field store offsets.
    abstract boolean
    Returns true if documents in this field store payloads.
    abstract boolean
    Returns true if documents in this field store positions.
    intersect(CompiledAutomaton compiled, BytesRef startTerm)
    Returns a TermsEnum that iterates over all terms that are accepted by the provided CompiledAutomaton.
    abstract TermsEnum
    Returns an iterator that will step through all terms.
    abstract long
    Returns the number of terms for this field, or -1 if this measure isn't stored by the codec.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • EMPTY_ARRAY

      public static final Terms[] EMPTY_ARRAY
      Zero-length array of Terms.
  • Constructor Details

    • Terms

      protected Terms()
      Sole constructor. (For invocation by subclass constructors, typically implicit.)
  • Method Details

    • iterator

      public abstract TermsEnum iterator(TermsEnum reuse) throws IOException
      Returns an iterator that will step through all terms. This method will not return null. If you have a previous TermsEnum, for example from a different field, you can pass it for possible reuse if the implementation can do so.
      Throws:
      IOException
    • intersect

      public TermsEnum intersect(CompiledAutomaton compiled, BytesRef startTerm) throws IOException
      Returns a TermsEnum that iterates over all terms that are accepted by the provided CompiledAutomaton. If the startTerm is provided then the returned enum will only accept terms > startTerm, but you still must call next() first to get to the first term. Note that the provided startTerm must be accepted by the automaton.

      NOTE: the returned TermsEnum cannot seek

      .
      Throws:
      IOException
    • getComparator

      public abstract Comparator<BytesRef> getComparator()
      Return the BytesRef Comparator used to sort terms provided by the iterator. This method may return null if there are no terms. This method may be invoked many times; it's best to cache a single instance & reuse it.
    • size

      public abstract long size() throws IOException
      Returns the number of terms for this field, or -1 if this measure isn't stored by the codec. Note that, just like other term measures, this measure does not take deleted documents into account.
      Throws:
      IOException
    • getSumTotalTermFreq

      public abstract long getSumTotalTermFreq() throws IOException
      Returns the sum of TermsEnum.totalTermFreq() for all terms in this field, or -1 if this measure isn't stored by the codec (or if this fields omits term freq and positions). Note that, just like other term measures, this measure does not take deleted documents into account.
      Throws:
      IOException
    • getSumDocFreq

      public abstract long getSumDocFreq() throws IOException
      Returns the sum of TermsEnum.docFreq() for all terms in this field, or -1 if this measure isn't stored by the codec. Note that, just like other term measures, this measure does not take deleted documents into account.
      Throws:
      IOException
    • getDocCount

      public abstract int getDocCount() throws IOException
      Returns the number of documents that have at least one term for this field, or -1 if this measure isn't stored by the codec. Note that, just like other term measures, this measure does not take deleted documents into account.
      Throws:
      IOException
    • hasFreqs

      public abstract boolean hasFreqs()
      Returns true if documents in this field store per-document term frequency (DocsEnum.freq()).
    • hasOffsets

      public abstract boolean hasOffsets()
      Returns true if documents in this field store offsets.
    • hasPositions

      public abstract boolean hasPositions()
      Returns true if documents in this field store positions.
    • hasPayloads

      public abstract boolean hasPayloads()
      Returns true if documents in this field store payloads.