## Uses of Class
org.apache.lucene.util.fst.FST

Packages that use FST
Package | Description
--- | ---
org.apache.lucene.util.fst | Finite state transducers

### Uses of FST in org.apache.lucene.util.fst

Methods in org.apache.lucene.util.fst that return FST
Modifier and Type | Method and Description
--- | ---
`FST<T>` | Builder.`finish()` Returns final FST.
`static <T> FST<T>` | FST.`read(File file, Outputs<T> outputs)` Reads an automaton from a file.

Methods in org.apache.lucene.util.fst with parameters of type FST
Modifier and Type | Method and Description
--- | ---
`static <T> T` | Util.`get(FST<T> fst, BytesRef input)` Looks up the output for this input, or null if the input is not accepted
`static <T> T` | Util.`get(FST<T> fst, IntsRef input)` Looks up the output for this input, or null if the input is not accepted.
`static IntsRef` | Util.`getByOutput(FST<Long> fst, long targetOutput)` Reverse lookup (lookup by output instead of by input), in the special case when your FSTs outputs are strictly ascending.
`static IntsRef` | Util.`getByOutput(FST<Long> fst, long targetOutput, FST.BytesReader in, FST.Arc<Long> arc, FST.Arc<Long> scratchArc, IntsRef result)` Expert: like `Util.getByOutput(FST, long)` except reusing BytesReader, initial and scratch Arc, and result.
`static <T> FST.Arc<T>` | Util.`readCeilArc(int label, FST<T> fst, FST.Arc<T> follow, FST.Arc<T> arc, FST.BytesReader in)` Reads the first arc greater or equal that the given label into the provided arc in place and returns it iff found, otherwise return `null`.
`static <T> Util.MinResult<T>[]` | Util.`shortestPaths(FST<T> fst, FST.Arc<T> fromNode, T startOutput, Comparator<T> comparator, int topN, boolean allowEmptyString)` Starting from node, find the top N min cost completions to a final node.
`static <T> void` | Util.`toDot(FST<T> fst, Writer out, boolean sameRank, boolean labelStates)` Dumps an `FST` to a GraphViz's `dot` language description for visualization.

Constructors in org.apache.lucene.util.fst with parameters of type FST
Constructor and Description
`BytesRefFSTEnum(FST<T> fst)` doFloor controls the behavior of advance: if it's true doFloor is true, advance positions to the biggest term before target.
`IntsRefFSTEnum(FST<T> fst)` doFloor controls the behavior of advance: if it's true doFloor is true, advance positions to the biggest term before target.
`Util.TopNSearcher(FST<T> fst, int topN, int maxQueueDepth, Comparator<T> comparator)`