Some algorithms only require a vertex_id, not a vertex_reference (a dependency of getting vertex or edge values). Triangle counting is one of those.
We should provide view overloads that support returning a vertex_id without the vertex_reference. The following are impacts to the existing design:
A new index_adjacency_list concept is needed that requires edges(g,uid). The adjacency_list concept will inherit that and add a requirements for edges(g,u).
It is assumed that getting a vertex or edge value will require a reference to the respective types, so overloads with a VVF or EVF will not be included.
The views impacted include vertexlist, incidence, neighbors and edgelist.
Should this also affect dfs, bfs and topological_sort views?
Some algorithms only require a vertex_id, not a vertex_reference (a dependency of getting vertex or edge values). Triangle counting is one of those.
We should provide view overloads that support returning a vertex_id without the vertex_reference. The following are impacts to the existing design:
Should this also affect dfs, bfs and topological_sort views?