| 269 | } |
| 270 | |
| 271 | static void Sort(const Vec<Node*>& nodes, Vec<int32>* delta) { |
| 272 | struct ByRank { |
| 273 | const Vec<Node*>* nodes; |
| 274 | bool operator()(int32 a, int32 b) const { |
| 275 | return (*nodes)[a]->rank < (*nodes)[b]->rank; |
| 276 | } |
| 277 | }; |
| 278 | ByRank cmp; |
| 279 | cmp.nodes = &nodes; |
| 280 | std::sort(delta->begin(), delta->end(), cmp); |
| 281 | } |
| 282 | |
| 283 | static void MoveToList(GraphCycles::Rep* r, Vec<int32>* src, Vec<int32>* dst) { |
| 284 | for (Vec<int32>::size_type i = 0; i < src->size(); i++) { |