cpp/header/experimental/ranges/type traits

This header is part of the ranges library.

Synopsis
{{source|1=

namespace std { namespace experimental { namespace ranges { inline namespace v1 {

template  struct is_swappable_with; template  struct is_swappable;

template  struct is_nothrow_swappable_with; template  struct is_nothrow_swappable;

template  constexpr bool is_swappable_with_v = is_swappable_with::value; template  constexpr bool is_swappable_v = is_swappable::value;

template  constexpr bool is_nothrow_swappable_with_v = is_nothrow_swappable_with::value; template  constexpr bool is_nothrow_swappable_v = is_nothrow_swappable::value;

template  struct common_type; template  struct basic_common_reference { }; template  struct common_reference;

template  using common_type_t = typename common_type<T...>::type; template <class... T> using common_reference_t = typename common_reference<T...>::type;

{{))}}{{))}}

}}

{{langlinks|ja|zh}}