[][src]Module tantivy::termdict

The term dictionary main role is to associate the sorted Terms to a TermInfo struct that contains some meta-information about the term.

Internally, the term dictionary relies on the fst crate to store a sorted mapping that associate each term to its rank in the lexicographical order. For instance, in a dictionary containing the sorted terms "abba", "bjork", "blur" and "donovan", the TermOrdinal are respectively 0, 1, 2, and 3.

For u64-terms, tantivy explicitely uses a BigEndian representation to ensure that the lexicographical order matches the natural order of integers.

i64-terms are transformed to u64 using a continuous mapping val ⟶ val - i64::min_value() and then treated as a u64.

f64-terms are transformed to u64 using a mapping that preserve order, and are then treated as u64.

A second datastructure makes it possible to access a TermInfo.



The term dictionary contains all of the terms in tantivy index in a sorted manner.


Builder for the new term dictionary.


Given a list of sorted term streams, returns an iterator over sorted unique terms.


TermStreamer acts as a cursor over a range of terms of a segment. Terms are guaranteed to be sorted.


TermStreamerBuilder is a helper object used to define a range of terms that should be streamed.

Type Definitions


Position of the term in the sorted list of terms.