uTL
micro Template library
|
Typedefs | |
template<class T , class U > | |
using | __cond_res = decltype(false ? std::declval< T(&)()>()() :std::declval< U(&)()>()()) |
template<class From , class To > | |
using | __copy_cv = meta::invoke< __copy_cv_< From >, To > |
template<class T > | |
using | __cref = std::add_lvalue_reference_t< const std::remove_reference_t< T > > |
template<class T , class U > | |
using | __common_ref = meta::eval< __common_ref_< T, U > > |
template<class T , class U > | |
using | __lref_res = __cond_res< __copy_cv< T, U > &, __copy_cv< U, T > &> |
template<class T , class U , class R = __common_ref<T&, U&>> | |
using | __rref_res = std::remove_reference_t< R > && |
template<class T , class U > | |
using | __basic_common_reference_t = meta::eval< basic_common_reference< remove_cvref_t< T >, remove_cvref_t< U >, __xref< T >::template apply, __xref< U >::template apply > > |
template<class... Ts> | |
using | common_reference_t = meta::eval< common_reference< Ts... > > |
Common Reference
using utl::common_impl::__basic_common_reference_t = typedef meta::eval< basic_common_reference< remove_cvref_t<T>, remove_cvref_t<U>, __xref<T>::template apply, __xref<U>::template apply > > |
using utl::common_impl::__common_ref = typedef meta::eval<__common_ref_<T, U> > |
using utl::common_impl::__cond_res = typedef decltype(false ? std::declval<T(&)()>()() : std::declval<U(&)()>()()) |
using utl::common_impl::__copy_cv = typedef meta::invoke<__copy_cv_<From>, To> |
using utl::common_impl::__cref = typedef std::add_lvalue_reference_t<const std::remove_reference_t<T> > |
using utl::common_impl::__lref_res = typedef __cond_res< __copy_cv<T, U> &, __copy_cv<U, T> & > |
using utl::common_impl::__rref_res = typedef std::remove_reference_t<R>&& |
using utl::common_impl::common_reference_t = typedef meta::eval< common_reference<Ts...> > |