std::is_rvalue_reference

Defined in header <type_traits> template< class T > struct is_rvalue_reference; (since C++11) Checks whether T is a rvalue reference type. Provides the member constant value which is equal to true, if T is a rvalue reference type. Otherwise, value is equal to false. Template parameters T - a type to check Helper variable template template< class T > constexpr bool is_rvalue_reference_v = is_rvalue_reference<T>::value; (since C++17)

std::is_polymorphic

Defined in header <type_traits> template< class T > struct is_polymorphic; (since C++11) If T is a polymorphic class (that is, a non-union class that declares or inherits at least one virtual function), provides the member constant value equal true. For any other type, value is false. If T is a non-union class type, T shall be a complete type; otherwise, the behavior is undefined. Template parameters T - a type to check Helper variable template templa

std::is_pointer

Defined in header <type_traits> template< class T > struct is_pointer; (since C++11) Checks whether T is a pointer to object or a pointer to function (but not a pointer to member/member function). Provides the member constant value which is equal to true, if T is a object/function pointer type. Otherwise, value is equal to false. Template parameters T - a type to check Helper variable template template< class T > constexpr bool is_pointer_v = is

std::is_permutation

Defined in header <algorithm> template< class ForwardIt1, class ForwardIt2 > bool is_permutation( ForwardIt1 first1, ForwardIt1 last1, ForwardIt2 first2 ); (1) (since C++11) template< class ForwardIt1, class ForwardIt2, class BinaryPredicate > bool is_permutation( ForwardIt1 first1, ForwardIt1 last1, ForwardIt2 first2, BinaryPredicate p ); (2) (since C++11) template< class ForwardIt1, class ForwardIt2 > bool i

std::is_placeholder

Defined in header <functional> template< class T > struct is_placeholder; (since C++11) If T is the type of a standard placeholder (_1, _2, _3, ...), then this template is derived from std::integral_constant<int,1>, std::integral_constant<int,2>, std::integral_constant<int,3>, respectively. If T is not a standard placeholder type, this template is derived from std::integral_constant<int,0> The template may be specialized for any user-defined T

std::is_pod

Defined in header <type_traits> template< class T > struct is_pod; (since C++11) If T is a PODType ("plain old data type"), that is, both trivial and standard-layout, provides the member constant value equal true. For any other type, value is false. The behavior is undefined if std::remove_all_extents_t<T> is an incomplete type and not (possibly cv-qualified) void. Template parameters T - a type to check Helper variable template template< cla

std::is_object

Defined in header <type_traits> template< class T > struct is_object; (since C++11) If T is an object type (that is, scalar, array, class, or union), provides the member constant value equal true. For any other type, value is false. Template parameters T - a type to check Helper variable template template< class T > constexpr bool is_object_v = is_object<T>::value; (since C++17) Inherited from std::integral_constant Member cons

std::is_partitioned

Defined in header <algorithm> template< class InputIt, class UnaryPredicate > bool is_partitioned( InputIt first, InputIt last, UnaryPredicate p ); (since C++11) Returns true if all elements in the range [first, last) that satisfy the predicate p appear before all elements that don't. Also returns true if [first, last) is empty. Parameters first, last - the range of elements to check p - unary predicate which returns ​true for the elements expected to be

std::is_move_constructible

Defined in header <type_traits> template< class T > struct is_move_constructible; (1) (since C++11) template< class T > struct is_trivially_move_constructible; (2) (since C++11) template< class T > struct is_nothrow_move_constructible; (3) (since C++11) 1) If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise,

std::is_null_pointer

Defined in header <type_traits> template< class T > struct is_null_pointer; (since C++14) Checks whether T is the type std::nullptr_t. Provides the member constant value that is equal to true, if T is the type std::nullptr_t, const std::nullptr_t, volatile std::nullptr_t, or const volatile std::nullptr_t. Otherwise, value is equal to false. Template parameters T - a type to check Helper variable template template< class T > constexpr bool is_nul