| 119 | */ |
| 120 | template <typename Graph> |
| 121 | unsigned remove_transitive_edges(Graph& g) |
| 122 | { |
| 123 | typedef typename graph_traits<Graph>::edge_descriptor |
| 124 | edge_descriptor; |
| 125 | std::vector<edge_descriptor> transitive; |
| 126 | find_transitive_edges(g, back_inserter(transitive)); |
| 127 | remove_edges(g, transitive.begin(), transitive.end()); |
| 128 | return transitive.size(); |
| 129 | } |
| 130 | |
| 131 | /** |
| 132 | * Find transitive edges when more than one intermediate vertex exists |
no test coverage detected