7 namespace detail::_fst {
9 void get(
auto&) =
delete;
11 void get(
const auto&) =
delete;
13 template <std::
size_t Idx>
16 constexpr auto operator()(T&& t)
const
17 noexcept(
noexcept(get<Idx>(std::forward<T>(t))))
18 ->
decltype(get<Idx>(std::forward<T>(t))) {
19 return get<Idx>(std::forward<T>(t));
25 inline namespace cpo {
constexpr partial< detail::_fst::get_op< 1 > > snd
Returns the second element of the given tuple-like object.
Definition: fst.hpp:34
constexpr partial< detail::_fst::get_op< 0 > > fst
Returns the first element of the given tuple-like object.
Definition: fst.hpp:29
constexpr decltype(auto) get(single< T, Tag > &s)
get for single
Definition: single.hpp:176
Implements a perfect-forwarding call wrapper.
Definition: partial.hpp:63