libstdc++
|
Go to the source code of this file.
Namespaces | |
std | |
Macros | |
#define | __cpp_lib_bool_constant |
#define | __cpp_lib_integral_constant_callable |
#define | __cpp_lib_is_final |
#define | __cpp_lib_is_invocable |
#define | __cpp_lib_is_null_pointer |
#define | __cpp_lib_is_swappable |
#define | __cpp_lib_logical_traits |
#define | __cpp_lib_result_of_sfinae |
#define | __cpp_lib_transformation_trait_aliases |
#define | __cpp_lib_type_trait_variable_templates |
#define | __cpp_lib_void_t |
#define | _GLIBCXX_HAS_NESTED_TYPE(_NTYPE) |
#define | _GLIBCXX_TYPE_TRAITS |
Typedefs | |
template<bool __v> | |
using | std::__bool_constant = integral_constant< bool, __v > |
template<typename _Fn , typename... _Args> | |
using | std::__call_is_nothrow_ = __call_is_nothrow< __invoke_result< _Fn, _Args...>, _Fn, _Args...> |
template<typename _Tp > | |
using | std::__decay_and_strip = __strip_reference_wrapper< __decay_t< _Tp >> |
template<typename _Tp > | |
using | std::__decay_t = typename decay< _Tp >::type |
template<typename _Default , template< typename...> class _Op, typename... _Args> | |
using | std::__detected_or = __detector< _Default, void, _Op, _Args...> |
template<typename _Default , template< typename...> class _Op, typename... _Args> | |
using | std::__detected_or_t = typename __detected_or< _Default, _Op, _Args...>::type |
template<bool _Cond, typename _Tp = void> | |
using | std::__enable_if_t = typename enable_if< _Cond, _Tp >::type |
template<typename _ToElementType , typename _FromElementType > | |
using | std::__is_array_convertible = is_convertible< _FromElementType(*)[], _ToElementType(*)[]> |
template<typename _Tp , typename _Up > | |
using | std::__is_nothrow_assignable_impl = __bool_constant< __is_nothrow_assignable(_Tp, _Up)> |
template<typename _Tp , typename... _Args> | |
using | std::__is_nothrow_constructible_impl = __bool_constant< __is_nothrow_constructible(_Tp, _Args...)> |
template<typename _Tp , typename... _Types> | |
using | std::__is_one_of = __or_< is_same< _Tp, _Types >...> |
template<typename _Tp > | |
using | std::__is_signed_integer = __is_one_of< __remove_cv_t< _Tp >, signed char, signed short, signed int, signed long, signed long long > |
template<typename _Tp > | |
using | std::__is_standard_integer = __or_< __is_signed_integer< _Tp >, __is_unsigned_integer< _Tp >> |
template<typename _Tp > | |
using | std::__is_unsigned_integer = __is_one_of< __remove_cv_t< _Tp >, unsigned char, unsigned short, unsigned int, unsigned long, unsigned long long > |
template<typename _Tp > | |
using | std::__remove_cv_t = typename remove_cv< _Tp >::type |
template<typename _Tp > | |
using | std::__remove_cvref_t = typename remove_cv< typename remove_reference< _Tp >::type >::type |
template<typename _Tp > | |
using | std::__type_identity_t = typename __type_identity< _Tp >::type |
template<typename... > | |
using | std::__void_t = void |
template<typename... _Cond> | |
using | std::_Require = __enable_if_t< __and_< _Cond...>::value > |
template<typename _Tp > | |
using | std::add_const_t = typename add_const< _Tp >::type |
template<typename _Tp > | |
using | std::add_cv_t = typename add_cv< _Tp >::type |
template<typename _Tp > | |
using | std::add_lvalue_reference_t = typename add_lvalue_reference< _Tp >::type |
template<typename _Tp > | |
using | std::add_pointer_t = typename add_pointer< _Tp >::type |
template<typename _Tp > | |
using | std::add_rvalue_reference_t = typename add_rvalue_reference< _Tp >::type |
template<typename _Tp > | |
using | std::add_volatile_t = typename add_volatile< _Tp >::type |
template<size_t _Len, size_t _Align = __alignof__(typename __aligned_storage_msa<_Len>::__type)> | |
using | std::aligned_storage_t = typename aligned_storage< _Len, _Align >::type |
template<size_t _Len, typename... _Types> | |
using | std::aligned_union_t = typename aligned_union< _Len, _Types...>::type |
template<bool __v> | |
using | std::bool_constant = integral_constant< bool, __v > |
template<typename... _Tp> | |
using | std::common_type_t = typename common_type< _Tp...>::type |
template<bool _Cond, typename _Iftrue , typename _Iffalse > | |
using | std::conditional_t = typename conditional< _Cond, _Iftrue, _Iffalse >::type |
template<typename _Tp > | |
using | std::decay_t = typename decay< _Tp >::type |
template<bool _Cond, typename _Tp = void> | |
using | std::enable_if_t = typename enable_if< _Cond, _Tp >::type |
typedef integral_constant < bool, false > | std::false_type |
template<typename _Fn , typename... _Args> | |
using | std::invoke_result_t = typename invoke_result< _Fn, _Args...>::type |
template<typename _Tp > | |
using | std::make_signed_t = typename make_signed< _Tp >::type |
template<typename _Tp > | |
using | std::make_unsigned_t = typename make_unsigned< _Tp >::type |
template<typename _Tp > | |
using | std::remove_all_extents_t = typename remove_all_extents< _Tp >::type |
template<typename _Tp > | |
using | std::remove_const_t = typename remove_const< _Tp >::type |
template<typename _Tp > | |
using | std::remove_cv_t = typename remove_cv< _Tp >::type |
template<typename _Tp > | |
using | std::remove_extent_t = typename remove_extent< _Tp >::type |
template<typename _Tp > | |
using | std::remove_pointer_t = typename remove_pointer< _Tp >::type |
template<typename _Tp > | |
using | std::remove_reference_t = typename remove_reference< _Tp >::type |
template<typename _Tp > | |
using | std::remove_volatile_t = typename remove_volatile< _Tp >::type |
template<typename _Tp > | |
using | std::result_of_t = typename result_of< _Tp >::type |
typedef integral_constant < bool, true > | std::true_type |
template<typename _Tp > | |
using | std::underlying_type_t = typename underlying_type< _Tp >::type |
template<typename... > | |
using | std::void_t = void |
Functions | |
template<typename _Fn , typename _Tp , typename... _Args> | |
constexpr bool | std::__call_is_nt (__invoke_memfun_ref) |
template<typename _Fn , typename _Tp , typename... _Args> | |
constexpr bool | std::__call_is_nt (__invoke_memfun_deref) |
template<typename _Fn , typename _Tp > | |
constexpr bool | std::__call_is_nt (__invoke_memobj_ref) |
template<typename _Fn , typename _Tp > | |
constexpr bool | std::__call_is_nt (__invoke_memobj_deref) |
template<typename _Fn , typename... _Args> | |
constexpr bool | std::__call_is_nt (__invoke_other) |
template<typename _Tp , size_t = sizeof(_Tp)> | |
constexpr true_type | std::__is_complete_or_unbounded (__type_identity< _Tp >) |
template<typename _TypeIdentity , typename _NestedType = typename _TypeIdentity::type> | |
constexpr __or_< is_reference < _NestedType >, is_function < _NestedType >, is_void < _NestedType > , __is_array_unknown_bounds < _NestedType > >::type | std::__is_complete_or_unbounded (_TypeIdentity) |
template<typename _Tp > | |
std::__is_nullptr_t is_null_pointer | std::_GLIBCXX_DEPRECATED_SUGGEST ("std::is_null_pointer") |
template<typename _Tp > | |
auto | std::declval () noexcept-> decltype(__declval< _Tp >(0)) |
template<typename _Tp > | |
constexpr _Require< __not_ < __is_tuple_like< _Tp > >, is_move_constructible< _Tp > , is_move_assignable< _Tp > > | std::noexcept (__and_< is_nothrow_move_constructible< _Tp >, is_nothrow_move_assignable< _Tp >>::value) |
template<typename _Tp , size_t _Nm> | |
constexpr __enable_if_t < __is_swappable< _Tp >::value > | std::swap (_Tp(&__a)[_Nm], _Tp(&__b)[_Nm]) noexcept(__is_nothrow_swappable< _Tp >::value) |
Variables | |
template<typename... _Bn> | |
constexpr bool | std::__and_v |
template<typename... _Bn> | |
constexpr bool | std::__or_v |
std::is_reference | std::_GLIBCXX_DEPRECATED_SUGGEST |
template<typename _Tp > | |
constexpr size_t | std::alignment_of_v |
template<typename... _Bn> | |
constexpr bool | std::conjunction_v |
template<typename... _Bn> | |
constexpr bool | std::disjunction_v |
template<typename _Tp , unsigned _Idx = 0> | |
constexpr size_t | std::extent_v |
template<typename _Tp > | |
constexpr bool | std::has_virtual_destructor_v |
template<typename _Tp > | |
constexpr bool | std::is_abstract_v |
template<typename _Tp > | |
constexpr bool | std::is_arithmetic_v |
template<typename _Tp > | |
constexpr bool | std::is_array_v |
template<typename _Tp , typename _Up > | |
constexpr bool | std::is_assignable_v |
template<typename _Base , typename _Derived > | |
constexpr bool | std::is_base_of_v |
template<typename _Tp > | |
constexpr bool | std::is_class_v |
template<typename _Tp > | |
constexpr bool | std::is_compound_v |
template<typename _Tp > | |
constexpr bool | std::is_const_v |
template<typename _Tp , typename... _Args> | |
constexpr bool | std::is_constructible_v |
template<typename _From , typename _To > | |
constexpr bool | std::is_convertible_v |
template<typename _Tp > | |
constexpr bool | std::is_copy_assignable_v |
template<typename _Tp > | |
constexpr bool | std::is_copy_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_default_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_destructible_v |
template<typename _Tp > | |
constexpr bool | std::is_empty_v |
template<typename _Tp > | |
constexpr bool | std::is_enum_v |
template<typename _Tp > | |
constexpr bool | std::is_final_v |
template<typename _Tp > | |
constexpr bool | std::is_floating_point_v |
template<typename _Tp > | |
constexpr bool | std::is_function_v |
template<typename _Tp > | |
constexpr bool | std::is_fundamental_v |
template<typename _Tp > | |
constexpr bool | std::is_integral_v |
template<typename _Ret , typename _Fn , typename... _Args> | |
constexpr bool | std::is_invocable_r_v |
template<typename _Fn , typename... _Args> | |
constexpr bool | std::is_invocable_v |
template<typename _Tp > | |
constexpr bool | std::is_literal_type_v |
template<typename _Tp > | |
constexpr bool | std::is_lvalue_reference_v |
template<typename _Tp > | |
constexpr bool | std::is_member_function_pointer_v |
template<typename _Tp > | |
constexpr bool | std::is_member_object_pointer_v |
template<typename _Tp > | |
constexpr bool | std::is_member_pointer_v |
template<typename _Tp > | |
constexpr bool | std::is_move_assignable_v |
template<typename _Tp > | |
constexpr bool | std::is_move_constructible_v |
template<typename _Tp , typename _Up > | |
constexpr bool | std::is_nothrow_assignable_v |
template<typename _Tp , typename... _Args> | |
constexpr bool | std::is_nothrow_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_nothrow_copy_assignable_v |
template<typename _Tp > | |
constexpr bool | std::is_nothrow_copy_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_nothrow_default_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_nothrow_destructible_v |
template<typename _Ret , typename _Fn , typename... _Args> | |
constexpr bool | std::is_nothrow_invocable_r_v |
template<typename _Fn , typename... _Args> | |
constexpr bool | std::is_nothrow_invocable_v |
template<typename _Tp > | |
constexpr bool | std::is_nothrow_move_assignable_v |
template<typename _Tp > | |
constexpr bool | std::is_nothrow_move_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_nothrow_swappable_v |
template<typename _Tp , typename _Up > | |
constexpr bool | std::is_nothrow_swappable_with_v |
template<typename _Tp > | |
constexpr bool | std::is_null_pointer_v |
template<typename _Tp > | |
constexpr bool | std::is_object_v |
template<typename _Tp > | |
constexpr bool | std::is_pod_v |
template<typename _Tp > | |
constexpr bool | std::is_pointer_v |
template<typename _Tp > | |
constexpr bool | std::is_polymorphic_v |
template<typename _Tp > | |
constexpr bool | std::is_reference_v |
template<typename _Tp > | |
constexpr bool | std::is_rvalue_reference_v |
template<typename _Tp , typename _Up > | |
constexpr bool | std::is_same_v |
template<typename _Tp > | |
constexpr bool | std::is_scalar_v |
template<typename _Tp > | |
constexpr bool | std::is_signed_v |
template<typename _Tp > | |
constexpr bool | std::is_standard_layout_v |
template<typename _Tp > | |
constexpr bool | std::is_swappable_v |
template<typename _Tp , typename _Up > | |
constexpr bool | std::is_swappable_with_v |
template<typename _Tp > | |
constexpr bool | std::is_trivial_v |
template<typename _Tp , typename _Up > | |
constexpr bool | std::is_trivially_assignable_v |
template<typename _Tp , typename... _Args> | |
constexpr bool | std::is_trivially_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_trivially_copy_assignable_v |
template<typename _Tp > | |
constexpr bool | std::is_trivially_copy_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_trivially_copyable_v |
template<typename _Tp > | |
constexpr bool | std::is_trivially_default_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_trivially_destructible_v |
template<typename _Tp > | |
constexpr bool | std::is_trivially_move_assignable_v |
template<typename _Tp > | |
constexpr bool | std::is_trivially_move_constructible_v |
template<typename _Tp > | |
constexpr bool | std::is_union_v |
template<typename _Tp > | |
constexpr bool | std::is_unsigned_v |
template<typename _Tp > | |
constexpr bool | std::is_void_v |
template<typename _Tp > | |
constexpr bool | std::is_volatile_v |
template<typename _Pp > | |
constexpr bool | std::negation_v |
template<typename _Tp > | |
constexpr size_t | std::rank_v |
This is a Standard C++ Library header.
Definition in file type_traits.
#define _GLIBCXX_HAS_NESTED_TYPE | ( | _NTYPE | ) |
Use SFINAE to determine if the type _Tp has a publicly-accessible member type _NTYPE.
Definition at line 2574 of file type_traits.