Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
2 //=======================================================================
3 // Copyright 1997, 1998, 1999, 2000 University of Notre Dame.
4 // Authors: Andrew Lumsdaine, Lie-Quan Lee, Jeremy G. Siek
6 // Distributed under the Boost Software License, Version 1.0. (See
7 // accompanying file LICENSE_1_0.txt or copy at
8 // http://www.boost.org/LICENSE_1_0.txt)
9 //=======================================================================
11 #ifndef BOOST_GRAPH_DETAIL_EDGE_HPP
12 #define BOOST_GRAPH_DETAIL_EDGE_HPP
24 template <typename Directed, typename Vertex>
28 inline edge_base(Vertex s, Vertex d)
29 : m_source(s), m_target(d) { }
34 template <typename Directed, typename Vertex>
35 class edge_desc_impl : public edge_base<Directed,Vertex> {
36 typedef edge_desc_impl self;
37 typedef edge_base<Directed,Vertex> Base;
39 typedef void property_type;
41 inline edge_desc_impl() : m_eproperty(0) {}
43 inline edge_desc_impl(Vertex s, Vertex d, const property_type* eplug)
44 : Base(s,d), m_eproperty(const_cast<property_type*>(eplug)) { }
46 property_type* get_property() { return m_eproperty; }
47 const property_type* get_property() const { return m_eproperty; }
50 property_type* m_eproperty;
53 template <class D, class V>
55 operator==(const detail::edge_desc_impl<D,V>& a,
56 const detail::edge_desc_impl<D,V>& b)
58 return a.get_property() == b.get_property();
60 template <class D, class V>
62 operator!=(const detail::edge_desc_impl<D,V>& a,
63 const detail::edge_desc_impl<D,V>& b)
65 return ! (a.get_property() == b.get_property());
75 template <class D, class V>
77 operator<<(std::ostream& os, const boost::detail::edge_desc_impl<D,V>& e)
79 return os << "(" << e.m_source << "," << e.m_target << ")";
82 template <class Char, class Traits, class D, class V>
83 std::basic_ostream<Char, Traits>&
84 operator<<(std::basic_ostream<Char, Traits>& os,
85 const boost::detail::edge_desc_impl<D,V>& e)
87 return os << "(" << e.m_source << "," << e.m_target << ")";
94 #endif // BOOST_GRAPH_DETAIL_DETAIL_EDGE_HPP