VCCC  2024.05
VisualCamp Common C++ library
swap_niebloid Struct Reference

#include </home/jarvis/actions-runner/jarvis-vccc-2/_work/vccc/vccc/include/vccc/__concepts/swap.hpp>

Public Member Functions

template<typename T , typename U , std::enable_if_t< adl_swappable< T, U > ::value, int > = 0>
constexpr void operator() (T &&t, U &&u) const noexcept(noexcept(swap(std::forward< T >(t), std::forward< U >(u))))
 
template<typename T , typename U , std::size_t N, std::enable_if_t< conjunction< negation< adl_swappable< T(&)[N], U(&)[N]> >, swappable_array< T(&)[N], U(&)[N]> >::value, int > = 0>
constexpr void operator() (T(&t)[N], U(&u)[N]) const noexcept(noexcept((*this)(*t, *u)))
 
template<typename V , std::enable_if_t< conjunction< negation< adl_swappable< V &, V & > >, move_constructible< V >, assignable_from< V &, V > >::value, int > = 0>
constexpr void operator() (V &t, V &u) const noexcept(std::is_nothrow_move_constructible< V >::value &&std::is_nothrow_move_assignable< V >::value)
 

Member Function Documentation

◆ operator()() [1/3]

constexpr void operator() ( T &&  t,
U &&  u 
) const
inlineconstexprnoexcept

◆ operator()() [2/3]

constexpr void operator() ( T(&)  t[N],
U(&)  u[N] 
) const
inlineconstexprnoexcept

◆ operator()() [3/3]

constexpr void operator() ( V &  t,
V &  u 
) const
inlineconstexprnoexcept

The documentation for this struct was generated from the following file: