Variable templates for type traits.
Utilities » Metaprogramming
Collaboration diagram for Variable templates for type traits.:

template<typename... _Bn>
constexpr bool | std::conjunction_v
template<typename... _Bn>
constexpr bool | std::disjunction_v
template<typename _Pp>
constexpr bool | std::negation_v
template<typename _Tp>
constexpr bool | std::is_void_v
template<typename _Tp>
constexpr bool | std::is_null_pointer_v
template<typename _Tp>
constexpr bool | std::is_integral_v
template<typename _Tp>
constexpr bool | std::is_floating_point_v
template<typename _Tp>
constexpr bool | std::is_array_v
template<typename _Tp>
constexpr bool | std::is_pointer_v
template<typename _Tp>
constexpr bool | std::is_lvalue_reference_v
template<typename _Tp>
constexpr bool | std::is_rvalue_reference_v
template<typename _Tp>
constexpr bool | std::is_member_object_pointer_v
template<typename _Tp>
constexpr bool | std::is_member_function_pointer_v
template<typename _Tp>
constexpr bool | std::is_enum_v
template<typename _Tp>
constexpr bool | std::is_union_v
template<typename _Tp>
constexpr bool | std::is_class_v
template<typename _Tp>
constexpr bool | std::is_function_v
template<typename _Tp>
constexpr bool | std::is_reference_v
template<typename _Tp>
constexpr bool | std::is_arithmetic_v
template<typename _Tp>
constexpr bool | std::is_fundamental_v
template<typename _Tp>
constexpr bool | std::is_object_v
template<typename _Tp>
constexpr bool | std::is_scalar_v
template<typename _Tp>
constexpr bool | std::is_compound_v
template<typename _Tp>
constexpr bool | std::is_member_pointer_v
template<typename _Tp>
constexpr bool | std::is_const_v
template<typename _Tp>
constexpr bool | std::is_volatile_v
template<typename _Tp>
constexpr bool | std::is_trivial_v
template<typename _Tp>
constexpr bool | std::is_trivially_copyable_v
template<typename _Tp>
constexpr bool | std::is_standard_layout_v
template<typename _Tp>
constexpr bool | std::is_pod_v
template<typename _Tp>
constexpr bool | std::is_literal_type_v
template<typename _Tp>
constexpr bool | std::is_empty_v
template<typename _Tp>
constexpr bool | std::is_polymorphic_v
template<typename _Tp>
constexpr bool | std::is_abstract_v
template<typename _Tp>
constexpr bool | std::is_final_v
template<typename _Tp>
constexpr bool | std::is_signed_v
template<typename _Tp>
constexpr bool | std::is_unsigned_v
template<typename _Tp, typename... _Args>
constexpr bool | std::is_constructible_v
template<typename _Tp>
constexpr bool | std::is_default_constructible_v
template<typename _Tp>
constexpr bool | std::is_copy_constructible_v
template<typename _Tp>
constexpr bool | std::is_move_constructible_v
template<typename _Tp, typename _Up>
constexpr bool | std::is_assignable_v
template<typename _Tp>
constexpr bool | std::is_copy_assignable_v
template<typename _Tp>
constexpr bool | std::is_move_assignable_v
template<typename _Tp>
constexpr bool | std::is_destructible_v
template<typename _Tp, typename... _Args>
constexpr bool | std::is_trivially_constructible_v
template<typename _Tp>
constexpr bool | std::is_trivially_default_constructible_v
template<typename _Tp>
constexpr bool | std::is_trivially_copy_constructible_v
template<typename _Tp>
constexpr bool | std::is_trivially_move_constructible_v
template<typename _Tp, typename _Up>
constexpr bool | std::is_trivially_assignable_v
template<typename _Tp>
constexpr bool | std::is_trivially_copy_assignable_v
template<typename _Tp>
constexpr bool | std::is_trivially_move_assignable_v
template<typename _Tp>
constexpr bool | std::is_trivially_destructible_v
template<typename _Tp, typename... _Args>
constexpr bool | std::is_nothrow_constructible_v
template<typename _Tp>
constexpr bool | std::is_nothrow_default_constructible_v
template<typename _Tp>
constexpr bool | std::is_nothrow_copy_constructible_v
template<typename _Tp>
constexpr bool | std::is_nothrow_move_constructible_v
template<typename _Tp, typename _Up>
constexpr bool | std::is_nothrow_assignable_v
template<typename _Tp>
constexpr bool | std::is_nothrow_copy_assignable_v
template<typename _Tp>
constexpr bool | std::is_nothrow_move_assignable_v
template<typename _Tp>
constexpr bool | std::is_nothrow_destructible_v
template<typename _Tp>
constexpr bool | std::has_virtual_destructor_v
template<typename _Tp>
constexpr size_t | std::alignment_of_v
template<typename _Tp>
constexpr size_t | std::rank_v
template<typename _Tp, unsigned _Idx = 0>
constexpr size_t | std::extent_v
template<typename _Tp, typename _Up>
constexpr bool | std::is_same_v
template<typename _Base, typename _Derived>
constexpr bool | std::is_base_of_v
template<typename _From, typename _To>
constexpr bool | std::is_convertible_v
template<typename _Fn, typename... _Args>
constexpr bool | std::is_invocable_v
template<typename _Fn, typename... _Args>
constexpr bool | std::is_nothrow_invocable_v
template<typename _Ret, typename _Fn, typename... _Args>
constexpr bool | std::is_invocable_r_v
template<typename _Ret, typename _Fn, typename... _Args>
constexpr bool | std::is_nothrow_invocable_r_v

