proxsuite 0.7.2
The Advanced Proximal Optimization Toolbox
Loading...
Searching...
No Matches
tl::detail::swap_adl_tests Namespace Reference

Classes

struct  is_adl_swap_noexcept
struct  is_std_swap_noexcept
struct  is_std_swap_noexcept< T[N]>
struct  tag

Functions

template<class T>
tag swap (T &, T &)
template<class T, std::size_t N>
tag swap (T(&a)[N], T(&b)[N])
template<class, class>
std::false_type can_swap (...) noexcept(false)
template<class T, class U, class = decltype(swap(std::declval<T&>(), std::declval<U&>()))>
std::true_type can_swap (int) noexcept(noexcept(swap(std::declval< T & >(), std::declval< U & >())))
template<class, class>
std::false_type uses_std (...)
template<class T, class U>
std::is_same< decltype(swap(std::declval< T & >(), std::declval< U & >())), taguses_std (int)

Function Documentation

◆ swap() [1/2]

template<class T>
tag tl::detail::swap_adl_tests::swap(T &,
T & )

◆ swap() [2/2]

template<class T, std::size_t N>
tag tl::detail::swap_adl_tests::swap(T(&)a[N],
T(&)b[N] )

◆ can_swap() [1/2]

template<class, class>
std::false_type tl::detail::swap_adl_tests::can_swap(...)

◆ can_swap() [2/2]

template<class T, class U, class = decltype(swap(std::declval<T&>(), std::declval<U&>()))>
std::true_type tl::detail::swap_adl_tests::can_swap(int)&
noexcept

◆ uses_std() [1/2]

template<class, class>
std::false_type tl::detail::swap_adl_tests::uses_std(...)

◆ uses_std() [2/2]

template<class T, class U>
std::is_same< decltype(swap(std::declval< T & >(), std::declval< U & >())), tag > tl::detail::swap_adl_tests::uses_std(int)