diff options
Diffstat (limited to 'include/mapbox/variant_visitor.hpp')
-rw-r--r-- | include/mapbox/variant_visitor.hpp | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/include/mapbox/variant_visitor.hpp b/include/mapbox/variant_visitor.hpp deleted file mode 100644 index 481eb65..0000000 --- a/include/mapbox/variant_visitor.hpp +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef MAPBOX_UTIL_VARIANT_VISITOR_HPP -#define MAPBOX_UTIL_VARIANT_VISITOR_HPP - -namespace mapbox { -namespace util { - -template <typename... Fns> -struct visitor; - -template <typename Fn> -struct visitor<Fn> : Fn -{ - using type = Fn; - using Fn::operator(); - - visitor(Fn fn) : Fn(fn) {} -}; - -template <typename Fn, typename... Fns> -struct visitor<Fn, Fns...> : Fn, visitor<Fns...> -{ - using type = visitor; - using Fn::operator(); - using visitor<Fns...>::operator(); - - visitor(Fn fn, Fns... fns) : Fn(fn), visitor<Fns...>(fns...) {} -}; - -template <typename... Fns> -visitor<Fns...> make_visitor(Fns... fns) -{ - return visitor<Fns...>(fns...); -} - -} // namespace util -} // namespace mapbox - -#endif // MAPBOX_UTIL_VARIANT_VISITOR_HPP |