5 #ifndef VCCC_CONCEPTS_COMMON_REFERENCE_WITH_HPP_
6 #define VCCC_CONCEPTS_COMMON_REFERENCE_WITH_HPP_
23 has_typename_type<common_reference<T, U>>,
24 has_typename_type<common_reference<U, T>>
27 struct common_reference_with_impl : std::false_type {};
29 template<
typename T,
typename U>
30 struct common_reference_with_impl<T, U, true>
32 same_as< common_reference_t<T, U>, common_reference_t<U, T> >,
33 convertible_to<T, common_reference_t<T, U> >,
34 convertible_to<U, common_reference_t<T, U> >
53 template<
typename T,
typename U>
Definition: directory.h:12
constexpr VCCC_INLINE_OR_STATIC detail::element_niebloid< 1 > value
Definition: key_value.hpp:35
specifies that two types share a common reference type
Definition: common_reference_with.hpp:54