| 316 | |
| 317 | template <class T, class F> |
| 318 | CUTE_HOST_DEVICE constexpr |
| 319 | auto |
| 320 | all_of(T const& t, F&& f) |
| 321 | { |
| 322 | if constexpr (is_tuple<T>::value) { |
| 323 | return detail::tapply(t, f, [] (auto... a) { return (true_type{} && ... && a); }, tuple_seq<T>{}); |
| 324 | } else { |
| 325 | return f(t); |
| 326 | } |
| 327 | |
| 328 | CUTE_GCC_UNREACHABLE; |
| 329 | } |
| 330 | |
| 331 | template <class T, class F> |
| 332 | CUTE_HOST_DEVICE constexpr |
no test coverage detected