diff options
Diffstat (limited to 'include/mbgl/util/type_list.hpp')
-rw-r--r-- | include/mbgl/util/type_list.hpp | 29 |
1 files changed, 0 insertions, 29 deletions
diff --git a/include/mbgl/util/type_list.hpp b/include/mbgl/util/type_list.hpp index 4a5e95c8a4..f3db277e46 100644 --- a/include/mbgl/util/type_list.hpp +++ b/include/mbgl/util/type_list.hpp @@ -8,33 +8,4 @@ namespace mbgl { template <class...> class TypeList {}; -namespace detail { - -template <class, class> -struct TypeCons; - -template <class T, class... Ts> -struct TypeCons<T, TypeList<Ts...>> { - using Type = TypeList<T, Ts...>; -}; - -template <class, template <class> class> -struct TypeFilter; - -template <template <class> class Predicate> -struct TypeFilter<TypeList<>, Predicate> { - using Type = TypeList<>; -}; - -template <template <class> class Predicate, class T, class... Ts> -struct TypeFilter<TypeList<T, Ts...>, Predicate> { - using Tail = typename TypeFilter<TypeList<Ts...>, Predicate>::Type; - using Type = std::conditional_t<Predicate<T>::value, typename TypeCons<T, Tail>::Type, Tail>; -}; - -} // namespace detail - -template <class TypeList, template <class> class Predicate> -using FilteredTypeList = typename detail::TypeFilter<TypeList, Predicate>::Type; - } // namespace mbgl |