diff options
Diffstat (limited to 'boost/geometry/algorithms/detail/is_simple/areal.hpp')
-rw-r--r-- | boost/geometry/algorithms/detail/is_simple/areal.hpp | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/boost/geometry/algorithms/detail/is_simple/areal.hpp b/boost/geometry/algorithms/detail/is_simple/areal.hpp index 4fc3fa26e5..952aa4e549 100644 --- a/boost/geometry/algorithms/detail/is_simple/areal.hpp +++ b/boost/geometry/algorithms/detail/is_simple/areal.hpp @@ -49,12 +49,12 @@ template <typename InteriorRings, typename Strategy> inline bool are_simple_interior_rings(InteriorRings const& interior_rings, Strategy const& strategy) { - auto const end = boost::end(interior_rings); - return std::find_if(boost::begin(interior_rings), end, - [&](auto const& r) - { - return ! is_simple_ring(r, strategy); - }) == end; // non-simple ring not found + return std::all_of(boost::begin(interior_rings), + boost::end(interior_rings), + [&](auto const& r) + { + return is_simple_ring(r, strategy); + }); // non-simple ring not found // allow empty ring } @@ -116,12 +116,11 @@ struct is_simple<MultiPolygon, multi_polygon_tag> template <typename Strategy> static inline bool apply(MultiPolygon const& multipolygon, Strategy const& strategy) { - auto const end = boost::end(multipolygon); - return std::find_if(boost::begin(multipolygon), end, - [&](auto const& po) { - return ! detail::is_simple::is_simple_polygon(po, strategy); - }) == end; // non-simple polygon not found - // allow empty multi-polygon + return std::none_of(boost::begin(multipolygon), boost::end(multipolygon), + [&](auto const& po) { + return ! detail::is_simple::is_simple_polygon(po, strategy); + }); // non-simple polygon not found + // allow empty multi-polygon } }; |