Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r67244 - in sandbox/geometry: boost/geometry/algorithms boost/geometry/algorithms/detail boost/geometry/algorithms/detail/equals boost/geometry/algorithms/detail/overlay boost/geometry/algorithms/detail/sections boost/geometry/extensions/algorithms boost/geometry/extensions/algorithms/buffer boost/geometry/extensions/gis/io/shapelib boost/geometry/extensions/gis/io/wkt boost/geometry/extensions/io/svg boost/geometry/util libs/geometry/doc/doxygen_input/sourcecode libs/geometry/test/util
From: barend.gehrels_at_[hidden]
Date: 2010-12-15 14:52:55


Author: barendgehrels
Date: 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
New Revision: 67244
URL: http://svn.boost.org/trac/boost/changeset/67244

Log:
Changed BOOST_AUTO by typename interior_rings in loops through interior rings
Text files modified:
   sandbox/geometry/boost/geometry/algorithms/centroid.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/correct.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/detail/calculate_sum.hpp | 5 ++---
   sandbox/geometry/boost/geometry/algorithms/detail/equals/collect_vectors.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/detail/overlay/add_to_containment.hpp | 6 ++++--
   sandbox/geometry/boost/geometry/algorithms/detail/overlay/get_turns.hpp | 8 +++++---
   sandbox/geometry/boost/geometry/algorithms/detail/overlay/split_rings.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/detail/sections/sectionalize.hpp | 6 ++++--
   sandbox/geometry/boost/geometry/algorithms/distance.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/for_each.hpp | 24 ++++++++++++------------
   sandbox/geometry/boost/geometry/algorithms/num_points.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/reverse.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/simplify.hpp | 10 +++++++---
   sandbox/geometry/boost/geometry/algorithms/transform.hpp | 8 ++++++--
   sandbox/geometry/boost/geometry/algorithms/unique.hpp | 6 +++---
   sandbox/geometry/boost/geometry/algorithms/within.hpp | 8 +++++---
   sandbox/geometry/boost/geometry/extensions/algorithms/buffer/polygon_buffer.hpp | 6 +++---
   sandbox/geometry/boost/geometry/extensions/algorithms/remove_spikes.hpp | 6 +++---
   sandbox/geometry/boost/geometry/extensions/gis/io/shapelib/shp_create_object.hpp | 6 +++---
   sandbox/geometry/boost/geometry/extensions/gis/io/wkt/write_wkt.hpp | 9 +++++----
   sandbox/geometry/boost/geometry/extensions/io/svg/write_svg.hpp | 7 ++++---
   sandbox/geometry/boost/geometry/util/write_dsv.hpp | 7 ++++---
   sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/boost.vsprops | 2 +-
   sandbox/geometry/libs/geometry/test/util/reversible_view.cpp | 30 ------------------------------
   24 files changed, 92 insertions(+), 104 deletions(-)

Modified: sandbox/geometry/boost/geometry/algorithms/centroid.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/centroid.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/centroid.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -255,9 +255,9 @@
 
         per_ring::apply(exterior_ring(poly), strategy, state);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             per_ring::apply(*it, strategy, state);
         }

Modified: sandbox/geometry/boost/geometry/algorithms/correct.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/correct.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/correct.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -164,9 +164,9 @@
                 std::less<coordinate_type>
>::apply(exterior_ring(poly));
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+ typename interior_return_type<Polygon>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             correct_ring
                 <

Modified: sandbox/geometry/boost/geometry/algorithms/detail/calculate_sum.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/detail/calculate_sum.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/detail/calculate_sum.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -33,9 +33,8 @@
     {
         ReturnType sum = Policy::apply(exterior_ring(poly), strategy);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+ typename interior_return_type<Polygon const>::type rings = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             sum += Policy::apply(*it, strategy);
         }

Modified: sandbox/geometry/boost/geometry/algorithms/detail/equals/collect_vectors.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/detail/equals/collect_vectors.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/detail/equals/collect_vectors.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -181,9 +181,9 @@
         typedef range_collect_vectors<ring_type, Collection> per_range;
         per_range::apply(collection, exterior_ring(polygon));
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             per_range::apply(collection, *it);
         }

