Home | History | Annotate | Download | only in lib

Lines Matching refs:arcs

17 // Simple concrete, mutable FST whose states and arcs are stored in STL
33 // States and arcs implemented by STL vectors, templated on the
55 size_t NumArcs(StateId s) const { return states_[s]->arcs.size(); }
72 states_[s]->arcs.push_back(arc);
92 vector<Arc> &arcs = states_[s]->arcs;
94 for (size_t i = 0; i < arcs.size(); ++i) {
95 StateId t = newid[arcs[i].nextstate];
97 arcs[i].nextstate = t;
99 arcs[narcs] = arcs[i];
102 if (arcs[i].ilabel == 0)
104 if (arcs[i].olabel == 0)
108 arcs.resize(narcs);
122 states_[s]->arcs.resize(states_[s]->arcs.size() - n);
125 void DeleteArcs(StateId s) { states_[s]->arcs.clear(); }
135 void ReserveArcs(StateId s, size_t n) { states_[s]->arcs.reserve(n); }
146 data->narcs = states_[s]->arcs.size();
147 data->arcs = data->narcs > 0 ? &states_[s]->arcs[0] : 0;
158 // Arcs implemented by an STL vector per state.
168 vector<A> arcs; // Arcs represenation
252 if (!state->arcs.empty()) {
253 A &parc = state->arcs.back();
291 const vector<A> &arcs = this->GetState(s)->arcs;
293 size_t j = arcs.size() - i - 1;
294 if (arcs[j].ilabel == 0)
296 if (arcs[j].olabel == 0)
432 size_t narcs = state->arcs.size();
435 const A &arc = state->arcs[a];
700 : arcs_(fst.impl_->GetState(s)->arcs), i_(0) {}
735 virtual bool Done() const { return i_ >= state_->arcs.size(); }
737 virtual const A& Value() const { return state_->arcs[i_]; }
746 A& oarc = state_->arcs[i_];