home | help
std::experi...al::function(3)  C++ Standard Libary std::experi...al::function(3)

NAME
     std::experimental::function - std::experimental::function

Synopsis
	Defined in header <experimental/functional>
	template< class >			     (library fundamentals TS)
	class function; /* undefined */
	template< class R, class... Args >	     (library fundamentals TS)
	class function<R(Args...)>

	std::experimental::function  is a modified version of std::function with
     support for
	type-erased allocators.

Member types
	Type	       Definition
		       std::experimental::erased_type	  (library  fundamentals
     TS)
	allocator_type					  (until  library funda-
     mentals TS v3)
		       std::pmr::polymorphic_allocator<>  (library  fundamentals
     TS v3)

Member functions
					 constructs    a   new	 std::experimen-
     tal::function
	constructor			 instance
					 (public member function)
	operator=			 assigns a new target
					 (public member function)
	swap				 swaps the contents
					 (public member function)
	get_memory_resource		 retrieves a pointer to the  memory  re-
     source used by
	(removed in library fundamentals this object to allocate memory
	TS v3)				 (public member function)
					 retrieves a type-erased
	get_allocator			 std::pmr::polymorphic_allocator used by
     this object
	(library fundamentals TS v3)	 to allocate memory
					 (public member function)

Non-member functions
	std::experimental::swap(std::experimental::function)   specializes   the
     swap algorithm
							     (function template)
	operator==					     compares an
	operator!=						 std::experimen-
     tal::function
	(removed in library fundamentals TS v3) 	     with nullptr
							     (function template)

Helper classes
							 specializes	     the
     std::uses_allocator
	std::uses_allocator<std::experimental::function> type trait
	(removed in library fundamentals TS v3) 	  (class  template  spe-
     cialization)

     Members identical to std::function

Member types
	Type		     Definition
	result_type	     R
	      Member types removed in Library Fundamental TS v3
	argument_type	      T  if  sizeof...(Args) == 1 and T is the first and
     only type in
			     Args...
	first_argument_type  T1 if sizeof...(Args) == 2 and T1 is the  first  of
     the two types
			     in Args...
	second_argument_type  T2 if sizeof...(Args) == 2 and T2 is the second of
     the two
			     types in Args...

	Member types  argument_type,  first_argument_type,  and 	(library
     fundamentals TS
	second_argument_type are removed, because the correponding  v3)
	member types of std::function are removed in C++20.

Member functions
	destructor    destroys a std::function instance
		      (public member function of std::function<R(Args...)>)
	operator bool checks if a target is contained
		      (public member function of std::function<R(Args...)>)
	operator()    invokes the target
		      (public member function of std::function<R(Args...)>)

Target access
	target_type   obtains the typeid of the stored target
		      (public member function of std::function<R(Args...)>)
	target	      obtains a pointer to the stored target
		      (public member function of std::function<R(Args...)>)

http://cppreference.com 	   2024.06.10	   std::experi...al::function(3)

home | help