org.apache.lucene.index

## Interface PointValues.IntersectVisitor

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

      public static interface PointValues.IntersectVisitor

  We recurse the BKD tree, 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

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.
    `default void` | `grow(int count)` Notifies the caller that this many documents are about to be visited
    `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.
    `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.

- - ### Method Detail

    - #### 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

          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

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