home | help
std::experi...const::swap(3)   C++ Standard Libary  std::experi...const::swap(3)

NAME
     std::experimental::propagate_const::swap	  -    std::experimental::propa-
     gate_const::swap

Synopsis
	constexpr void swap( propagate_const & pt )		(library  funda-
     mentals TS v2)
	noexcept(/* see below */);

	Swaps  the wrapped pointer with that of pt. Let t_ designate the private
     data member
	that is the wrapped pointer-like object, then this function  is  equiva-
     lent to
	swap(t_,  pt.t_),  where  the  overload resolution for swap is performed
     among std::swap
	and any declaration found by the usual lookup  rules,  as  described  in
     Swappable.

	The behavior is undefined if lvalues of T do not satisfy Swappable.

Parameters
	pt - another propagate_const object to swap with

Exceptions
	noexcept specification:
	noexcept(noexcept(swap(t_, pt.t_)))
	The  lookup  for  the identifier swap in the exception		    (li-
     brary
	specification finds overloads described above, and does not find  funda-
     mentals TS v2)
	the member function itself, making the exception specification
	equivalent to C++17 std::is_nothrow_swappable.
	noexcept   specification:					    (li-
     brary
	noexcept(std::is_nothrow_swappable_v<T>)			  funda-
     mentals TS v3)

	Defect reports

	The  following	behavior-changing  defect  reports were applied retroac-
     tively to
	previously published C++ standards.

	   DR	 Applied to	      Behavior as  published		 Correct
     behavior
	LWG  3413  LFTSv2      the  exception  specification was ill-formed made
     well-formed

Category:
	  * conditionally noexcept

http://cppreference.com 	   2024.06.10	    std::experi...const::swap(3)

home | help