示例#1
0
 Wt operator()(Arc* a) const {
   Wt const& arcw = ArcWtFn::operator()(a);
   Wt w(arcOnRight ? Wt::one() : arcw);
   StateIdContainer const& tails = a->tails();
   for (StateIdContainer::const_iterator i = tails.begin(), e = tails.end(); i != e; ++i)
     StateWtFn::timesByState(*i, w);
   if (arcOnRight) timesBy(arcw, w);
   return w;
 }
示例#2
0
 result_type operator()(FeatureWeight const& inputWt, FeatureWeight const& matchWt) const {
   result_type r((inputWt));
   timesBy(matchWt, r);
   return r;
 }
示例#3
0
 void timesByState(StateId s, Weight& w) {
   if (isAxiom()) timesBy(axiomWt(s), w);
 }