Lines Matching defs:fst
24 #include "fst/lib/cache.h"
25 #include "fst/lib/test-properties.h"
27 namespace fst {
43 void ArcSort(MutableFst<Arc> *fst, Compare comp) {
46 uint64 props = fst->Properties(kFstProperties, false);
49 for (StateIterator< MutableFst<Arc> > siter(*fst);
54 for (ArcIterator< MutableFst<Arc> > aiter(*fst, s);
59 fst->DeleteArcs(s);
61 fst->AddArc(s, arcs[a]);
64 fst->SetProperties(comp.Properties(props), kFstProperties);
90 ArcSortFstImpl(const Fst<A> &fst, const C &comp,
92 : CacheImpl<A>(opts), fst_(fst.Copy()), comp_(comp) {
96 SetInputSymbols(fst.InputSymbols());
97 SetOutputSymbols(fst.OutputSymbols());
196 ArcSortFst(const Fst<A> &fst, const C &comp)
197 : impl_(new ArcSortFstImpl<A, C>(fst, comp, ArcSortFstOptions())) {}
199 ArcSortFst(const Fst<A> &fst, const C &comp, const ArcSortFstOptions &opts)
200 : impl_(new ArcSortFstImpl<A, C>(fst, comp, opts)) {}
202 ArcSortFst(const ArcSortFst<A, C> &fst) :
203 impl_(new ArcSortFstImpl<A, C>(*(fst.impl_))) {}
256 void operator=(const ArcSortFst<A, C> &fst); // Disallow
267 ArcIterator(const ArcSortFst<A, C> &fst, StateId s)
268 : CacheArcIterator< ArcSortFst<A, C> >(fst, s) {
269 if (!fst.impl_->HasArcs(s))
270 fst.impl_->Expand(s);
315 } // namespace fst