Iros
Loading...
Searching...
No Matches
di::concepts::CommonWith Concept Reference
#include <
di/meta/common.h
>
Concept definition
template
<
typename
T,
typename
U>
concept
di::concepts::CommonWith
=
SameAs<meta::CommonType<T, U>
,
meta::CommonType<U, T>
> &&
requires
{
static_cast<
meta::CommonType<T, U>
>
(
util::declval<T>
());
static_cast<
meta::CommonType<T, U>
>
(
util::declval<U>
());
} &&
CommonReferenceWith<meta::AddLValueReference<T const>
,
meta::AddLValueReference<U const>
> &&
CommonReferenceWith<meta::AddLValueReference<meta::CommonType<T, U>
>,
meta::CommonReference<meta::AddLValueReference<T const>
,
meta::AddLValueReference<U const>
>>
di::concepts::CommonReferenceWith
Definition
common.h:203
di::concepts::CommonWith
Definition
common.h:208
di::concepts::SameAs
Definition
core.h:114
di::meta::CommonType
detail::CommonTypeHelper< Types... >::Type CommonType
Definition
common.h:62
di::meta::CommonReference
detail::CommonReferenceHelper< Types... >::Type CommonReference
Definition
common.h:198
di::meta::AddLValueReference
Type< detail::AddLValueReferenceHelper< T > > AddLValueReference
Definition
language.h:399
di::util::declval
auto declval() -> meta::AddRValueReference< T >
Definition
declval.h:8
di
concepts
CommonWith
Generated by
1.13.0