libstdc++: type_traits File Reference (original) (raw)
Go to the source code of this file.
Typedefs | |
---|---|
template<bool _Cond, typename _If , typename _Else > | |
using | std::__conditional_t = typename __conditional< _Cond >::template type< _If, _Else > |
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 > | |
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<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<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 |
using | std::false_type = __bool_constant< false > |
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_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::result_of_t = typename result_of< _Tp >::type |
using | std::true_type = __bool_constant< true > |
template<typename _Tp > | |
using | std::underlying_type_t = typename underlying_type< _Tp >::type |
Functions | |
---|---|
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::swap (_Tp &, _Tp &) 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 _Tp , typename... _Args> | |
constexpr bool | std::__is_nothrow_new_constructible |
template<typename... _Tp> | |
using | std::common_reference_t = typename common_reference< _Tp... >::type |
template<typename _S1 , typename _S2 , typename _M1 , typename _M2 > | |
constexpr bool | std::is_corresponding_member (_M1 _S1::*__m1, _M2 _S2::*__m2) noexcept |
template<typename _Tp , typename _Up > | |
constexpr bool | std::is_layout_compatible_v |
template<typename _Base , typename _Derived > | |
constexpr bool | std::is_pointer_interconvertible_base_of_v |
template<typename _Tp , typename _Mem > | |
constexpr bool | std::is_pointer_interconvertible_with_class (_Mem _Tp::*__mp) noexcept |
This is a Standard C++ Library header.
Definition in file type_traits.
◆ __glibcxx_want_bool_constant
#define __glibcxx_want_bool_constant
◆ __glibcxx_want_bounded_array_traits
#define __glibcxx_want_bounded_array_traits
◆ __glibcxx_want_has_unique_object_representations
#define __glibcxx_want_has_unique_object_representations
◆ __glibcxx_want_integral_constant_callable
#define __glibcxx_want_integral_constant_callable
◆ __glibcxx_want_is_aggregate
#define __glibcxx_want_is_aggregate
◆ __glibcxx_want_is_constant_evaluated
#define __glibcxx_want_is_constant_evaluated
◆ __glibcxx_want_is_final
#define __glibcxx_want_is_final
◆ __glibcxx_want_is_invocable
#define __glibcxx_want_is_invocable
◆ __glibcxx_want_is_layout_compatible
#define __glibcxx_want_is_layout_compatible
◆ __glibcxx_want_is_nothrow_convertible
#define __glibcxx_want_is_nothrow_convertible
◆ __glibcxx_want_is_null_pointer
#define __glibcxx_want_is_null_pointer
◆ __glibcxx_want_is_pointer_interconvertible
#define __glibcxx_want_is_pointer_interconvertible
◆ __glibcxx_want_is_scoped_enum
#define __glibcxx_want_is_scoped_enum
◆ __glibcxx_want_is_swappable
#define __glibcxx_want_is_swappable
◆ __glibcxx_want_logical_traits
#define __glibcxx_want_logical_traits
◆ __glibcxx_want_reference_from_temporary
#define __glibcxx_want_reference_from_temporary
◆ __glibcxx_want_remove_cvref
#define __glibcxx_want_remove_cvref
◆ __glibcxx_want_result_of_sfinae
#define __glibcxx_want_result_of_sfinae
◆ __glibcxx_want_transformation_trait_aliases
#define __glibcxx_want_transformation_trait_aliases
◆ __glibcxx_want_type_identity
#define __glibcxx_want_type_identity
◆ __glibcxx_want_type_trait_variable_templates
#define __glibcxx_want_type_trait_variable_templates
◆ __glibcxx_want_unwrap_ref
#define __glibcxx_want_unwrap_ref
◆ __glibcxx_want_void_t
#define __glibcxx_want_void_t