#ifndef RFL_INTERNAL_ISEMPTY_HPP_ #define RFL_INTERNAL_ISEMPTY_HPP_ #include #include #include "is_named_tuple.hpp" namespace rfl::internal { template constexpr bool is_empty() { using U = std::remove_cvref_t>; if constexpr (is_named_tuple_v) { return U::size() == 0; } else { using TupleType = ptr_tuple_t; return std::tuple_size_v == 0; } } } // namespace rfl::internal #endif