## Detailed Description

The variable is_foo_v<T> is a boolean constant with the same value as the type trait is_foo<T>::value.

Since
  C++17

## Variable Documentation

## alignment_of_v

template<typename _Tp>

size_t std::alignment_of_v

inline constexpr

Definition at line 3242 of file type_traits.

## conjunction_v

template<typename... _Bn>

bool std::conjunction_v

inline constexpr

Definition at line 197 of file type_traits.

## disjunction_v

template<typename... _Bn>

bool std::disjunction_v

inline constexpr

Definition at line 200 of file type_traits.

## extent_v

template<typename _Tp, unsigned _Idx = 0>

size_t std::extent_v

inline constexpr

Definition at line 3246 of file type_traits.

## has_virtual_destructor_v

template<typename _Tp>

bool std::has_virtual_destructor_v

inline constexpr

Definition at line 3239 of file type_traits.

## is_abstract_v

template<typename _Tp>

bool std::is_abstract_v

inline constexpr

Definition at line 3163 of file type_traits.

## is_arithmetic_v

template<typename _Tp>

bool std::is_arithmetic_v

inline constexpr

Definition at line 3127 of file type_traits.

## is_array_v

template<typename _Tp>

bool std::is_array_v

inline constexpr

Definition at line 3101 of file type_traits.

## is_assignable_v

template<typename _Tp, typename _Up>

bool std::is_assignable_v

inline constexpr

Definition at line 3183 of file type_traits.

## is_base_of_v

template<typename _Base, typename _Derived>

bool std::is_base_of_v

inline constexpr

Definition at line 3255 of file type_traits.

## is_class_v

template<typename _Tp>

bool std::is_class_v

inline constexpr

Definition at line 3121 of file type_traits.

## is_compound_v

template<typename _Tp>

bool std::is_compound_v

inline constexpr

Definition at line 3135 of file type_traits.

## is_const_v

template<typename _Tp>

bool std::is_const_v

inline constexpr

Definition at line 3139 of file type_traits.

## is_constructible_v

template<typename _Tp, typename... _Args>

bool std::is_constructible_v

inline constexpr

Definition at line 3171 of file type_traits.

## is_convertible_v

template<typename _From, typename _To>

bool std::is_convertible_v

inline constexpr

Definition at line 3257 of file type_traits.

## is_copy_assignable_v

template<typename _Tp>

bool std::is_copy_assignable_v

inline constexpr

Definition at line 3185 of file type_traits.

## is_copy_constructible_v

template<typename _Tp>

bool std::is_copy_constructible_v

inline constexpr

Definition at line 3177 of file type_traits.

## is_default_constructible_v

template<typename _Tp>

bool std::is_default_constructible_v

inline constexpr

