I have been trying to figure out how to use the dfs_visitor to do something
every time a vertex is 'traversed', which would be (num_children(v) + 1)
times for any given vertex v, for a total of (2n - 1) traversals on a graph
of size n. (I have been working on rooted trees, so the application to
general graphs may be a bit rough.)
The use case is calculation of Eulerian paths, which I occasionally see
people asking how to do.
So although the dfs_visitor doesn't support this notion of 'traverse', I
have been able to simulate it using tree_edge and finish_vertex and some
post-processing. If you let "result" be an output iterator in a dfs
visitor class with these member functions:
template