Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::assignable_from(3)	      C++ Standard Libary      std::assignable_from(3)

NAME
       std::assignable_from - std::assignable_from

Synopsis
	  Defined in header <concepts>
	  template< class LHS, class RHS >

	  concept assignable_from =
	      std::is_lvalue_reference_v<LHS> &&
	      std::common_reference_with<
		  const				std::remove_reference_t<LHS>&,
       (since C++20)
		  const	std::remove_reference_t<RHS>&> &&
	      requires(LHS lhs,	RHS&& rhs) {
		  { lhs	= std::forward<RHS>(rhs) } -> std::same_as<LHS>;

	      };

	  The concept assignable_from<LHS, RHS>	specifies that	an  expression
       of the type and
	  value	category specified by RHS can be assigned to an	lvalue expres-
       sion whose type
	  is specified by LHS.

Notes
	  Assignment need not be a total function. In particular, if assigning
       to some object
	  x can	cause some other object	y to be	modified, then x = y is	likely
       not in the
	  domain  of  =.  This typically happens if the	right operand is owned
       directly	or
	  indirectly by	the left operand (e.g.,	with smart pointers  to	 nodes
       in a node-based
	  data structure, or with something like std::vector<std::any>).

See also
	  is_assignable
	  is_trivially_assignable  checks if a type has	an assignment operator
       for a specific
	  is_nothrow_assignable	  argument
	  (C++11)		  (class template)
	  (C++11)
	  (C++11)

http://cppreference.com		  2024.06.10	       std::assignable_from(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::assignable_from&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help