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.