Lines Matching full:select
14 template<unsigned N> struct select {}; // : integral_constant<unsigned, N> {};
31 constexpr either_impl(select<0>, T &&t) : val(move(t)) {}
34 constexpr either_impl(select<N>, U &&u) : rest(select<N-1>(), move(u)) {}
49 constexpr const T &get(select<0>) { return val; }
50 template<unsigned N> constexpr const decltype(static_cast<const rest_t&>(rest).get(select<N-1>{})) get(select<N>) {
51 return rest.get(select<N-1>{});
76 impl(detail::select<impl_t::index(detail::type<U>())>(), move(t.value)) {}
85 decltype(static_cast<const impl_t&>(impl).get(detail::select<N>{}));
92 : impl.get(detail::select<N>{}));