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

FreeBSD Manual Pages

  
 
  

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

NAME
       std::experimental::ranges::DerivedFrom -	std::experimental::ranges::De-
       rivedFrom

Synopsis
	  Defined in header <experimental/ranges/concepts>
	  template < class T, class U >

	  concept		bool		   DerivedFrom		     =
       (ranges TS)
	  std::is_base_of<U, T>::value &&

	  std::is_convertible<std::remove_cv_t<T>*,		      std::re-
       move_cv_t<U>*>::value;

	  The  concept	DerivedFrom<T,	U>  is satisfied if and	only if	U is a
       class type that is
	  either T or a	public and unambiguous base of T.

	  Despite the use of std::is_base_of and  std::is_convertible  in  its
       description above,
	  DerivedFrom  is  not required	to use it in its implementation. Thus,
       there need not be
	  any subsumption relationship between DerivedFrom<T, U> and
	  std::is_base_of<U,T>::value	  or	  std::is_convertible<std::re-
       move_cv_t<T>*,
	  std::remove_cv_t<U>*>::value.

See also
	  is_base_of		  checks  if  a	type is	derived	from the other
       type
	  (C++11)		 (class	template)
	  is_convertible
	  is_nothrow_convertible checks	if a type  can	be  converted  to  the
       other type
	  (C++11)		 (class	template)
	  (C++20)

http://cppreference.com		  2022.07.31	  std::experi...DerivedFrom(3)

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

home | help