Change Graph::Edge -> Graph::Arc inheritance to conversion (#283)
authorPeter Kovacs <kpeter@inf.elte.hu>
Sat, 09 May 2009 16:39:59 +0200
changeset 704bf7928412136
parent 703 cb38ccedd2c1
child 706 88753a77c634
child 708 ca92c2f936b0
Change Graph::Edge -> Graph::Arc inheritance to conversion (#283)
lemon/concepts/graph.h
     1.1 --- a/lemon/concepts/graph.h	Thu May 07 10:46:49 2009 +0200
     1.2 +++ b/lemon/concepts/graph.h	Sat May 09 16:39:59 2009 +0200
     1.3 @@ -310,8 +310,8 @@
     1.4  
     1.5        /// The directed arc type. It can be converted to the
     1.6        /// edge or it should be inherited from the undirected
     1.7 -      /// arc.
     1.8 -      class Arc : public Edge {
     1.9 +      /// edge.
    1.10 +      class Arc {
    1.11        public:
    1.12          /// Default constructor
    1.13  
    1.14 @@ -322,7 +322,7 @@
    1.15  
    1.16          /// Copy constructor.
    1.17          ///
    1.18 -        Arc(const Arc& e) : Edge(e) { }
    1.19 +        Arc(const Arc&) { }
    1.20          /// Initialize the iterator to be invalid.
    1.21  
    1.22          /// Initialize the iterator to be invalid.
    1.23 @@ -349,6 +349,8 @@
    1.24          /// ordering of the items.
    1.25          bool operator<(Arc) const { return false; }
    1.26  
    1.27 +        /// Converison to Edge
    1.28 +        operator Edge() const { return Edge(); }
    1.29        };
    1.30        /// This iterator goes through each directed arc.
    1.31