/*! \ingroup PkgBGLConcepts \cgalConcept Concept from the Boost Graph Library. See https://www.boost.org/libs/graph/doc/EdgeListGraph.html. The concept `EdgeListGraph` refines the concept Graph and adds the requirement for traversal of all edges in a graph. \cgalRefines{Graph} \cgalHasModelsBegin \cgalHasModelsBare{See \link PkgBGLTraits Boost Graph Traits Specializations \endlink} \cgalHasModelsEnd \sa \link PkgBGLConcepts Graph Concepts \endlink */ class EdgeListGraph{}; /*! \relates EdgeListGraph * returns an iterator range over all edges. */ template std::pair::edge_iterator, boost::graph_traits::edge_iterator> edges(const EdgeListGraph& g); /*! \relates EdgeListGraph returns an upper bound of the number of edges of the graph. \attention `num_edges()` may return a number larger than `std::distance(edges(g).first, edges(g).second)`. This is the case for implementations only marking edges deleted in the edge container. */ template boost::graph_traits::edges_size_type num_edges(const EdgeListGraph& g); /*! \relates EdgeListGraph returns the source vertex of `e`. */ template boost::graph_traits::vertex_descriptor source(boost::graph_traits::edge_descriptor e, const EdgeListGraph& g); /*! \relates EdgeListGraph returns the target vertex of `e`. */ template boost::graph_traits::vertex_descriptor target(boost::graph_traits::edge_descriptor e, const EdgeListGraph& g);