BytesRefSorter (Lucene 10.5.1 suggest API)
Description: declaration: package: org.apache.lucene.search.suggest.fst, interface: BytesRefSorter

Package org.apache.lucene.search.suggest.fst

# Interface BytesRefSorter

All Known Implementing Classes:
  `ExternalRefSorter`, `InMemorySorter`

public interface BytesRefSorter
Collects `BytesRef` and then allows one to iterate over their sorted order. Implementations of this interface will be called in a single-threaded scenario.

WARNING: This API is experimental and might change in incompatible ways in the next release.
NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `add(BytesRef utf8)`
  Adds a single suggestion entry (possibly compound with its bucket).
  `Comparator<BytesRef>`
  `getComparator()`
  Comparator used to determine the sort order of entries.
  `BytesRefIterator`
  `iterator()`
  Sorts the entries added in `add(BytesRef)` and returns an iterator over all sorted entries.

- ## Method Details

  - ### add

    void add(BytesRef utf8) throws IOException, IllegalStateException
    Adds a single suggestion entry (possibly compound with its bucket).
    Throws:
      `IOException` - If an I/O exception occurs.
      `IllegalStateException` - If an addition attempt is performed after a call to `iterator()` has been made.

  - ### iterator

    BytesRefIterator iterator() throws IOException
    Sorts the entries added in `add(BytesRef)` and returns an iterator over all sorted entries.
    Throws:
      `IOException` - If an I/O exception occurs.

  - ### getComparator

    Comparator<BytesRef> getComparator()
    Comparator used to determine the sort order of entries.