Modified: sandbox/geometry/boost/geometry/algorithms/detail/overlay/add_to_containment.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/detail/overlay/add_to_containment.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/detail/overlay/add_to_containment.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -96,8 +96,10 @@
 
         policy::apply(container, copy, exterior_ring(polygon), map, dissolve);
         copy.ring_index = 0;
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
+
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings);
             ++it, ++copy.ring_index)
         {
             policy::apply(container, copy, *it, map, dissolve);

Modified: sandbox/geometry/boost/geometry/algorithms/detail/overlay/get_turns.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/detail/overlay/get_turns.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/detail/overlay/get_turns.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -695,9 +695,11 @@
                 multi_index, -1);
 
         int i = 0;
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it, ++i)
+
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings);
+ ++it, ++i)
         {
             intersector_type::apply(
                     source_id1, *it,

Modified: sandbox/geometry/boost/geometry/algorithms/detail/overlay/split_rings.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/detail/overlay/split_rings.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/detail/overlay/split_rings.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -184,9 +184,9 @@
     {
         ring_collection.push_back(exterior_ring(polygon));
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
 #ifdef BOOST_GEOMETRY_DEBUG_SPLIT_RINGS
 std::cout << geometry::wkt(*it)

Modified: sandbox/geometry/boost/geometry/algorithms/detail/sections/sectionalize.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/detail/sections/sectionalize.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/detail/sections/sectionalize.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -419,8 +419,10 @@
         sectionalizer_type::apply(exterior_ring(poly), sections, -1, multi_index);
 
         int i = 0;
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
+
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings);
              ++it, ++i)
         {
             sectionalizer_type::apply(*it, sections, i, multi_index);

Modified: sandbox/geometry/boost/geometry/algorithms/distance.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/distance.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/distance.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -209,9 +209,9 @@
         distance_containment dc = per_ring::apply(point,
                         exterior_ring(polygon), pp_strategy, ps_strategy);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             distance_containment dcr = per_ring::apply(point,
                             *it, pp_strategy, ps_strategy);

Modified: sandbox/geometry/boost/geometry/algorithms/for_each.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/for_each.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/for_each.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -99,9 +99,9 @@
 template <typename Polygon, typename Functor, bool IsConst>
 struct fe_polygon_per_point
 {
- static inline Functor apply(
- typename add_const_if_c<IsConst, Polygon>::type& poly,
- Functor f)
+ typedef typename add_const_if_c<IsConst, Polygon>::type poly_type;
+
+ static inline Functor apply(poly_type& poly, Functor f)
     {
         typedef fe_range_per_point
                 <
@@ -112,9 +112,9 @@
 
         f = per_ring::apply(exterior_ring(poly), f);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+ typename interior_return_type<poly_type>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             f = per_ring::apply(*it, f);
         }
@@ -128,9 +128,9 @@
 template <typename Polygon, typename Functor, bool IsConst>
 struct fe_polygon_per_segment
 {
- static inline Functor apply(
- typename add_const_if_c<IsConst, Polygon>::type& poly,
- Functor f)
+ typedef typename add_const_if_c<IsConst, Polygon>::type poly_type;
+
+ static inline Functor apply(poly_type& poly, Functor f)
     {
         typedef fe_range_per_segment
             <
@@ -141,9 +141,9 @@
 
         f = per_ring::apply(exterior_ring(poly), f);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+ typename interior_return_type<poly_type>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             f = per_ring::apply(*it, f);
         }

Modified: sandbox/geometry/boost/geometry/algorithms/num_points.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/num_points.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/num_points.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -74,9 +74,9 @@
         std::size_t n = range_count<ring_type>::apply(
                     exterior_ring(poly), add_for_open);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             n += range_count<ring_type>::apply(*it, add_for_open);
         }

Modified: sandbox/geometry/boost/geometry/algorithms/reverse.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/reverse.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/reverse.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -46,9 +46,9 @@
         typedef range_reverse<ring_type> per_range;
         per_range::apply(exterior_ring(polygon));
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             per_range::apply(*it);
         }

Modified: sandbox/geometry/boost/geometry/algorithms/simplify.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/simplify.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/simplify.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -127,9 +127,13 @@
         // TODO: we should make this part of the concept.
         interior_rings(poly_out).resize(num_interior_rings(poly_in));
 
- BOOST_AUTO(it_out, boost::begin(interior_rings(poly_out)));
- for (BOOST_AUTO(it_in, boost::begin(interior_rings(poly_in)));
- it_in != boost::end(interior_rings(poly_in));
+ typename interior_return_type<Polygon const>::type rings_in
+ = interior_rings(poly_in);
+ typename interior_return_type<Polygon>::type rings_out
+ = interior_rings(poly_out);
+ BOOST_AUTO(it_out, boost::begin(rings_out));
+ for (BOOST_AUTO(it_in, boost::begin(rings_in));
+ it_in != boost::end(rings_in);
             ++it_in, ++it_out)
         {
             simplify_range<ring_type, Strategy, 4>::apply(*it_in,

Modified: sandbox/geometry/boost/geometry/algorithms/transform.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/transform.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/transform.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -137,8 +137,12 @@
         // TODO: we should make this part of the concept.
         interior_rings(poly2).resize(num_interior_rings(poly1));
 
- BOOST_AUTO(it1, boost::begin(interior_rings(poly1)));
- BOOST_AUTO(it2, boost::begin(interior_rings(poly2)));
+ typename interior_return_type<Polygon1 const>::type rings1
+ = interior_rings(poly1);
+ typename interior_return_type<Polygon2>::type rings2
+ = interior_rings(poly2);
+ BOOST_AUTO(it1, boost::begin(rings1));
+ BOOST_AUTO(it2, boost::begin(rings2));
         for ( ; it1 != boost::end(interior_rings(poly1)); ++it1, ++it2)
         {
             if (!transform_range_out<point2_type>(*it1,

Modified: sandbox/geometry/boost/geometry/algorithms/unique.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/unique.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/unique.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -57,9 +57,9 @@
         typedef range_unique<ring_type, ComparePolicy> per_range;
         per_range::apply(exterior_ring(polygon), policy);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             per_range::apply(*it, policy);
         }

Modified: sandbox/geometry/boost/geometry/algorithms/within.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/algorithms/within.hpp (original)
+++ sandbox/geometry/boost/geometry/algorithms/within.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -216,9 +216,11 @@
 
         if (code == 1)
         {
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings));
+ it != boost::end(rings);
+ ++it)
             {
                 int const interior_code = point_in_ring
                     <

Modified: sandbox/geometry/boost/geometry/extensions/algorithms/buffer/polygon_buffer.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/extensions/algorithms/buffer/polygon_buffer.hpp (original)
+++ sandbox/geometry/boost/geometry/extensions/algorithms/buffer/polygon_buffer.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -204,9 +204,9 @@
 #endif
                 );
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings); it != boost::end(rings); ++it)
         {
             output_ring_type ring;
             policy::apply(*it, ring, distance, join_strategy

Modified: sandbox/geometry/boost/geometry/extensions/algorithms/remove_spikes.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/extensions/algorithms/remove_spikes.hpp (original)
+++ sandbox/geometry/boost/geometry/extensions/algorithms/remove_spikes.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -128,9 +128,9 @@
         typedef range_remove_spikes<ring_type, Policy> per_range;
         per_range::apply(exterior_ring(polygon), policy);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             per_range::apply(*it, policy);
         }

Modified: sandbox/geometry/boost/geometry/extensions/gis/io/shapelib/shp_create_object.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/extensions/gis/io/shapelib/shp_create_object.hpp (original)
+++ sandbox/geometry/boost/geometry/extensions/gis/io/shapelib/shp_create_object.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -100,9 +100,9 @@
         parts[ring++] = offset;
         offset = range_to_part(geometry::exterior_ring(polygon), xp, yp, offset);
 
- for (BOOST_AUTO(it, boost::begin(interior_rings(polygon)));
- it != boost::end(interior_rings(polygon));
- ++it)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             parts[ring++] = offset;
             offset = range_to_part(*it, xp, yp, offset);

Modified: sandbox/geometry/boost/geometry/extensions/gis/io/wkt/write_wkt.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/extensions/gis/io/wkt/write_wkt.hpp (original)
+++ sandbox/geometry/boost/geometry/extensions/gis/io/wkt/write_wkt.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -166,9 +166,10 @@
         // TODO: check EMPTY here
         os << "(";
         wkt_sequence<ring>::apply(os, exterior_ring(poly));
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             os << ",";
             wkt_sequence<ring>::apply(os, *it);
@@ -214,7 +215,7 @@
 {
 
 template <typename Tag, typename Geometry>
-struct wkt
+struct wkt
 {
    BOOST_MPL_ASSERT_MSG
         (

Modified: sandbox/geometry/boost/geometry/extensions/io/svg/write_svg.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/extensions/io/svg/write_svg.hpp (original)
+++ sandbox/geometry/boost/geometry/extensions/io/svg/write_svg.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -132,9 +132,10 @@
 
         // Inner rings:
         {
- for (BOOST_AUTO(rit, boost::begin(interior_rings(polygon)));
- rit != boost::end(interior_rings(polygon));
- ++rit)
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(polygon);
+ for (BOOST_AUTO(rit, boost::begin(rings));
+ rit != boost::end(rings); ++rit)
             {
                 first = true;
                 for (BOOST_AUTO(it, boost::begin(*rit)); it != boost::end(*rit);

Modified: sandbox/geometry/boost/geometry/util/write_dsv.hpp
==============================================================================
--- sandbox/geometry/boost/geometry/util/write_dsv.hpp (original)
+++ sandbox/geometry/boost/geometry/util/write_dsv.hpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -211,9 +211,10 @@
         os << settings.list_open;
 
         dsv_range<ring>::apply(os, exterior_ring(poly), settings);
- for (BOOST_AUTO(it, boost::begin(interior_rings(poly)));
- it != boost::end(interior_rings(poly));
- ++it)
+
+ typename interior_return_type<Polygon const>::type rings
+ = interior_rings(poly);
+ for (BOOST_AUTO(it, boost::begin(rings)); it != boost::end(rings); ++it)
         {
             os << settings.list_separator;
             dsv_range<ring>::apply(os, *it, settings);

Modified: sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/boost.vsprops
==============================================================================
--- sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/boost.vsprops (original)
+++ sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/boost.vsprops 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -15,6 +15,6 @@
         />
         <UserMacro
                 Name="BOOST_ROOT"
- Value="C:\Program Files\boost\boost_1_39"
+ Value="c:\software\boost_1_45_0"
         />
 </VisualStudioPropertySheet>

Modified: sandbox/geometry/libs/geometry/test/util/reversible_view.cpp
==============================================================================
--- sandbox/geometry/libs/geometry/test/util/reversible_view.cpp (original)
+++ sandbox/geometry/libs/geometry/test/util/reversible_view.cpp 2010-12-15 14:52:49 EST (Wed, 15 Dec 2010)
@@ -19,23 +19,6 @@
 #include <boost/geometry/geometries/geometries.hpp>
 #include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
 
-namespace boost { namespace geometry
-{
-
-namespace traits
-{
-
-template<typename Geometry>
-struct tag<boost::range_detail::reverse_range<Geometry> >
-{
- typedef typename geometry::tag<Geometry>::type type;
-};
-
-}
-
-}}
-
-
 template <bg::iterate_direction Direction, typename Range>
 void test_forward_or_reverse(Range const& range, std::string const& expected)
 {
@@ -72,22 +55,9 @@
     test_forward_or_reverse<bg::iterate_reverse>(geo, expected_reverse);
 }
 
-
-template <typename P>
-void test_range_adaptor()
-{
- bg::model::linestring<P> ls;
- bg::read_wkt("linestring(1 1,2 2,3 3, 4 4)", ls);
- std::cout << bg::wkt(ls) << std::endl;
- std::cout << bg::wkt(ls | boost::adaptors::reversed) << std::endl;
- std::cout << bg::wkt(boost::range_detail::reverse_range<bg::model::linestring<P> >(ls)) << std::endl;
-}
-
-
 template <typename P>
 void test_all()
 {
- //test_range_adaptor<P>();
     test_geometry<bg::model::linestring<P> >(
             "linestring(1 1,2 2,3 3)",
             "(1, 1) (2, 2) (3, 3)",


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk