home | help
std::experi...ource::reset(3)  C++ Standard Libary std::experi...ource::reset(3)

NAME
     std::experimental::unique_resource::reset	-  std::experimental::unique_re-
     source::reset

Synopsis
	void reset() noexcept; (1) (library fundamentals TS v3)
	template< class RR >   (2) (library fundamentals TS v3)
	void reset( RR&& r );

	1) Disposes the resource by calling the deleter with the underlying  re-
     source handle
	if the unique_resource owns it. The unique_resource does not own the re-
     source after
	the call.
	2)  Replaces the resource by calling (1) and then assigns the stored re-
     source handle
	with  std::forward<RR>(r)  if  std::is_nothrow_assignable_v<RS,  RR>  is
     true, otherwise
	std::as_const(r), where RS is the type of stored resource handle. The
	unique_resource owns the resource after the call.
	If  copy-assignment  of  the  store resource handle throws an exception,
     calls del_(r),
	where del is the deleter object.
	This overload participates in overload resolution only if  the	selected
     assignment
	expression assigning the stored resource handle is well-formed.
	The program is ill-formed if del_(r) is ill-formed.
	The  behavior  is  undefined if del_(r) results in undefined behavior or
     throws an
	exception.

Parameters
	r - resource handle for a new resource to manage

Return value
	(none)

Exceptions
	2) Any exception thrown in assigning the stored resource handle.

Notes
	The mechanism ensures no leaking of resources.

Example
	 This section is incomplete
	 Reason: no example

See also
	reset replaces the managed object
	      (public member function of std::unique_ptr<T,Deleter>)

Category:
	  * Todo no example

http://cppreference.com 	   2024.06.10	   std::experi...ource::reset(3)

home | help