25#ifndef FORWARD_CAPTURE_HPP_INCLUDED
26#define FORWARD_CAPTURE_HPP_INCLUDED
31#define CHOPS_FWD(...) std::forward<decltype(__VA_ARGS__)>(__VA_ARGS__)
37template <
typename... Ts>
38auto fwd_capture(Ts&&... xs) {
39 return std::tuple<Ts...>(CHOPS_FWD(xs)...);
45decltype(
auto) access(T&& x) {
return std::get<0>(CHOPS_FWD(x)); }
49#define CHOPS_FWD_CAPTURE(...) chops::detail::fwd_capture(CHOPS_FWD(__VA_ARGS__))