From ba235622db7a79567166ea363dd3c0c3ef353d98 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Tue, 15 Nov 2022 23:33:41 +0100 Subject: now that it's done, remove it It can always be brought back later. --- src/entity.hpp | 147 --------------------------------------------------------- 1 file changed, 147 deletions(-) (limited to 'src') diff --git a/src/entity.hpp b/src/entity.hpp index 51698651..44f6295a 100644 --- a/src/entity.hpp +++ b/src/entity.hpp @@ -4,9 +4,7 @@ #include #include #include -#include #include -#include #include namespace floormat {} @@ -192,151 +190,6 @@ constexpr CORRADE_ALWAYS_INLINE bool find_in_tuple(F&& fun, Tuple&& tuple) return false; } -template struct parameter_pack; - -template class F, typename Acc, typename T, typename... Fs> -struct reduce0_; - -template class F, typename Acc, template class X, typename... Fs> -struct reduce0_, Fs...> { - using type = Acc; -}; - -template class F, typename Acc, template class X, typename T, typename... Ts, typename... Fs> -struct reduce0_, Fs...> { - using type = typename reduce0_< F, F, parameter_pack, Fs... >::type; -}; - -template class F, typename Acc, typename X, typename... Fs> -using reduce0 = typename reduce0_::type; - -template class F, typename X, typename... Fs> -struct reduce_; - -template class F, template class X, typename T1, typename... Ts, typename... Fs> -struct reduce_, Fs...> { - using type = typename reduce0_< F, T1, parameter_pack, Fs... >::type; -}; - -template class F, typename T, typename... Fs> -using reduce = typename reduce_::type; - -template typename C, typename... Args2> -struct lift_; - -template class C, template class T, typename... Args, typename... CArgs> -struct lift_, C, CArgs...> { - using type = C; -}; - -template class C, typename... CArgs> -using lift = typename lift_::type; - -template class F, template class C, typename T, typename... Us> -struct map_; - -template class F, template class C, template class X, typename... Ts, typename... Us> -struct map_, Us...> { - using type = C...>; -}; - -template class F, typename X, typename... Us> -using map = typename map_::type; - -template -struct skip_; - -template class Tuple, typename T, typename... Ts> -struct skip_> { - using type = typename skip_>::type; -}; - -template class Tuple, typename... Ts> -struct skip_<0, Tuple> { using type = parameter_pack; }; - -template class Tuple, typename T, typename... Ts> -struct skip_<0, Tuple> { - using type = parameter_pack; -}; - -template -using skip = typename skip_::type; - -template -struct take_; - -template class Tuple, typename... Ts, typename... As> -struct take_<0, parameter_pack, Tuple> { - using type = parameter_pack; -}; - -template class Tuple, typename T1, typename... Ts> -struct take_<0, parameter_pack, Tuple> { - using type = parameter_pack; -}; - -template class Tuple, typename T1, typename... Ts> -struct take_, Tuple> { - using type = typename take_, parameter_pack>::type; -}; - -template -using take = typename take_, T>::type; - -template -struct nth_; - -template class X, typename T, typename... Ts> -struct nth_> { - using type = typename nth_>::type; -}; - -template class X, typename T, typename... Ts> -struct nth_<0, X> { - using type = T; -}; - -template -using nth = typename nth_::type; - -template -struct except_nth_; - -template class X, typename... As, typename T, typename... Ts> -struct except_nth_, X> { - using type = typename except_nth_, parameter_pack>::type; -}; - -template class X, typename T, typename... Ts> -struct except_nth_<0, parameter_pack, X> { - using type = parameter_pack; -}; - -template -using except_nth = typename except_nth_, T>::type; - -template -struct sort_tuple_ { - template - static consteval auto sort_indices(const Tuple& tuple, const std::index_sequence&) { - std::array indices = { Is..., }; - using KeyT = decltype(KeyFn(std::get<0>(tuple))); - std::array keys = { KeyFn(std::get(tuple))..., }; - std::sort(indices.begin(), indices.end(), [&](std::size_t a, std::size_t b) { return Comp(keys[a], keys[b]); }); - return indices; - } - - template - struct helper { - template - static consteval auto do_sort(const Tuple& tuple, const std::index_sequence&) { - return std::make_tuple(std::get(tuple)...); - } - }; -}; - - - } // namespace detail template -- cgit v1.2.3