diff options
author | 2018-11-30 13:23:46 +0900 | |
---|---|---|
committer | 2018-11-30 13:23:46 +0900 | |
commit | 9d57e5b16843759ca97d3cdc6f0310cf4527810a (patch) | |
tree | 7679864f22aa516de5af3f8b31a72bb4bbe85d71 /include/mapbox/geometry/for_each_point.hpp | |
parent | 819d06ad9d8c50ea1e0af26450ee79d2492fea9f (diff) |
add aw navigation
Diffstat (limited to 'include/mapbox/geometry/for_each_point.hpp')
-rw-r--r-- | include/mapbox/geometry/for_each_point.hpp | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/include/mapbox/geometry/for_each_point.hpp b/include/mapbox/geometry/for_each_point.hpp deleted file mode 100644 index 44d6e77..0000000 --- a/include/mapbox/geometry/for_each_point.hpp +++ /dev/null @@ -1,45 +0,0 @@ -#pragma once - -#include <mapbox/geometry/geometry.hpp> - -namespace mapbox { -namespace geometry { - -template <typename Point, typename F> -auto for_each_point(Point&& point, F&& f) - -> decltype(point.x, point.y, void()) -{ - f(std::forward<Point>(point)); -} - -template <typename Container, typename F> -auto for_each_point(Container&& container, F&& f) - -> decltype(container.begin(), container.end(), void()); - -template <typename...Types, typename F> -void for_each_point(mapbox::util::variant<Types...> const& geom, F&& f) -{ - mapbox::util::variant<Types...>::visit(geom, [&] (auto const& g) { - for_each_point(g, f); - }); -} - -template <typename...Types, typename F> -void for_each_point(mapbox::util::variant<Types...> & geom, F&& f) -{ - mapbox::util::variant<Types...>::visit(geom, [&] (auto & g) { - for_each_point(g, f); - }); -} - -template <typename Container, typename F> -auto for_each_point(Container&& container, F&& f) - -> decltype(container.begin(), container.end(), void()) -{ - for (auto& e: container) { - for_each_point(e, f); - } -} - -} // namespace geometry -} // namespace mapbox |