36 const Fst<Arc>& fstrhs,
37 const typename Arc::Label kSpecialLabel ) {
38 typedef PhiMatcher< Matcher< Fst<Arc> > > PM;
39 ComposeFstOptions<Arc, PM> copts (
41 new PM ( fstlhs, MATCH_NONE, kNoLabel ),
42 new PM ( fstrhs, MATCH_INPUT, kSpecialLabel ) );
43 return ComposeFst<Arc> ( fstlhs, fstrhs, copts );
55 inline ComposeFst<Arc>
RRhoCompose (
const VectorFst<Arc>& fstlhs,
56 const VectorFst<Arc>& fstrhs,
57 const typename Arc::Label kSpecialLabel =
RHO ) {
58 typedef RhoMatcher< Matcher< Fst<Arc> > > RM;
59 ComposeFstOptions<Arc, RM> copts (
61 new RM ( fstlhs, MATCH_NONE, kNoLabel ),
62 new RM ( fstrhs, MATCH_INPUT, kSpecialLabel, MATCHER_REWRITE_ALWAYS ) );
64 return ComposeFst<Arc> ( fstlhs, fstrhs, copts );
ComposeFst< Arc > RPhiCompose(const Fst< Arc > &fstlhs, const Fst< Arc > &fstrhs, const typename Arc::Label kSpecialLabel)
Performs composition with PHI, based on OpenFST matchers PHI transitions are expected on fstrhs...
ComposeFst< Arc > RRhoCompose(const VectorFst< Arc > &fstlhs, const VectorFst< Arc > &fstrhs, const typename Arc::Label kSpecialLabel=RHO)
Performs composition with RHO, based on OpenFST matchers RHO transitions are expected on fstrhs...