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

Concept specifying if two product types are compatibles. More...

#include <kumi/utils/concepts.hpp>

Detailed Description

Concept specifying if two product types are compatibles.

A pack of types Ts models kumi::compatible_product_types if it models kumi::follows_same_semantic and if all types model kumi::equivalent if the types are record types

Concept definition

template<typename T, typename... Us>
&& ((!record_type<T>) || (equivalent<std::remove_cvref_t<T>, std::remove_cvref_t<Us>> && ...)))
Concept specifying if two product types are compatibles.
Definition concepts.hpp:295
Concept specifying if two types have matching named fields.
Definition concepts.hpp:259
Concept specifying if a pack of types follows the same semantic.
Definition concepts.hpp:283
Concept specifying a type follows the Record Type semantic.
Definition concepts.hpp:43