| 71 | |
| 72 | template <typename T> |
| 73 | auto all_qualifiers(identity<T> f) |
| 74 | { |
| 75 | auto a = cv_qualifiers(f); |
| 76 | // make_index_sequence would work, but no need |
| 77 | auto b = ref_qualifiers(std::get<0>(a)); |
| 78 | auto c = ref_qualifiers(std::get<1>(a)); |
| 79 | auto d = ref_qualifiers(std::get<2>(a)); |
| 80 | auto e = ref_qualifiers(std::get<3>(a)); |
| 81 | |
| 82 | return std::make_tuple(std::get<0>(b), |
| 83 | std::get<1>(b), |
| 84 | std::get<0>(c), |
| 85 | std::get<1>(c), |
| 86 | std::get<0>(d), |
| 87 | std::get<1>(d), |
| 88 | std::get<0>(e), |
| 89 | std::get<1>(e)); |
| 90 | } |
| 91 | |
| 92 | template <typename... Args> |
| 93 | struct all_invocable; |
no test coverage detected