Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
q23::_detail Namespace Reference

Typedefs

template<typename A , typename B >
using copy_const_t = std::conditional_t< std::is_const_v< A >, const B, B >
 
template<typename A , typename B >
using override_ref_t = std::conditional_t< std::is_rvalue_reference_v< A >, std::remove_reference_t< B > &&, B & >
 
template<typename T , typename U >
using forward_like_ret_t = override_ref_t< T &&, copy_const_t< std::remove_reference_t< T >, std::remove_reference_t< U > > >
 

Typedef Documentation

◆ copy_const_t

template<typename A , typename B >
using q23::_detail::copy_const_t = typedef std::conditional_t< std::is_const_v<A>, const B, B >

Definition at line 38 of file q23utility.h.

◆ forward_like_ret_t

template<typename T , typename U >
using q23::_detail::forward_like_ret_t = typedef override_ref_t< T&&, copy_const_t< std::remove_reference_t<T>, std::remove_reference_t<U> > >

Definition at line 52 of file q23utility.h.

◆ override_ref_t

template<typename A , typename B >
using q23::_detail::override_ref_t = typedef std::conditional_t< std::is_rvalue_reference_v<A>, std::remove_reference_t<B>&&, B& >

Definition at line 45 of file q23utility.h.