TableMatcher is a matcher specialized for the case where the output side of the left FST always has either all-epsilons coming out of a state, or a majority of the symbol table. More...
#include <table-matcher.h>
Public Member Functions | |
TableMatcherOptions () | |
Public Attributes | |
float | table_ratio |
int | min_table_size |
TableMatcher is a matcher specialized for the case where the output side of the left FST always has either all-epsilons coming out of a state, or a majority of the symbol table.
Therefore we can either store nothing (for the all-epsilon case) or store a lookup table from Labels to arc offsets. Since the TableMatcher has to iterate over all arcs in each left-hand state the first time it sees it, this matcher type is not efficient if you compose with something very small on the right– unless you do it multiple times and keep the matcher around. To do this requires using the most advanced form of ComposeFst in Compose.h, that initializes with ComposeFstImplOptions.
Definition at line 42 of file table-matcher.h.
|
inline |
Definition at line 45 of file table-matcher.h.
int min_table_size |
Definition at line 44 of file table-matcher.h.
Referenced by fst::TestTableMatcher(), and fst::TestTableMatcherCacheRight().
float table_ratio |
Definition at line 43 of file table-matcher.h.
Referenced by fst::TestTableMatcher(), and fst::TestTableMatcherCacheRight().