Interface PointValues.IntersectVisitor

All Known Implementing Classes:
CheckIndex.VerifyPointsVisitor
Enclosing class:
PointValues

public static interface PointValues.IntersectVisitor
We recurse the PointValues.PointTree, using a provided instance of this to guide the recursion.
WARNING: This API is experimental and might change in incompatible ways in the next release.
  • Method Summary

    Modifier and Type
    Method
    Description
    compare(byte[] minPackedValue, byte[] maxPackedValue)
    Called for non-leaf cells to test how the cell relates to the query, to determine how to further recurse down the tree.
    default void
    grow(int count)
    Notifies the caller that this many documents are about to be visited
    void
    visit(int docID)
    Called for all documents in a leaf cell that's fully contained by the query.
    void
    visit(int docID, byte[] packedValue)
    Called for all documents in a leaf cell that crosses the query.
    default void
    Similar to visit(int), but a bulk visit and implements may have their optimizations.
    default void
    visit(DocIdSetIterator iterator, byte[] packedValue)
    Similar to visit(int, byte[]) but in this case the packedValue can have more than one docID associated to it.
  • Method Details

    • visit

      void visit(int docID) throws IOException
      Called for all documents in a leaf cell that's fully contained by the query. The consumer should blindly accept the docID.
      Throws:
      IOException
    • visit

      default void visit(DocIdSetIterator iterator) throws IOException
      Similar to visit(int), but a bulk visit and implements may have their optimizations.
      Throws:
      IOException
    • visit

      void visit(int docID, byte[] packedValue) throws IOException
      Called for all documents in a leaf cell that crosses the query. The consumer should scrutinize the packedValue to decide whether to accept it. In the 1D case, values are visited in increasing order, and in the case of ties, in increasing docID order.
      Throws:
      IOException
    • visit

      default void visit(DocIdSetIterator iterator, byte[] packedValue) throws IOException
      Similar to visit(int, byte[]) but in this case the packedValue can have more than one docID associated to it. The provided iterator should not escape the scope of this method so that implementations of PointValues are free to reuse it,
      Throws:
      IOException
    • compare

      PointValues.Relation compare(byte[] minPackedValue, byte[] maxPackedValue)
      Called for non-leaf cells to test how the cell relates to the query, to determine how to further recurse down the tree.
    • grow

      default void grow(int count)
      Notifies the caller that this many documents are about to be visited