Line: 1 to 1 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
Line: 874 to 874 | ||||||||||
| ||||||||||
Changed: | ||||||||||
< < |
| |||||||||
> > |
| |||||||||
| ||||||||||
Changed: | ||||||||||
< < | SortedMatcher requires the underlying Fst be sorted on the appropriate side. How it matches epsilons requires some explanation. Find(0) matches any epsilons on the underlying Fst explicitly (as if they were any other symbol) but also returns an | |||||||||
> > | SortedMatcher expects the underlying FST be sorted on the appropriate side. Find(0) matches any epsilons on the underlying FST explicitly (as if they were any other symbol) but also returns an | |||||||||
implicit self-loop (namely Arc(kNoLabel, 0, Weight::One(), current_state) if the match_type is MATCH_INPUT and | ||||||||||
Changed: | ||||||||||
< < | Arc(0, kNoLabel, Weight::One(), current_state) if the match_type is MATCH_OUTPUT ). In other words, an epsilon matches at every state without moving forward on the matched FST, a natural interpretation. This behavior implements epsilon-transition handling in composition, or, more generally, a 'non-consuming' match as with the MultiEpsMatcher (with kNoLabel informing composition of such a match). A | |||||||||
> > | Arc(0, kNoLabel, Weight::One(), current_state) if the match_type is MATCH_OUTPUT ); in other words, an epsilon matches at every state without moving forward on the matched FST, a natural interpretation. This behavior implements epsilon-transition handling in composition, or, more generally, a 'non-consuming' match as with the MultiEpsMatcher (with kNoLabel informing composition of such a match). A | |||||||||
composition filter determines which of these epsilon transitions are ultimately
accepted. Any matcher used in composition and related algorithms must implement these implicit matches for correct epsilon handling. In some other uses, the implicit matches may not be needed. In that case, an ExplicitMatcher can be used to conveniently suppress them (or the user can recognize the kNoLabel loop and skip them). |