MCPcopy Create free account
hub / github.com/BirolLab/abyss / removeEdgeIf

Function removeEdgeIf

Graph/GraphAlgorithms.h:82–99  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

80 */
81template <typename Graph, typename Predicate>
82size_t
83removeEdgeIf(Predicate predicate, Graph& g)
84{
85 typedef graph_traits<Graph> GTraits;
86 typedef typename GTraits::edge_descriptor edge_descriptor;
87 typedef typename GTraits::edge_iterator edge_iterator;
88
89 size_t n = 0;
90 std::pair<edge_iterator, edge_iterator> erange = edges(g);
91 for (edge_iterator eit = erange.first; eit != erange.second; ++eit) {
92 edge_descriptor e = *eit;
93 if (predicate(e)) {
94 remove_edge(e, g);
95 ++n;
96 }
97 }
98 return n;
99}
100
101/** Remove the edges [first,last) from g.
102 * @return the number of removed edges

Callers 1

Calls 2

edgesFunction · 0.70
remove_edgeFunction · 0.70

Tested by

no test coverage detected