Definition at line 3174 of file type_traits.

## is_destructible_v

template<typename _Tp>

bool std::is_destructible_v

inline constexpr

Definition at line 3189 of file type_traits.

## is_empty_v

template<typename _Tp>

bool std::is_empty_v

inline constexpr

Definition at line 3159 of file type_traits.

## is_enum_v

template<typename _Tp>

bool std::is_enum_v

inline constexpr

Definition at line 3117 of file type_traits.

## is_final_v

template<typename _Tp>

bool std::is_final_v

inline constexpr

Definition at line 3165 of file type_traits.

## is_floating_point_v

template<typename _Tp>

bool std::is_floating_point_v

inline constexpr

Definition at line 3099 of file type_traits.

## is_function_v

template<typename _Tp>

bool std::is_function_v

inline constexpr

Definition at line 3123 of file type_traits.

## is_fundamental_v

template<typename _Tp>

bool std::is_fundamental_v

inline constexpr

Definition at line 3129 of file type_traits.

## is_integral_v

template<typename _Tp>

bool std::is_integral_v

inline constexpr

Definition at line 3097 of file type_traits.

## is_invocable_r_v

template<typename _Ret, typename _Fn, typename... _Args>

bool std::is_invocable_r_v

inline constexpr

Definition at line 3264 of file type_traits.

## is_invocable_v

template<typename _Fn, typename... _Args>

bool std::is_invocable_v

inline constexpr

Definition at line 3259 of file type_traits.

## is_literal_type_v

template<typename _Tp>

bool std::is_literal_type_v

inline constexpr

Definition at line 3156 of file type_traits.

## is_lvalue_reference_v

template<typename _Tp>

bool std::is_lvalue_reference_v

inline constexpr

Definition at line 3105 of file type_traits.

## is_member_function_pointer_v

template<typename _Tp>

bool std::is_member_function_pointer_v

inline constexpr

Definition at line 3114 of file type_traits.

## is_member_object_pointer_v

template<typename _Tp>

bool std::is_member_object_pointer_v

inline constexpr

Definition at line 3111 of file type_traits.

## is_member_pointer_v

template<typename _Tp>

bool std::is_member_pointer_v

inline constexpr

Definition at line 3137 of file type_traits.

## is_move_assignable_v

template<typename _Tp>

bool std::is_move_assignable_v

inline constexpr

Definition at line 3187 of file type_traits.

## is_move_constructible_v

template<typename _Tp>

bool std::is_move_constructible_v

inline constexpr

Definition at line 3180 of file type_traits.

## is_nothrow_assignable_v

template<typename _Tp, typename _Up>

bool std::is_nothrow_assignable_v

inline constexpr

Definition at line 3227 of file type_traits.

## is_nothrow_constructible_v

template<typename _Tp, typename... _Args>

bool std::is_nothrow_constructible_v

inline constexpr

Definition at line 3215 of file type_traits.

## is_nothrow_copy_assignable_v

template<typename _Tp>

bool std::is_nothrow_copy_assignable_v

inline constexpr

Definition at line 3230 of file type_traits.

## is_nothrow_copy_constructible_v

template<typename _Tp>

bool std::is_nothrow_copy_constructible_v

inline constexpr

Definition at line 3221 of file type_traits.

## is_nothrow_default_constructible_v

template<typename _Tp>

bool std::is_nothrow_default_constructible_v

inline constexpr

Definition at line 3218 of file type_traits.

## is_nothrow_destructible_v

template<typename _Tp>

bool std::is_nothrow_destructible_v

inline constexpr

Definition at line 3236 of file type_traits.

## is_nothrow_invocable_r_v

template<typename _Ret, typename _Fn, typename... _Args>

bool std::is_nothrow_invocable_r_v

inline constexpr

Definition at line 3267 of file type_traits.

## is_nothrow_invocable_v

template<typename _Fn, typename... _Args>

bool std::is_nothrow_invocable_v

inline constexpr

Definition at line 3261 of file type_traits.

## is_nothrow_move_assignable_v

template<typename _Tp>

bool std::is_nothrow_move_assignable_v

inline constexpr

Definition at line 3233 of file type_traits.

