16#ifndef RANGES_V3_UTILITY_SWAP_HPP
17#define RANGES_V3_UTILITY_SWAP_HPP
23#include <range/v3/utility/static_const.hpp>
25#include <range/v3/detail/prologue.hpp>
30 using is_swappable = concepts::is_swappable<T>;
33 using is_nothrow_swappable = concepts::is_nothrow_swappable<T>;
35 template<
typename T,
typename U>
36 using is_swappable_with = concepts::is_swappable_with<T, U>;
38 template<
typename T,
typename U>
39 using is_nothrow_swappable_with = concepts::is_nothrow_swappable_with<T, U>;
41 using concepts::exchange;
45 RANGES_DEFINE_CPO(uncvref_t<
decltype(concepts::swap)>, swap)
53#include <range/v3/detail/epilogue.hpp>
Definition adjacent_find.hpp:67