Detailed Description

template<class Arc>
class fst::DeterministicOnDemandFst< Arc >

It does not actually inherit from any Fst class because its interface is not exactly the same; it's much smaller. It assumes that the FST can have only one arc for any given input symbol, which makes the GetArc function below possible. (The FST is also assumed to be free of input epsilons). Note: we don't use "const" in this interface, because it creates problems when we do things like caching.