## is_nothrow_move_constructible_v

template<typename _Tp>

bool std::is_nothrow_move_constructible_v

inline constexpr

Definition at line 3224 of file type_traits.

## is_null_pointer_v

template<typename _Tp>

bool std::is_null_pointer_v

inline constexpr

Definition at line 3095 of file type_traits.

## is_object_v

template<typename _Tp>

bool std::is_object_v

inline constexpr

Definition at line 3131 of file type_traits.

## is_pod_v

template<typename _Tp>

bool std::is_pod_v

inline constexpr

Definition at line 3153 of file type_traits.

## is_pointer_v

template<typename _Tp>

bool std::is_pointer_v

inline constexpr

Definition at line 3103 of file type_traits.

## is_polymorphic_v

template<typename _Tp>

bool std::is_polymorphic_v

inline constexpr

Definition at line 3161 of file type_traits.

## is_reference_v

template<typename _Tp>

bool std::is_reference_v

inline constexpr

Definition at line 3125 of file type_traits.

## is_rvalue_reference_v

template<typename _Tp>

bool std::is_rvalue_reference_v

inline constexpr

Definition at line 3108 of file type_traits.

## is_same_v

template<typename _Tp, typename _Up>

bool std::is_same_v

inline constexpr

Definition at line 3252 of file type_traits.

## is_scalar_v

template<typename _Tp>

bool std::is_scalar_v

inline constexpr

Definition at line 3133 of file type_traits.

## is_signed_v

template<typename _Tp>

bool std::is_signed_v

inline constexpr

Definition at line 3167 of file type_traits.

## is_standard_layout_v

template<typename _Tp>

bool std::is_standard_layout_v

inline constexpr

Definition at line 3148 of file type_traits.

## is_trivial_v

template<typename _Tp>

bool std::is_trivial_v

inline constexpr

Definition at line 3143 of file type_traits.

## is_trivially_assignable_v

template<typename _Tp, typename _Up>

bool std::is_trivially_assignable_v

inline constexpr

Definition at line 3203 of file type_traits.

## is_trivially_constructible_v

template<typename _Tp, typename... _Args>

bool std::is_trivially_constructible_v

inline constexpr

Definition at line 3191 of file type_traits.

## is_trivially_copy_assignable_v

template<typename _Tp>

bool std::is_trivially_copy_assignable_v

inline constexpr

Definition at line 3206 of file type_traits.

## is_trivially_copy_constructible_v

template<typename _Tp>

bool std::is_trivially_copy_constructible_v

inline constexpr

Definition at line 3197 of file type_traits.

## is_trivially_copyable_v

template<typename _Tp>

bool std::is_trivially_copyable_v

inline constexpr

Definition at line 3145 of file type_traits.

## is_trivially_default_constructible_v

template<typename _Tp>

bool std::is_trivially_default_constructible_v

inline constexpr

Definition at line 3194 of file type_traits.

## is_trivially_destructible_v

template<typename _Tp>

bool std::is_trivially_destructible_v

inline constexpr

Definition at line 3212 of file type_traits.

## is_trivially_move_assignable_v

template<typename _Tp>

bool std::is_trivially_move_assignable_v

inline constexpr

Definition at line 3209 of file type_traits.

## is_trivially_move_constructible_v

template<typename _Tp>

bool std::is_trivially_move_constructible_v

inline constexpr

Definition at line 3200 of file type_traits.

## is_union_v

template<typename _Tp>

bool std::is_union_v

inline constexpr

Definition at line 3119 of file type_traits.

## is_unsigned_v

template<typename _Tp>

bool std::is_unsigned_v

inline constexpr

Definition at line 3169 of file type_traits.

## is_void_v

template<typename _Tp>

bool std::is_void_v

inline constexpr

Definition at line 3093 of file type_traits.

## is_volatile_v

template<typename _Tp>

bool std::is_volatile_v

inline constexpr

Definition at line 3141 of file type_traits.

## negation_v

template<typename _Pp>

bool std::negation_v

inline constexpr

Definition at line 203 of file type_traits.

## rank_v

template<typename _Tp>

size_t std::rank_v

inline constexpr

Definition at line 3244 of file type_traits.