# Uses of Class
org.apache.lucene.search.TopDocs

Packages that use TopDocs
Package
Description
org.apache.lucene.index
Code to maintain and access indices.
org.apache.lucene.search
Code to search indices.
org.apache.lucene.util.hnsw
Navigable Small-World graph, nominally Hierarchical but currently only has a single layer.

- ## Uses of TopDocs in org.apache.lucene.index

  Methods in org.apache.lucene.index that return TopDocs
  Modifier and Type
  Method
  Description
  `final TopDocs`
  LeafReader.`searchNearestVectors(String field, byte[] target, int k, AcceptDocs acceptDocs, int visitedLimit)`
  Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function.
  `final TopDocs`
  LeafReader.`searchNearestVectors(String field, float[] target, int k, AcceptDocs acceptDocs, int visitedLimit)`
  Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function.

- ## Uses of TopDocs in org.apache.lucene.search

  Subclasses of TopDocs in org.apache.lucene.search
  Modifier and Type
  Class
  Description
  `class`
  `TopFieldDocs`
  Represents hits returned by `IndexSearcher.search(Query,int,Sort)`.
  Fields in org.apache.lucene.search declared as TopDocs
  Modifier and Type
  Field
  Description
  `static final TopDocs`
  TopDocsCollector.`EMPTY_TOPDOCS`
  This is used in case topDocs() is called with illegal parameters, or there simply aren't (enough) results.
  Methods in org.apache.lucene.search that return TopDocs
  Modifier and Type
  Method
  Description
  `protected TopDocs`
  ByteVectorSimilarityQuery.`approximateSearch(LeafReaderContext context, AcceptDocs acceptDocs, int visitLimit, KnnCollectorManager knnCollectorManager)`
  `protected TopDocs`
  FloatVectorSimilarityQuery.`approximateSearch(LeafReaderContext context, AcceptDocs acceptDocs, int visitLimit, KnnCollectorManager knnCollectorManager)`
  `protected TopDocs`
  KnnByteVectorQuery.`approximateSearch(LeafReaderContext context, AcceptDocs acceptDocs, int visitedLimit, KnnCollectorManager knnCollectorManager)`
  `protected TopDocs`
  KnnFloatVectorQuery.`approximateSearch(LeafReaderContext context, AcceptDocs acceptDocs, int visitedLimit, KnnCollectorManager knnCollectorManager)`
  `protected TopDocs`
  PatienceKnnVectorQuery.`approximateSearch(LeafReaderContext context, AcceptDocs acceptDocs, int visitedLimit, KnnCollectorManager knnCollectorManager)`
  `protected TopDocs`
  SeededKnnVectorQuery.`approximateSearch(LeafReaderContext context, AcceptDocs acceptDocs, int visitedLimit, KnnCollectorManager knnCollectorManager)`
  `protected TopDocs`
  PatienceKnnVectorQuery.`exactSearch(LeafReaderContext context, DocIdSetIterator acceptIterator, QueryTimeout queryTimeout)`
  `protected TopDocs`
  SeededKnnVectorQuery.`exactSearch(LeafReaderContext context, DocIdSetIterator acceptIterator, QueryTimeout queryTimeout)`
  `static TopDocs`
  TopDocs.`merge(int start, int topN, TopDocs[] shardHits)`
  Same as `merge(int, TopDocs[])` but also ignores the top `start` top docs.
  `static TopDocs`
  TopDocs.`merge(int start, int topN, TopDocs[] shardHits, Comparator<ScoreDoc> tieBreaker)`
  Same as above, but accepts the passed in tie breaker
  `static TopDocs`
  TopDocs.`merge(int topN, TopDocs[] shardHits)`
  Returns a new TopDocs, containing topN results across the provided TopDocs, sorting by score.
  `protected TopDocs`
  PatienceKnnVectorQuery.`mergeLeafResults(TopDocs[] perLeafResults)`
  `protected TopDocs`
  SeededKnnVectorQuery.`mergeLeafResults(TopDocs[] perLeafResults)`
  `protected TopDocs`
  TopDocsCollector.`newTopDocs(ScoreDoc[] results, int start)`
  Returns a `TopDocs` instance containing the given results.
  `protected TopDocs`
  TopFieldCollector.`newTopDocs(ScoreDoc[] results, int start)`
  `protected TopDocs`
  TopScoreDocCollector.`newTopDocs(ScoreDoc[] results, int start)`
  `TopDocs`
  TopScoreDocCollectorManager.`reduce(Collection<TopScoreDocCollector> collectors)`
  `TopDocs`
  DoubleValuesSourceRescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  `TopDocs`
  QueryRescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  `static TopDocs`
  QueryRescorer.`rescore(IndexSearcher searcher, TopDocs topDocs, Query query, double weight, int topN)`
  Sugar API, calling {#rescore} using a simple linear combination of firstPassScore + weight * secondPassScore
  `abstract TopDocs`
  Rescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  Rescore an initial first-pass `TopDocs`.
  `TopDocs`
  SortRescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  `static TopDocs`
  TopDocs.`rrf(int topN, int k, TopDocs[] hits)`
  Reciprocal Rank Fusion method.
  `TopDocs`
  IndexSearcher.`search(Query query, int n)`
  Finds the top `n` hits for `query`.
  `TopDocs`
  IndexSearcher.`searchAfter(ScoreDoc after, Query query, int numHits)`
  Finds the top `n` hits for `query` where all results are after a previous result (`after`).
  `TopDocs`
  IndexSearcher.`searchAfter(ScoreDoc after, Query query, int n, Sort sort)`
  Finds the top `n` hits for `query` where all results are after a previous result (`after`).
  `abstract TopDocs`
  AbstractKnnCollector.`topDocs()`
  `TopDocs`
  HnswQueueSaturationCollector.`topDocs()`
  `TopDocs`
  KnnCollector.Decorator.`topDocs()`
  `TopDocs`
  KnnCollector.`topDocs()`
  This drains the collected nearest kNN results and returns them in a new `TopDocs` collection, ordered by score descending.
  `TopDocs`
  TopDocsCollector.`topDocs()`
  Returns the top docs that were collected by this collector.
  `TopDocs`
  TopDocsCollector.`topDocs(int start)`
  Returns the documents in the range [start ..
  `TopDocs`
  TopDocsCollector.`topDocs(int start, int howMany)`
  Returns the documents in the range [start ..
  `TopDocs`
  TopKnnCollector.`topDocs()`
  Methods in org.apache.lucene.search with parameters of type TopDocs
  Modifier and Type
  Method
  Description
  `static TopDocs`
  TopDocs.`merge(int start, int topN, TopDocs[] shardHits)`
  Same as `merge(int, TopDocs[])` but also ignores the top `start` top docs.
  `static TopDocs`
  TopDocs.`merge(int start, int topN, TopDocs[] shardHits, Comparator<ScoreDoc> tieBreaker)`
  Same as above, but accepts the passed in tie breaker
  `static TopDocs`
  TopDocs.`merge(int topN, TopDocs[] shardHits)`
  Returns a new TopDocs, containing topN results across the provided TopDocs, sorting by score.
  `protected TopDocs`
  PatienceKnnVectorQuery.`mergeLeafResults(TopDocs[] perLeafResults)`
  `protected TopDocs`
  SeededKnnVectorQuery.`mergeLeafResults(TopDocs[] perLeafResults)`
  `TopDocs`
  DoubleValuesSourceRescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  `TopDocs`
  QueryRescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  `static TopDocs`
  QueryRescorer.`rescore(IndexSearcher searcher, TopDocs topDocs, Query query, double weight, int topN)`
  Sugar API, calling {#rescore} using a simple linear combination of firstPassScore + weight * secondPassScore
  `abstract TopDocs`
  Rescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  Rescore an initial first-pass `TopDocs`.
  `TopDocs`
  SortRescorer.`rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN)`
  `static TopDocs`
  TopDocs.`rrf(int topN, int k, TopDocs[] hits)`
  Reciprocal Rank Fusion method.

- ## Uses of TopDocs in org.apache.lucene.util.hnsw

  Methods in org.apache.lucene.util.hnsw that return TopDocs
  Modifier and Type
  Method
  Description
  `TopDocs`
  HnswGraphBuilder.GraphBuilderKnnCollector.`topDocs()`
  `TopDocs`
  OrdinalTranslatedKnnCollector.`topDocs()`