Class AdaptingHits

  • All Implemented Interfaces:
    Hits

    public class AdaptingHits
    extends Object
    implements Hits
    This is an implementation of Hits which starts with marking hits in an ArrayHits instance and switches to a BitSetHits instance if at least the threshold of 8kb for the ArrayHits is reached and a BitSetHits instance would consume less memory.
    • Constructor Detail

      • AdaptingHits

        public AdaptingHits()
      • AdaptingHits

        public AdaptingHits​(int threshold)
    • Method Detail

      • next

        public int next()
                 throws IOException
        Return the doc number of the next hit in the set. Subsequent calls never return the same doc number.
        Specified by:
        next in interface Hits
        Throws:
        IOException
      • set

        public void set​(int doc)
        Marks the document with doc number doc as a hit. Implementations may throw an exception if you call set() after next() or skipTo() has been called.
        Specified by:
        set in interface Hits
      • skipTo

        public int skipTo​(int target)
                   throws IOException
        Skips to the first match beyond the current whose document number is greater than or equal to the given target. Returns -1 if there is no matching document number greater than target.
        Specified by:
        skipTo in interface Hits
        Throws:
        IOException