kumi v3.1.0
Exquisite Epidote
 
Loading...
Searching...
No Matches
kumi::equivalent Concept Reference

Concept specifying if two types have matching named fields. More...

#include <kumi/utils/concepts.hpp>

Detailed Description

Concept specifying if two types have matching named fields.

A type T models kumi::equivalent<T,U> if it is a product type with the same number of members as U, and each of its fields has a corresponding field in U with the same name

Concept definition

template<typename T, typename U>
concept kumi::equivalent = ( size_v<std::remove_cvref_t<T>> == size_v<std::remove_cvref_t<U>>)
&& _::has_same_field_names<std::remove_cvref_t<T>, std::remove_cvref_t<U>>()
Concept specifying if two types have matching named fields.
Definition concepts.hpp:259