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

NAME
     std::experimental::negation - std::experimental::negation

Synopsis
	Defined in header <experimental/type_traits>
	template<  class  B >			       (1) (library fundamentals
     TS v2)
	struct negation;

	Forms the logical negation of the type trait B.

	The type negation<B> is a UnaryTypeTrait with a base characteristic of
	std::integral_constant<bool, !bool(B::value)>.

Template parameters
	B - any type such that the expression bool(B::value) is a valid constant
     expression

	Helper variable template

	template< class B >				  (library  fundamentals
     TS v2)
	constexpr bool negation_v = negation<B>::value;

     Inherited from std::integral_constant

Member constants
	value	  true	if  B  has a member ::value such that !bool(B::value) is
     true, false
	[static] otherwise
		 (public static member constant)

Member functions
	operator bool converts the object to bool, returns value
		      (public member function)
	operator()    returns value
	(C++14)       (public member function)

Member types
	Type	   Definition
	value_type bool
	type	   std::integral_constant<bool, value>

Possible implementation
	template<class B>
	struct negation : std::integral_constant<bool, !bool(B::value)> {};

Example
	 This section is incomplete
	 Reason: no example

See also
	negation logical NOT metafunction
	(C++17)  (class template)

Category:
	  * Todo no example

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

home | help