table of contents
std::experimental(3cxx) | std::experimental(3cxx) |
NAME¶
std::experimental - Namespace for features defined in ISO Technical Specifications.
SYNOPSIS¶
Classes¶
class any
A type-safe container of any type. class bad_any_cast
Exception class thrown by a failed any_cast. class
bad_optional_access
Exception class thrown when a disengaged optional object is dereferenced.
class basic_string_view
A non-owning reference to a string. struct in_place_t
Tag type for in-place construction. struct nullopt_t
Tag type to disengage optional objects. class optional
Class template for optional values. class ostream_joiner
Output iterator that inserts a delimiter between elements. struct
owner_less< shared_ptr< _Tp > >
Partial specialization of owner_less for shared_ptr. struct owner_less<
weak_ptr< _Tp > >
Partial specialization of owner_less for weak_ptr. class
propagate_const
Const-propagating wrapper.
Typedefs¶
template<size_t _Size> using
__bool_storage_member_type_t = typename
__bool_storage_member_type< _Size >::type
template<typename _RAIter , typename _Hash , typename _Pred , typename _Val
= typename iterator_traits<_RAIter>::value_type, typename _Diff =
typename iterator_traits<_RAIter>::difference_type> using
__boyer_moore_base_t = std::conditional_t<
std::__is_byte_like< _Val, _Pred >::value,
__boyer_moore_array_base< _Diff, 256, _Pred >,
__boyer_moore_map_base< _Val, _Diff, _Hash, _Pred > >
template<typename _Tp , size_t _Np> using __deduced_simd =
simd< _Tp, simd_abi::deduce_t< _Tp, _Np > >
template<typename _Tp , size_t _Np> using __deduced_simd_mask =
simd_mask< _Tp, simd_abi::deduce_t< _Tp, _Np > >
template<typename... _Ts> using __first_of_pack_t = typename
__first_of_pack< _Ts... >::type
template<typename _Tp , int _Np> using __fixed_size_storage_t =
typename __fixed_size_storage< _Tp, _Np >::type
template<typename _Tp > using __int_for_sizeof_t =
decltype(__int_for_sizeof< sizeof(_Tp)>())
template<size_t _Np> using __int_with_sizeof_t =
decltype(__int_for_sizeof< _Np >())
template<typename _Tp > using __intrinsic_type16_t = typename
__intrinsic_type< _Tp, 16 >::type
template<typename _Tp > using __intrinsic_type2_t = typename
__intrinsic_type< _Tp, 2 >::type
template<typename _Tp > using __intrinsic_type32_t = typename
__intrinsic_type< _Tp, 32 >::type
template<typename _Tp > using __intrinsic_type4_t = typename
__intrinsic_type< _Tp, 4 >::type
template<typename _Tp > using __intrinsic_type64_t = typename
__intrinsic_type< _Tp, 64 >::type
template<typename _Tp > using __intrinsic_type8_t = typename
__intrinsic_type< _Tp, 8 >::type
template<typename _Tp , size_t _Size> using __intrinsic_type_t =
typename __intrinsic_type< _Tp, _Size *sizeof(_Tp)>::type
using __m128 = float
using __m128d = double
using __m128i = long long
using __m256 = float
using __m256d = double
using __m256i = long long
using __m512 = float
using __m512d = double
using __m512i = long long
template<typename _Tp , typename _Up > using __make_dependent_t =
typename __make_dependent< _Tp, _Up >::type
template<typename _Tp > using __may_alias = _Tp
template<typename _Tp > using __value_type_or_identity_t =
decltype(__value_type_or_identity_impl< _Tp >(int()))
template<typename _Tp > using __vector_type16_t = typename
__vector_type< _Tp, 16 >::type
template<typename _Tp > using __vector_type2_t = typename
__vector_type< _Tp, 2 >::type
template<typename _Tp > using __vector_type32_t = typename
__vector_type< _Tp, 32 >::type
template<typename _Tp > using __vector_type4_t = typename
__vector_type< _Tp, 4 >::type
template<typename _Tp > using __vector_type64_t = typename
__vector_type< _Tp, 64 >::type
template<typename _Tp > using __vector_type8_t = typename
__vector_type< _Tp, 8 >::type
template<typename _Tp , size_t _Size> using __vector_type_t =
typename __vector_type_n< _Tp, _Size >::type
using _AllNativeAbis = _AbiList< simd_abi::_VecBltnBtmsk,
simd_abi::_VecBuiltin, __scalar_abi_wrapper >
using _LLong = long long
template<typename _Ptr , typename _ValueType , typename = enable_if_t<
__is_possible_loadstore_conversion<_Ptr, _ValueType>::value>>
using _LoadStorePtr = _Ptr
template<size_t _Np> using _SanitizedBitMask = _BitMask< _Np,
true >
using _SChar = signed char
template<typename _Tp > using _SimdWrapper16 = _SimdWrapper<
_Tp, 16/sizeof(_Tp)>
template<typename _Tp > using _SimdWrapper32 = _SimdWrapper<
_Tp, 32/sizeof(_Tp)>
template<typename _Tp > using _SimdWrapper64 = _SimdWrapper<
_Tp, 64/sizeof(_Tp)>
template<typename _Tp > using _SimdWrapper8 = _SimdWrapper<
_Tp, 8/sizeof(_Tp)>
template<size_t _Xp> using _SizeConstant =
integral_constant< size_t, _Xp >
using _UChar = unsigned char
using _UInt = unsigned int
using _ULLong = unsigned long long
using _ULong = unsigned long
using _UShort = unsigned short
template<typename _From , typename _To , typename =
enable_if_t<negation<
__is_narrowing_conversion<__remove_cvref_t<_From>,
_To>>::value>> using _ValuePreserving = _From
template<typename _From , typename _To , typename _DecayedFrom =
__remove_cvref_t<_From>, typename = enable_if_t<conjunction<
is_convertible<_From, _To>, disjunction< is_same<_DecayedFrom,
_To>, is_same<_DecayedFrom, int>,
conjunction<is_same<_DecayedFrom, _UInt>,
is_unsigned<_To>>,
negation<__is_narrowing_conversion<_DecayedFrom,
_To>>>>::value>> using _ValuePreservingOrInt =
_From
template<typename _Tp , typename =
enable_if_t<__is_vectorizable_v<_Tp>>> using
_Vectorizable = _Tp
template<typename _Tp , typename = typename
_VectorTraitsImpl<_Tp>::type> using _VectorTraits =
_VectorTraitsImpl< _Tp >
template<typename _Default , template< typename... > class _Op,
typename... _Args> using detected_or =
std::__detected_or< _Default, _Op, _Args... >
template<typename _Default , template< typename... > class _Op,
typename... _Args> using detected_or_t = typename detected_or<
_Default, _Op, _Args... >::type
template<template< typename... > class _Op, typename... _Args>
using detected_t = typename std::__detector< nonesuch,
void, _Op, _Args... >::type
using erased_type = std::__erased_type
template<typename _Tp , int _Np> using fixed_size_simd = simd<
_Tp, simd_abi::fixed_size< _Np > >
template<typename _Tp , int _Np> using fixed_size_simd_mask =
simd_mask< _Tp, simd_abi::fixed_size< _Np > >
template<template< typename... > class _Op, typename... _Args>
using is_detected = typename std::__detector< nonesuch,
void, _Op, _Args... >::value_t
template<typename _To , template< typename... > class _Op,
typename... _Args> using is_detected_convertible =
is_convertible< detected_t< _Op, _Args... >, _To >
template<typename _Expected , template< typename... > class _Op,
typename... _Args> using is_detected_exact = is_same<
_Expected, detected_t< _Op, _Args... > >
template<typename _Tp > using native_simd = simd< _Tp,
simd_abi::native< _Tp > >
template<typename _Tp > using native_simd_mask = simd_mask<
_Tp, simd_abi::native< _Tp > >
template<typename _Tp , typename _V > using rebind_simd_t =
typename rebind_simd< _Tp, _V >::type
template<int _Np, typename _V > using resize_simd_t = typename
resize_simd< _Np, _V >::type
template<typename _Tp > using safe_make_signed_t = typename
__safe_make_signed< _Tp >::type
using string_view = basic_string_view< char >
using u16string_view = basic_string_view< char16_t >
using u32string_view = basic_string_view< char32_t >
template<typename... > using void_t = void
using wstring_view = basic_string_view< wchar_t >
Functions¶
template<template< int > class _Abi, int _Bytes>
constexpr int __abi_bytes_impl (_Abi< _Bytes > *)
template<typename _Tp > constexpr int __abi_bytes_impl (_Tp *)
template<typename _TW > constexpr _TW __and (_TW __a, _TW __b)
noexcept
template<typename _TW > constexpr _TW __andnot (_TW __a, _TW __b)
noexcept
template<typename _Fn , typename _Tuple , std::size_t... _Idx> constexpr
decltype(auto) __apply_impl (_Fn &&__f, _Tuple &&__t,
std::index_sequence< _Idx... >)
template<typename _V > constexpr auto __as_vector (_V __x)
template<size_t _Np = 0, typename _V > constexpr auto
__as_wrapper (_V __x)
template<typename _Tp , size_t _Np> constexpr _AutoCast< typename
_SimdWrapper< _Tp, _Np >::_BuiltinType > __auto_bitcast
(const _SimdWrapper< _Tp, _Np > &__x)
template<typename _Tp > constexpr _AutoCast< _Tp >
__auto_bitcast (const _Tp &__x)
template<typename _To , typename _From > constexpr _To __bit_cast
(const _From __x)
template<size_t _Np, typename _F0 , typename _FArgs > constexpr auto
__call_with_n_evaluations (_F0 &&__f0, _FArgs
&&__fargs)
template<size_t... _I, typename _F0 , typename _FArgs > constexpr auto
__call_with_n_evaluations (index_sequence< _I... >, _F0
&&__f0, _FArgs &&__fargs)
template<size_t _Np, size_t _First = 0, typename _Tp , typename _Fp >
constexpr auto __call_with_subscripts (_Tp &&__x, _Fp
&&__fun)
template<size_t _First = 0, size_t... _It, typename _Tp , typename _Fp >
constexpr auto __call_with_subscripts (_Tp &&__x,
index_sequence< _It... >, _Fp &&__fun)
template<typename _Tp , typename _TVT = _VectorTraits<_Tp>, typename
_R = __vector_type_t<typename _TVT::value_type, _TVT::_S_full_size *
2>> constexpr _R __concat (_Tp a_, _Tp b_)
template<typename _Tp , typename _Ap > constexpr const auto &
__data (const simd< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > constexpr const auto &
__data (const simd< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > constexpr const auto &
__data (const simd_mask< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > constexpr const auto &
__data (const simd_mask< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > constexpr auto &
__data (simd< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > constexpr auto &
__data (simd< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > constexpr auto &
__data (simd_mask< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > constexpr auto &
__data (simd_mask< _Tp, _Ap > &__x)
constexpr size_t __div_roundup (size_t __a, size_t __b)
template<size_t _Np, typename _Fp > constexpr void
__execute_n_times (_Fp &&__f)
template<typename _Fp > constexpr void
__execute_on_index_sequence (_Fp &&,
index_sequence<>)
template<typename _Fp , size_t... _I> constexpr void
__execute_on_index_sequence (_Fp &&__f,
index_sequence< _I... >)
template<typename _R , typename _Fp , size_t... _I> constexpr _R
__execute_on_index_sequence_with_return (_Fp &&__f,
index_sequence< _I... >)
template<int _Offset, int _SplitBy, typename _Tp , typename _TVT =
_VectorTraits<_Tp>, typename _R = __vector_type_t<typename
_TVT::value_type, _TVT::_S_full_size / _SplitBy>> constexpr _R
__extract (_Tp __in)
template<typename _Tp , size_t _Np> _SimdWrapper< _Tp, _Np/2 >
__extract_center (_SimdWrapper< _Tp, _Np > __x)
template<typename _Tp , typename _A0 , typename... _As> _SimdWrapper<
_Tp, _SimdTuple< _Tp, _A0, _As... >::_S_size()/2 >
__extract_center (const _SimdTuple< _Tp, _A0, _As... >
&__x)
template<int Index, int Parts, int _Combine = 1, typename _Tp , typename
_A0 , typename... _As> auto __extract_part (const _SimdTuple<
_Tp, _A0, _As... > &__x)
template<int _Index, int _Total, int _Combine = 1, typename _Tp , size_t
_Np> _SimdWrapper< _Tp, _Np/_Total *_Combine >
__extract_part (const _SimdWrapper< _Tp, _Np > __x)
template<size_t _Np, typename _R , typename _Fp > constexpr _R
__generate_from_n_evaluations (_Fp &&__f)
template<typename _V , typename _VVT = _VectorTraits<_V>, typename
_Gp > constexpr _V __generate_vector (_Gp &&__gen)
template<typename _Tp , size_t _Np, typename _Gp > constexpr
__vector_type_t< _Tp, _Np > __generate_vector (_Gp
&&__gen)
template<typename _Tp , size_t _Np, typename _Gp , size_t... _I>
constexpr __vector_type_t< _Tp, _Np > __generate_vector_impl
(_Gp &&__gen, index_sequence< _I... >)
template<typename _Tp > constexpr auto __hi128 (_Tp __x)
template<typename _Tp > constexpr auto __hi256 (_Tp __x)
template<typename _Tp , typename _R = __vector_type8_t<typename
_VectorTraits<_Tp>::value_type>> constexpr _R __hi64 (_Tp
__x)
template<typename _Tp , typename _R = __vector_type8_t<typename
_VectorTraits<_Tp>::value_type>> constexpr _R __hi64z
([[maybe_unused]] _Tp __x)
template<size_t _Bytes> constexpr auto __int_for_sizeof ()
template<typename _To , typename _From > constexpr _To
__intrin_bitcast (_From __v)
template<typename... _Args> void __invoke_ub ([[maybe_unused]]
const char *__msg, [[maybe_unused]] const _Args &... __args)
template<typename _Abi > constexpr bool __is_avx512_abi ()
template<typename _Abi > constexpr bool __is_avx_abi ()
template<typename _Abi > constexpr bool __is_builtin_bitmask_abi
()
template<typename _Abi > constexpr bool __is_neon_abi ()
template<typename _Abi > constexpr bool __is_scalar_abi ()
template<typename _Abi > constexpr bool __is_sse_abi ()
template<typename _Tp > constexpr auto __lo128 (_Tp __x)
template<typename _Tp > constexpr auto __lo256 (_Tp __x)
template<typename _Tp , typename _R = __vector_type8_t<typename
_VectorTraits<_Tp>::value_type>> constexpr _R __lo64 (_Tp
__x)
template<typename _Tp , typename... _Args> constexpr __vector_type_t<
_Tp, sizeof...(_Args)> __make_vector (const _Args &... __args)
template<typename _Tp , typename _TVT = _VectorTraits<_Tp>>
constexpr _Tp __not (_Tp __a) noexcept
template<typename _TW > constexpr _TW __or (_TW __a, _TW __b)
noexcept
template<typename _Tp , typename _Ap > constexpr size_t
__size_or_zero_dispatch (float)
template<typename _Tp , typename _Ap , size_t _Np = simd_size<_Tp,
_Ap>::value> constexpr size_t __size_or_zero_dispatch (int)
template<size_t... _Sizes, typename _Tp , typename... _As> auto
__split_wrapper (_SizeList< _Sizes... >, const _SimdTuple<
_Tp, _As... > &__x)
template<typename _Tp , typename _A0 , typename... _As> void
__store_pack_of_simd (char *__mem, const simd< _Tp, _A0 >
&__x0, const simd< _Tp, _As > &... __xs)
template<size_t _I, typename _Tp , typename _Ap , typename... _As>
constexpr _Tp __subscript_in_pack (const simd< _Tp, _Ap >
&__x, const simd< _Tp, _As > &... __xs)
template<typename _Tp , size_t _Nm, size_t... _Idx> constexpr
array< remove_cv_t< _Tp >, _Nm > __to_array
(_Tp(&__a)[_Nm], index_sequence< _Idx... >)
template<typename _Tp , typename _TVT = _VectorTraits<_Tp>, typename
_R = __intrinsic_type_t<typename _TVT::value_type,
_TVT::_S_full_size>> constexpr _R __to_intrin (_Tp __x)
template<typename _V > constexpr auto
__to_value_type_or_member_type (const _V &__x) ->
decltype(__data(__x))
template<typename _V > constexpr const _V::value_type &
__to_value_type_or_member_type (const typename _V::value_type
&__x)
template<typename _Tp > _Tp __value_type_or_identity_impl (float)
template<typename _Tp > _Tp::value_type
__value_type_or_identity_impl (int)
template<typename _To , size_t _NN = 0, typename _From , typename _FromVT =
_VectorTraits<_From>, size_t _Np = _NN == 0 ? sizeof(_From) /
sizeof(_To) : _NN> constexpr __vector_type_t< _To, _Np >
__vector_bitcast (_From __x)
template<typename _To , size_t _NN = 0, typename _Tp , size_t _Nx, size_t
_Np = _NN == 0 ? sizeof(_SimdWrapper<_Tp, _Nx>) / sizeof(_To) :
_NN> constexpr __vector_type_t< _To, _Np > __vector_bitcast
(const _SimdWrapper< _Tp, _Nx > &__x)
template<size_t _Np, typename _Tp > constexpr __vector_type_t< _Tp,
_Np > __vector_broadcast (_Tp __x)
template<typename _Tp > constexpr size_t __vectorized_sizeof ()
template<typename _TW > constexpr _TW __xor (_TW __a, _TW __b)
noexcept
template<typename _Tp , typename _TVT = _VectorTraits<_Tp>>
_ZeroExtendProxy< _Tp, _TVT > __zero_extend (_Tp __x)
std::default_random_engine & _S_randint_engine ()
constexpr bool all_of (_ExactBool __x) noexcept
template<typename _Tp , typename _Abi > constexpr bool all_of
(const simd_mask< _Tp, _Abi > &__k) noexcept
template<typename _ValueType > _ValueType any_cast (const
any &__any)
Access the contained object. constexpr bool any_of (_ExactBool __x)
noexcept
template<typename _Tp , typename _Abi > constexpr bool any_of
(const simd_mask< _Tp, _Abi > &__k) noexcept
template<typename _Fn , typename _Tuple > constexpr decltype(auto)
apply (_Fn &&__f, _Tuple &&__t)
template<typename _Tp > bool atomic_compare_exchange_strong
(shared_ptr< _Tp > *__p, shared_ptr< _Tp > *__v, shared_ptr<
_Tp > __w)
template<typename _Tp > bool
atomic_compare_exchange_strong_explicit (shared_ptr< _Tp >
*__p, shared_ptr< _Tp > *__v, shared_ptr< _Tp > __w,
memory_order __success, memory_order __failure)
template<typename _Tp > bool atomic_compare_exchange_weak
(shared_ptr< _Tp > *__p, shared_ptr< _Tp > *__v, shared_ptr<
_Tp > __w)
template<typename _Tp > bool
atomic_compare_exchange_weak_explicit (shared_ptr< _Tp > *__p,
shared_ptr< _Tp > *__v, shared_ptr< _Tp > __w,
memory_order __success, memory_order __failure)
template<typename _Tp > void atomic_exchange (shared_ptr< _Tp
> *__p, shared_ptr< _Tp > __r)
template<typename _Tp > shared_ptr< _Tp >
atomic_exchange_explicit (const shared_ptr< _Tp > *__p,
shared_ptr< _Tp > __r, memory_order __mo)
template<typename _Tp > bool atomic_is_lock_free (const
shared_ptr< _Tp > *__p)
template<typename _Tp > shared_ptr< _Tp > atomic_load
(const shared_ptr< _Tp > *__p)
template<typename _Tp > shared_ptr< _Tp >
atomic_load_explicit (const shared_ptr< _Tp > *__p,
memory_order __mo)
template<typename _Tp > void atomic_store (shared_ptr< _Tp
> *__p, shared_ptr< _Tp > __r)
template<typename _Tp > shared_ptr< _Tp >
atomic_store_explicit (const shared_ptr< _Tp > *__p,
shared_ptr< _Tp > __r, memory_order __mo)
template<typename _Tp , typename _Ap > constexpr simd< _Tp, _Ap >
clamp (const simd< _Tp, _Ap > &__v, const simd< _Tp, _Ap
> &__lo, const simd< _Tp, _Ap > &__hi)
template<typename _Tp , typename _Abi , size_t _Np> constexpr
__deduced_simd< _Tp, simd_size_v< _Tp, _Abi > *_Np >
concat (const array< simd< _Tp, _Abi >, _Np >
&__x)
template<typename _Tp , typename... _As> constexpr simd< _Tp,
simd_abi::deduce_t< _Tp,(simd_size_v< _Tp, _As >+...)> >
concat (const simd< _Tp, _As > &... __xs)
template<typename _Tp , typename _Tp1 > shared_ptr< _Tp >
const_pointer_cast (const shared_ptr< _Tp1 > &__r) noexcept
template<typename _Tp , typename _Tp1 > shared_ptr< _Tp >
dynamic_pointer_cast (const shared_ptr< _Tp1 > &__r)
noexcept
template<typename _CharT , typename _Traits , typename _Alloc , typename
_Up > void erase (basic_string< _CharT, _Traits, _Alloc
> &__cont, const _Up &__value)
template<typename _Tp , typename _Alloc , typename _Up > void
erase (deque< _Tp, _Alloc > &__cont, const _Up
&__value)
template<typename _Tp , typename _Alloc , typename _Up > void
erase (forward_list< _Tp, _Alloc > &__cont, const
_Up &__value)
template<typename _Tp , typename _Alloc , typename _Up > void
erase (list< _Tp, _Alloc > &__cont, const _Up
&__value)
template<typename _Tp , typename _Alloc , typename _Up > void
erase (vector< _Tp, _Alloc > &__cont, const _Up
&__value)
template<typename _CharT , typename _Traits , typename _Alloc , typename
_Predicate > void erase_if (basic_string< _CharT,
_Traits, _Alloc > &__cont, _Predicate __pred)
template<typename _Tp , typename _Alloc , typename _Predicate > void
erase_if (deque< _Tp, _Alloc > &__cont, _Predicate
__pred)
template<typename _Tp , typename _Alloc , typename _Predicate > void
erase_if (forward_list< _Tp, _Alloc > &__cont,
_Predicate __pred)
template<typename _Tp , typename _Alloc , typename _Predicate > void
erase_if (list< _Tp, _Alloc > &__cont, _Predicate
__pred)
template<typename _Key , typename _Tp , typename _Compare , typename _Alloc
, typename _Predicate > void erase_if (map< _Key, _Tp,
_Compare, _Alloc > &__cont, _Predicate __pred)
template<typename _Key , typename _Tp , typename _Compare , typename _Alloc
, typename _Predicate > void erase_if (multimap< _Key,
_Tp, _Compare, _Alloc > &__cont, _Predicate __pred)
template<typename _Key , typename _Compare , typename _Alloc , typename
_Predicate > void erase_if (multiset< _Key, _Compare,
_Alloc > &__cont, _Predicate __pred)
template<typename _Key , typename _Compare , typename _Alloc , typename
_Predicate > void erase_if (set< _Key, _Compare, _Alloc
> &__cont, _Predicate __pred)
template<typename _Key , typename _Tp , typename _Hash , typename _CPred ,
typename _Alloc , typename _Predicate > void erase_if
(unordered_map< _Key, _Tp, _Hash, _CPred, _Alloc > &__cont,
_Predicate __pred)
template<typename _Key , typename _Tp , typename _Hash , typename _CPred ,
typename _Alloc , typename _Predicate > void erase_if
(unordered_multimap< _Key, _Tp, _Hash, _CPred, _Alloc >
&__cont, _Predicate __pred)
template<typename _Key , typename _Hash , typename _CPred , typename _Alloc
, typename _Predicate > void erase_if
(unordered_multiset< _Key, _Hash, _CPred, _Alloc > &__cont,
_Predicate __pred)
template<typename _Key , typename _Hash , typename _CPred , typename _Alloc
, typename _Predicate > void erase_if (unordered_set<
_Key, _Hash, _CPred, _Alloc > &__cont, _Predicate __pred)
template<typename _Tp , typename _Alloc , typename _Predicate > void
erase_if (vector< _Tp, _Alloc > &__cont, _Predicate
__pred)
constexpr int find_first_set (_ExactBool)
template<typename _Tp , typename _Abi > constexpr int
find_first_set (const simd_mask< _Tp, _Abi > &__k)
constexpr int find_last_set (_ExactBool)
template<typename _Tp , typename _Abi > constexpr int
find_last_set (const simd_mask< _Tp, _Abi > &__k)
template<typename _Mn , typename _Nn > constexpr
common_type_t< _Mn, _Nn > gcd (_Mn __m, _Nn __n)
noexcept
Greatest common divisor. template<typename _Del , typename _Tp > _Del *
get_deleter (const shared_ptr< _Tp > &__p) noexcept
C++14 20.8.2.2.10. template<typename _Tp > constexpr const _Tp &
get_underlying (const propagate_const< _Tp > &__pt)
noexcept
template<typename _Tp > constexpr _Tp & get_underlying
(propagate_const< _Tp > &__pt) noexcept
template<typename _M , typename _V > constexpr _V::value_type
hmax (const const_where_expression< _M, _V > &__x) noexcept
template<typename _Tp , typename _Abi > constexpr _Tp hmax (const
simd< _Tp, _Abi > &__v) noexcept
template<typename _M , typename _V > constexpr _V::value_type
hmin (const const_where_expression< _M, _V > &__x) noexcept
template<typename _Tp , typename _Abi > constexpr _Tp hmin (const
simd< _Tp, _Abi > &__v) noexcept
template<typename _Mn , typename _Nn > constexpr
common_type_t< _Mn, _Nn > lcm (_Mn __m, _Nn __n)
Least common multiple. template<typename _Dest = void, typename...
_Types> constexpr array< typename __make_array_elem< _Dest,
_Types... >::type, sizeof...(_Types)> make_array (_Types
&&... __t)
Create a std::array from a variable-length list of arguments.
template<typename _RAIter , typename _Hash = std::hash<typename
std::iterator_traits<_RAIter>::value_type>, typename
_BinaryPredicate = equal_to<>> boyer_moore_horspool_searcher<
_RAIter, _Hash, _BinaryPredicate >
make_boyer_moore_horspool_searcher (_RAIter __pat_first, _RAIter
__pat_last, _Hash __hf=_Hash(), _BinaryPredicate __pred=_BinaryPredicate())
Generator function for boyer_moore_horspool_searcher. template<typename
_RAIter , typename _Hash = std::hash<typename
std::iterator_traits<_RAIter>::value_type>, typename
_BinaryPredicate = equal_to<>> boyer_moore_searcher< _RAIter,
_Hash, _BinaryPredicate > make_boyer_moore_searcher (_RAIter
__pat_first, _RAIter __pat_last, _Hash __hf=_Hash(), _BinaryPredicate
__pred=_BinaryPredicate())
Generator function for boyer_moore_searcher. template<typename
_ForwardIterator , typename _BinaryPredicate = std::equal_to<>>
default_searcher< _ForwardIterator, _BinaryPredicate >
make_default_searcher (_ForwardIterator __pat_first, _ForwardIterator
__pat_last, _BinaryPredicate __pred=_BinaryPredicate())
Generator function for default_searcher. template<typename _Tp >
observer_ptr< _Tp > make_observer (_Tp *__p) noexcept
template<typename _CharT , typename _Traits , typename _DelimT >
ostream_joiner< decay_t< _DelimT >, _CharT, _Traits
> make_ostream_joiner (basic_ostream< _CharT, _Traits
> &__os, _DelimT &&__delimiter)
Object generator for ostream_joiner. template<typename _Tp , typename _Ap
> constexpr simd< _Tp, _Ap > max (const simd< _Tp, _Ap
> &__a, const simd< _Tp, _Ap > &__b)
template<typename _Tp , typename _Ap > constexpr simd< _Tp, _Ap >
min (const simd< _Tp, _Ap > &__a, const simd< _Tp, _Ap
> &__b)
template<typename _Tp , typename _Ap > constexpr pair<
simd< _Tp, _Ap >, simd< _Tp, _Ap > > minmax (const
simd< _Tp, _Ap > &__a, const simd< _Tp, _Ap > &__b)
constexpr bool none_of (_ExactBool __x) noexcept
template<typename _Tp , typename _Abi > constexpr bool none_of
(const simd_mask< _Tp, _Abi > &__k) noexcept
template<typename _Fn > auto not_fn (_Fn &&__fn)
noexcept(std::is_nothrow_constructible< std::decay_t<
_Fn >, _Fn && >::value)
[func.not_fn] Function template not_fn template<typename _CharT , typename
_Traits > constexpr bool operator!= (__type_identity_t<
basic_string_view< _CharT, _Traits >> __x,
basic_string_view< _CharT, _Traits > __y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator!= (basic_string_view< _CharT, _Traits > __x,
__type_identity_t< basic_string_view< _CharT, _Traits >>
__y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator!= (basic_string_view< _CharT, _Traits > __x,
basic_string_view< _CharT, _Traits > __y) noexcept
template<typename _Tp , typename _Up > constexpr bool operator!=
(const _Tp &__t, const propagate_const< _Up > &__pu)
template<typename _Tp , typename _Up > constexpr bool operator!=
(const propagate_const< _Tp > &__pt, const _Up &__u)
template<typename _Tp , typename _Up > constexpr bool operator!=
(const propagate_const< _Tp > &__pt, const
propagate_const< _Up > &__pu)
template<typename _Tp > constexpr bool operator!= (const
propagate_const< _Tp > &__pt, nullptr_t)
template<typename _Tp > bool operator!= (const shared_ptr< _Tp
> &__a, nullptr_t) noexcept
template<typename _Tp1 , typename _Tp2 > bool operator!= (const
shared_ptr< _Tp1 > &__a, const shared_ptr< _Tp2 > &__b)
noexcept
template<typename _Tp > constexpr bool operator!= (nullptr_t,
const propagate_const< _Tp > &__pu)
template<typename _Tp > bool operator!= (nullptr_t, const
shared_ptr< _Tp > &__a) noexcept
template<typename _Tp > bool operator!= (nullptr_t,
observer_ptr< _Tp > __p) noexcept
template<typename _Tp > bool operator!= (observer_ptr< _Tp
> __p, nullptr_t) noexcept
template<typename _Tp , typename _Up > bool operator!=
(observer_ptr< _Tp > __p1, observer_ptr< _Up > __p2)
constexpr basic_string_view< char > operator''sv (const
char *__str, size_t __len) noexcept
constexpr basic_string_view< char16_t > operator''sv
(const char16_t *__str, size_t __len) noexcept
constexpr basic_string_view< char32_t > operator''sv
(const char32_t *__str, size_t __len) noexcept
constexpr basic_string_view< wchar_t > operator''sv (const
wchar_t *__str, size_t __len) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator< (__type_identity_t< basic_string_view<
_CharT, _Traits >> __x, basic_string_view< _CharT, _Traits
> __y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator< (basic_string_view< _CharT, _Traits > __x,
__type_identity_t< basic_string_view< _CharT, _Traits >>
__y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator< (basic_string_view< _CharT, _Traits > __x,
basic_string_view< _CharT, _Traits > __y) noexcept
template<typename _Tp , typename _Up > constexpr bool
operator< (const _Tp &__t, const propagate_const<
_Up > &__pu)
template<typename _Tp , typename _Up > constexpr bool
operator< (const propagate_const< _Tp > &__pt,
const _Up &__u)
template<typename _Tp , typename _Up > constexpr bool
operator< (const propagate_const< _Tp > &__pt,
const propagate_const< _Up > &__pu)
template<typename _Tp > bool operator< (const shared_ptr<
_Tp > &__a, nullptr_t) noexcept
template<typename _Tp1 , typename _Tp2 > bool operator< (const
shared_ptr< _Tp1 > &__a, const shared_ptr< _Tp2 > &__b)
noexcept
template<typename _Tp > bool operator< (nullptr_t, const
shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up > bool operator<
(observer_ptr< _Tp > __p1, observer_ptr< _Up > __p2)
template<typename _CharT , typename _Traits > basic_ostream<
_CharT, _Traits > & operator<< (basic_ostream<
_CharT, _Traits > &__os, basic_string_view< _CharT, _Traits
> __str)
template<typename _Ch , typename _Tr , typename _Tp >
std::basic_ostream< _Ch, _Tr > & operator<<
(std::basic_ostream< _Ch, _Tr > &__os, const shared_ptr<
_Tp > &__p)
template<typename _CharT , typename _Traits > constexpr bool
operator<= (__type_identity_t< basic_string_view<
_CharT, _Traits >> __x, basic_string_view< _CharT, _Traits
> __y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator<= (basic_string_view< _CharT, _Traits > __x,
__type_identity_t< basic_string_view< _CharT, _Traits >>
__y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator<= (basic_string_view< _CharT, _Traits > __x,
basic_string_view< _CharT, _Traits > __y) noexcept
template<typename _Tp , typename _Up > constexpr bool
operator<= (const _Tp &__t, const propagate_const<
_Up > &__pu)
template<typename _Tp , typename _Up > constexpr bool
operator<= (const propagate_const< _Tp > &__pt,
const _Up &__u)
template<typename _Tp , typename _Up > constexpr bool
operator<= (const propagate_const< _Tp > &__pt,
const propagate_const< _Up > &__pu)
template<typename _Tp > bool operator<= (const shared_ptr<
_Tp > &__a, nullptr_t) noexcept
template<typename _Tp1 , typename _Tp2 > bool operator<=
(const shared_ptr< _Tp1 > &__a, const shared_ptr< _Tp2 >
&__b) noexcept
template<typename _Tp > bool operator<= (nullptr_t, const
shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up > bool operator<=
(observer_ptr< _Tp > __p1, observer_ptr< _Up > __p2)
template<typename _CharT , typename _Traits > constexpr bool
operator== (__type_identity_t< basic_string_view<
_CharT, _Traits >> __x, basic_string_view< _CharT, _Traits
> __y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator== (basic_string_view< _CharT, _Traits > __x,
__type_identity_t< basic_string_view< _CharT, _Traits >>
__y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator== (basic_string_view< _CharT, _Traits > __x,
basic_string_view< _CharT, _Traits > __y) noexcept
template<typename _Tp , typename _Up > constexpr bool operator==
(const _Tp &__t, const propagate_const< _Up > &__pu)
template<typename _Tp , typename _Up > constexpr bool operator==
(const propagate_const< _Tp > &__pt, const _Up &__u)
template<typename _Tp , typename _Up > constexpr bool operator==
(const propagate_const< _Tp > &__pt, const
propagate_const< _Up > &__pu)
template<typename _Tp > constexpr bool operator== (const
propagate_const< _Tp > &__pt, nullptr_t)
template<typename _Tp > bool operator== (const shared_ptr< _Tp
> &__a, nullptr_t) noexcept
template<typename _Tp1 , typename _Tp2 > bool operator== (const
shared_ptr< _Tp1 > &__a, const shared_ptr< _Tp2 > &__b)
noexcept
template<typename _Tp > constexpr bool operator== (nullptr_t,
const propagate_const< _Tp > &__pu)
template<typename _Tp > bool operator== (nullptr_t, const
shared_ptr< _Tp > &__a) noexcept
template<typename _Tp > bool operator== (nullptr_t,
observer_ptr< _Tp > __p) noexcept
template<typename _Tp > bool operator== (observer_ptr< _Tp
> __p, nullptr_t) noexcept
template<typename _Tp , typename _Up > bool operator==
(observer_ptr< _Tp > __p1, observer_ptr< _Up > __p2)
template<typename _CharT , typename _Traits > constexpr bool
operator> (__type_identity_t< basic_string_view<
_CharT, _Traits >> __x, basic_string_view< _CharT, _Traits
> __y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator> (basic_string_view< _CharT, _Traits > __x,
__type_identity_t< basic_string_view< _CharT, _Traits >>
__y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator> (basic_string_view< _CharT, _Traits > __x,
basic_string_view< _CharT, _Traits > __y) noexcept
template<typename _Tp , typename _Up > constexpr bool
operator> (const _Tp &__t, const propagate_const<
_Up > &__pu)
template<typename _Tp , typename _Up > constexpr bool
operator> (const propagate_const< _Tp > &__pt,
const _Up &__u)
template<typename _Tp , typename _Up > constexpr bool
operator> (const propagate_const< _Tp > &__pt,
const propagate_const< _Up > &__pu)
template<typename _Tp > bool operator> (const shared_ptr<
_Tp > &__a, nullptr_t) noexcept
template<typename _Tp1 , typename _Tp2 > bool operator> (const
shared_ptr< _Tp1 > &__a, const shared_ptr< _Tp2 > &__b)
noexcept
template<typename _Tp > bool operator> (nullptr_t, const
shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up > bool operator>
(observer_ptr< _Tp > __p1, observer_ptr< _Up > __p2)
template<typename _CharT , typename _Traits > constexpr bool
operator>= (__type_identity_t< basic_string_view<
_CharT, _Traits >> __x, basic_string_view< _CharT, _Traits
> __y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator>= (basic_string_view< _CharT, _Traits > __x,
__type_identity_t< basic_string_view< _CharT, _Traits >>
__y) noexcept
template<typename _CharT , typename _Traits > constexpr bool
operator>= (basic_string_view< _CharT, _Traits > __x,
basic_string_view< _CharT, _Traits > __y) noexcept
template<typename _Tp , typename _Up > constexpr bool
operator>= (const _Tp &__t, const propagate_const<
_Up > &__pu)
template<typename _Tp , typename _Up > constexpr bool
operator>= (const propagate_const< _Tp > &__pt,
const _Up &__u)
template<typename _Tp , typename _Up > constexpr bool
operator>= (const propagate_const< _Tp > &__pt,
const propagate_const< _Up > &__pu)
template<typename _Tp > bool operator>= (const shared_ptr<
_Tp > &__a, nullptr_t) noexcept
template<typename _Tp1 , typename _Tp2 > bool operator>=
(const shared_ptr< _Tp1 > &__a, const shared_ptr< _Tp2 >
&__b) noexcept
template<typename _Tp > bool operator>= (nullptr_t, const
shared_ptr< _Tp > &__a) noexcept
template<typename _Tp , typename _Up > bool operator>=
(observer_ptr< _Tp > __p1, observer_ptr< _Up > __p2)
constexpr int popcount (_ExactBool __x) noexcept
template<typename _Tp , typename _Abi > constexpr int popcount
(const simd_mask< _Tp, _Abi > &__k) noexcept
template<typename _IntType > _IntType randint (_IntType __a,
_IntType __b)
template<typename _M , typename _V > _V::value_type reduce (const
const_where_expression< _M, _V > &__x, bit_and<>
__binary_op)
template<typename _M , typename _V > _V::value_type reduce (const
const_where_expression< _M, _V > &__x, bit_or<> __binary_op)
template<typename _M , typename _V > _V::value_type reduce (const
const_where_expression< _M, _V > &__x, bit_xor<>
__binary_op)
template<typename _M , typename _V > _V::value_type reduce (const
const_where_expression< _M, _V > &__x, multiplies<>
__binary_op)
template<typename _M , typename _V > _V::value_type reduce (const
const_where_expression< _M, _V > &__x, plus<>
__binary_op={})
template<typename _M , typename _V , typename _BinaryOperation =
plus<>> _V::value_type reduce (const
const_where_expression< _M, _V > &__x, typename _V::value_type
__identity_element, _BinaryOperation __binary_op)
template<typename _Tp , typename _Abi , typename _BinaryOperation =
plus<>> constexpr _Tp reduce (const simd< _Tp, _Abi >
&__v, _BinaryOperation __binary_op=_BinaryOperation())
template<typename _Tp , typename _Tp1 > shared_ptr< _Tp >
reinterpret_pointer_cast (const shared_ptr< _Tp1 > &__r)
noexcept
void reseed ()
void reseed (default_random_engine::result_type __value)
template<typename _PopulationIterator , typename _SampleIterator , typename
_Distance > _SampleIterator sample (_PopulationIterator __first,
_PopulationIterator __last, _SampleIterator __out, _Distance __n)
template<typename _PopulationIterator , typename _SampleIterator , typename
_Distance , typename _UniformRandomNumberGenerator > _SampleIterator
sample (_PopulationIterator __first, _PopulationIterator __last,
_SampleIterator __out, _Distance __n, _UniformRandomNumberGenerator
&&__g)
Take a random sample from a population. template<typename _ForwardIterator
, typename _Searcher > _ForwardIterator search (_ForwardIterator
__first, _ForwardIterator __last, const _Searcher &__searcher)
template<typename _RandomAccessIterator > void shuffle
(_RandomAccessIterator __first, _RandomAccessIterator __last)
template<typename _Tp , typename _Up , typename _Ap , typename _To =
__value_type_or_identity_t<_Tp>> constexpr auto simd_cast
(const simd< _ValuePreserving< _Up, _To >, _Ap > &__x) ->
decltype(static_simd_cast< _Tp >(__x))
constexpr bool some_of (_ExactBool) noexcept
template<typename _Tp , typename _Abi > constexpr bool some_of
(const simd_mask< _Tp, _Abi > &__k) noexcept
template<size_t... _Sizes, typename _Tp , typename _Ap , typename =
enable_if_t<((_Sizes + ...) == simd<_Tp, _Ap>::size())>>
tuple< simd< _Tp, simd_abi::deduce_t< _Tp, _Sizes >
>... > split (const simd< _Tp, _Ap > &)
template<size_t... _Sizes, typename _Tp , typename _Ap , typename >
tuple< simd< _Tp, simd_abi::deduce_t< _Tp, _Sizes >
>... > split (const simd< _Tp, _Ap > &__x)
template<typename _V , typename _Ap , size_t Parts =
simd_size_v<typename _V::value_type, _Ap> / _V::size()>
enable_if_t< simd_size_v< typename _V::value_type, _Ap
>==Parts *_V::size() &&is_simd_v< _V >, array<
_V, Parts > > split (const simd< typename _V::value_type,
_Ap > &__x)
template<typename _V , typename _Ap , size_t _Parts =
simd_size_v<typename _V::simd_type::value_type, _Ap> / _V::size()>
enable_if_t< is_simd_mask_v< _V > &&simd_size_v<
typename _V::simd_type::value_type, _Ap >==_Parts *_V::size(),
array< _V, _Parts > > split (const simd_mask<
typename _V::simd_type::value_type, _Ap > &__x)
template<typename _Tp , typename _Tp1 > shared_ptr< _Tp >
static_pointer_cast (const shared_ptr< _Tp1 > &__r)
noexcept
template<typename _Tp , typename _Up , typename _Ap , typename _R =
typename __static_simd_cast_return_type<_Tp, _Up, _Ap>::type>
constexpr _R static_simd_cast (const simd< _Up, _Ap > &__x)
void swap (any &__x, any &__y) noexcept
Exchange the states of two any objects. template<typename _Tp >
void swap (observer_ptr< _Tp > &__p1, observer_ptr< _Tp
> &__p2) noexcept
template<typename _Tp > constexpr enable_if_t<
__is_swappable< _Tp >::value, void > swap
(propagate_const< _Tp > &__pt, propagate_const<
_Tp > &__pt2) noexcept(__is_nothrow_swappable< _Tp >::value)
template<typename _Tp > void swap (shared_ptr< _Tp >
&__a, shared_ptr< _Tp > &__b) noexcept
template<typename _Tp > void swap (weak_ptr< _Tp >
&__a, weak_ptr< _Tp > &__b) noexcept
template<typename _Tp , size_t _Nm> constexpr array<
remove_cv_t< _Tp >, _Nm > to_array
(_Tp(&__a)[_Nm]) noexcept(is_nothrow_constructible<
remove_cv_t< _Tp >, _Tp & >::value)
Create a std::array from an array. template<typename _Tp , size_t _Np>
enable_if_t<(_Np==simd< _Tp >::size()), simd< _Tp
> > to_compatible (const simd< _Tp, simd_abi::fixed_size<
_Np >> &__x)
template<typename _Tp , size_t _Np>
enable_if_t<(_Np==simd_mask< _Tp >::size()),
simd_mask< _Tp > > to_compatible (const simd_mask< _Tp,
simd_abi::fixed_size< _Np >> &__x)
template<typename _Tp , int _Np> fixed_size_simd< _Tp, _Np >
to_fixed_size (const fixed_size_simd< _Tp, _Np > &__x)
template<typename _Tp , int _Np> fixed_size_simd_mask< _Tp, _Np >
to_fixed_size (const fixed_size_simd_mask< _Tp, _Np > &__x)
template<typename _Tp , typename _Ap > auto to_fixed_size (const
simd< _Tp, _Ap > &__x)
template<typename _Tp , typename _Ap > auto to_fixed_size (const
simd_mask< _Tp, _Ap > &__x)
template<typename _Tp , int _Np>
enable_if_t<(_Np==native_simd< _Tp >::size()),
native_simd< _Tp > > to_native (const fixed_size_simd<
_Tp, _Np > &__x)
template<typename _Tp , size_t _Np>
enable_if_t<(_Np==native_simd_mask< _Tp >::size()),
native_simd_mask< _Tp > > to_native (const
fixed_size_simd_mask< _Tp, _Np > &__x)
template<typename _Tp > where_expression< bool, _Tp > where
(_ExactBool __k, _Tp &__value)
template<typename _Tp > const_where_expression< bool, _Tp >
where (_ExactBool __k, const _Tp &__value)
template<typename _Tp , typename _Ap > void where (bool __k,
const simd< _Tp, _Ap > &__value)=delete
template<typename _Tp , typename _Ap > void where (bool __k,
simd< _Tp, _Ap > &__value)=delete
template<typename _Tp , typename _Ap > const_where_expression<
simd_mask< _Tp, _Ap >, simd_mask< _Tp, _Ap > > where
(const remove_const_t< simd_mask< _Tp, _Ap >> &__k,
const simd_mask< _Tp, _Ap > &__value)
template<typename _Tp , typename _Ap > where_expression<
simd_mask< _Tp, _Ap >, simd_mask< _Tp, _Ap > > where
(const remove_const_t< simd_mask< _Tp, _Ap >> &__k,
simd_mask< _Tp, _Ap > &__value)
template<typename _Tp , typename _Ap > const_where_expression<
simd_mask< _Tp, _Ap >, simd< _Tp, _Ap > > where (const
typename simd< _Tp, _Ap >::mask_type &__k, const simd< _Tp, _Ap
> &__value)
template<typename _Tp , typename _Ap > where_expression<
simd_mask< _Tp, _Ap >, simd< _Tp, _Ap > > where (const
typename simd< _Tp, _Ap >::mask_type &__k, simd< _Tp, _Ap >
&__value)
template<typename _ValueType > _ValueType any_cast (any
&__any)
Access the contained object. template<typename _ValueType , typename
enable_if<!is_move_constructible< _ValueType
>::value||is_lvalue_reference< _ValueType >::value, bool >::type
= true> _ValueType any_cast (any &&__any)
Access the contained object. template<typename _ValueType , typename
enable_if< is_move_constructible< _ValueType >::value
&&!is_lvalue_reference< _ValueType >::value, bool >::type =
false> _ValueType any_cast (any &&__any)
Access the contained object.
template<typename _ValueType > const _ValueType * any_cast (const
any *__any) noexcept
Access the contained object. template<typename _ValueType > _ValueType *
any_cast (any *__any) noexcept
Access the contained object.
Variables¶
template<typename _Abi > constexpr int __abi_bytes_v
constexpr struct std::experimental::parallelism_v2::_BitsetInit
__bitset_init
constexpr bool __have_avx
constexpr bool __have_avx2
constexpr bool __have_avx512bw
constexpr bool __have_avx512bw_vl
constexpr bool __have_avx512dq
constexpr bool __have_avx512dq_vl
constexpr bool __have_avx512f
constexpr bool __have_avx512vl
constexpr bool __have_bmi
constexpr bool __have_bmi2
constexpr bool __have_f16c
constexpr bool __have_fma
constexpr bool __have_fma4
constexpr bool __have_lzcnt
constexpr bool __have_mmx
constexpr bool __have_neon
constexpr bool __have_neon_a32
constexpr bool __have_neon_a64
constexpr bool __have_popcnt
constexpr bool __have_power10vec
constexpr bool __have_power8vec
constexpr bool __have_power9vec
constexpr bool __have_power_vmx
constexpr bool __have_power_vsx
constexpr bool __have_sse
constexpr bool __have_sse2
constexpr bool __have_sse3
constexpr bool __have_sse4_1
constexpr bool __have_sse4_2
constexpr bool __have_sse4a
constexpr bool __have_ssse3
constexpr bool __have_xop
template<typename _Tp > constexpr bool __is_bitmask_v
template<typename _Tp > constexpr bool __is_fixed_size_abi_v
template<typename _Tp > constexpr bool __is_intrinsic_type_v
template<typename _Tp > constexpr bool __is_simd_wrapper_v
template<typename _Tp > constexpr bool __is_vector_type_v
template<typename _Tp > constexpr bool __is_vectorizable_v
template<typename _Tp = void> static constexpr int
__min_vector_size
template<> constexpr int __min_vector_size< void >
constexpr struct std::experimental::parallelism_v2::_PrivateInit
__private_init
template<typename _Tp , typename _Ap > constexpr size_t
__size_or_zero_v
template<typename _Yp , typename _Tp > constexpr bool
__sp_compatible_v
template<typename _Tp , typename _Yp > constexpr bool
__sp_is_constructible_v
constexpr bool __support_neon_float
template<typename _Tp > constexpr size_t alignment_of_v
template<typename... _Bn> constexpr bool conjunction_v
template<typename... _Bn> constexpr bool disjunction_v
constexpr element_aligned_tag element_aligned
template<typename _Tp , unsigned _Idx = 0> constexpr size_t
extent_v
template<typename _Tp > constexpr bool has_virtual_destructor_v
constexpr in_place_t in_place
Tag for in-place construction. template<typename _Tp > constexpr bool
is_abi_tag_v
template<typename _Tp > constexpr bool is_abstract_v
template<typename _Tp > constexpr bool is_arithmetic_v
template<typename _Tp > constexpr bool is_array_v
template<typename _Tp , typename _Up > constexpr bool
is_assignable_v
template<typename _Base , typename _Derived > constexpr bool
is_base_of_v
template<typename _Tp > constexpr bool is_bind_expression_v
Variable template for std::is_bind_expression. template<typename _Tp >
constexpr bool is_class_v
template<typename _Tp > constexpr bool is_compound_v
template<typename _Tp > constexpr bool is_const_v
template<typename _Tp , typename... _Args> constexpr bool
is_constructible_v
template<typename _From , typename _To > constexpr bool
is_convertible_v
template<typename _Tp > constexpr bool is_copy_assignable_v
template<typename _Tp > constexpr bool is_copy_constructible_v
template<typename _Tp > constexpr bool is_default_constructible_v
template<typename _Tp > constexpr bool is_destructible_v
template<typename _To , template< typename... > class _Op,
typename... _Args> constexpr bool is_detected_convertible_v
template<typename _Expected , template< typename... > class _Op,
typename... _Args> constexpr bool is_detected_exact_v
template<template< typename... > class _Op, typename... _Args>
constexpr bool is_detected_v
template<typename _Tp > constexpr bool is_empty_v
template<typename _Tp > constexpr bool is_enum_v
template<typename _Tp > constexpr bool is_error_code_enum_v
template<typename _Tp > constexpr bool is_error_condition_enum_v
template<typename _Tp > constexpr bool is_final_v
template<typename _Tp > constexpr bool is_floating_point_v
template<typename _Tp > constexpr bool is_function_v
template<typename _Tp > constexpr bool is_fundamental_v
template<typename _Tp > constexpr bool is_integral_v
template<typename _Tp > constexpr bool is_literal_type_v
template<typename _Tp > constexpr bool is_lvalue_reference_v
template<typename _Tp > constexpr bool
is_member_function_pointer_v
template<typename _Tp > constexpr bool is_member_object_pointer_v
template<typename _Tp > constexpr bool is_member_pointer_v
template<typename _Tp > constexpr bool is_move_assignable_v
template<typename _Tp > constexpr bool is_move_constructible_v
template<typename _Tp , typename _Up > constexpr bool
is_nothrow_assignable_v
template<typename _Tp , typename... _Args> constexpr bool
is_nothrow_constructible_v
template<typename _Tp > constexpr bool
is_nothrow_copy_assignable_v
template<typename _Tp > constexpr bool
is_nothrow_copy_constructible_v
template<typename _Tp > constexpr bool
is_nothrow_default_constructible_v
template<typename _Tp > constexpr bool is_nothrow_destructible_v
template<typename _Tp > constexpr bool
is_nothrow_move_assignable_v
template<typename _Tp > constexpr bool
is_nothrow_move_constructible_v
template<typename _Tp > constexpr bool is_null_pointer_v
template<typename _Tp > constexpr bool is_object_v
template<typename _Tp > constexpr int is_placeholder_v
Variable template for std::is_placeholder. template<typename _Tp >
constexpr bool is_pod_v
template<typename _Tp > constexpr bool is_pointer_v
template<typename _Tp > constexpr bool is_polymorphic_v
template<typename _Tp > constexpr bool is_reference_v
template<typename _Tp > constexpr bool is_rvalue_reference_v
template<typename _Tp , typename _Up > constexpr bool is_same_v
template<typename _Tp > constexpr bool is_scalar_v
template<typename _Tp > constexpr bool is_signed_v
template<typename _Tp > constexpr bool is_simd_mask_v
template<typename _Tp > constexpr bool is_simd_v
template<typename _Tp > constexpr bool is_standard_layout_v
template<typename _Tp > constexpr bool is_trivial_v
template<typename _Tp , typename _Up > constexpr bool
is_trivially_assignable_v
template<typename _Tp , typename... _Args> constexpr bool
is_trivially_constructible_v
template<typename _Tp > constexpr bool
is_trivially_copy_assignable_v
template<typename _Tp > constexpr bool
is_trivially_copy_constructible_v
template<typename _Tp > constexpr bool is_trivially_copyable_v
template<typename _Tp > constexpr bool
is_trivially_default_constructible_v
template<typename _Tp > constexpr bool
is_trivially_destructible_v
template<typename _Tp > constexpr bool
is_trivially_move_assignable_v
template<typename _Tp > constexpr bool
is_trivially_move_constructible_v
template<typename _Tp > constexpr bool is_union_v
template<typename _Tp > constexpr bool is_unsigned_v
template<typename _Tp > constexpr bool is_void_v
template<typename _Tp > constexpr bool is_volatile_v
template<typename _Tp , typename _Up = typename _Tp::value_type>
constexpr size_t memory_alignment_v
template<typename _Pp > constexpr bool negation_v
constexpr nullopt_t nullopt
Tag to disengage optional objects. template<size_t _Np> constexpr
overaligned_tag< _Np > overaligned
template<typename _Tp > constexpr size_t rank_v
template<typename _R1 , typename _R2 > constexpr bool
ratio_equal_v
template<typename _R1 , typename _R2 > constexpr bool
ratio_greater_equal_v
template<typename _R1 , typename _R2 > constexpr bool
ratio_greater_v
template<typename _R1 , typename _R2 > constexpr bool
ratio_less_equal_v
template<typename _R1 , typename _R2 > constexpr bool
ratio_less_v
template<typename _R1 , typename _R2 > constexpr bool
ratio_not_equal_v
template<typename _Tp , typename _Abi =
simd_abi::__default_abi<_Tp>> constexpr size_t simd_size_v
template<typename _Tp > constexpr size_t tuple_size_v
constexpr vector_aligned_tag vector_aligned
Detailed Description¶
Namespace for features defined in ISO Technical Specifications.
Function Documentation¶
template<typename _Mn , typename _Nn > constexpr common_type_t<_Mn, _Nn> std::experimental::fundamentals_v2::gcd (_Mn __m, _Nn __n) [constexpr], [noexcept]¶
Greatest common divisor.
Definition at line 57 of file experimental/numeric.
template<typename _Del , typename _Tp > _Del* std::experimental::fundamentals_v2::get_deleter (const shared_ptr< _Tp > & __p) [inline], [noexcept]¶
C++14 20.8.2.2.10.
Definition at line 492 of file experimental/bits/shared_ptr.h.
template<typename _Mn , typename _Nn > constexpr common_type_t<_Mn, _Nn> std::experimental::fundamentals_v2::lcm (_Mn __m, _Nn __n) [constexpr]¶
Least common multiple.
Definition at line 75 of file experimental/numeric.
template<typename _RAIter , typename _Hash = std::hash<typename std::iterator_traits<_RAIter>::value_type>, typename _BinaryPredicate = equal_to<>> boyer_moore_horspool_searcher<_RAIter, _Hash, _BinaryPredicate> std::experimental::fundamentals_v1::make_boyer_moore_horspool_searcher (_RAIter __pat_first, _RAIter __pat_last, _Hash __hf = _Hash(), _BinaryPredicate __pred = _BinaryPredicate()) [inline]¶
Generator function for boyer_moore_horspool_searcher.
Definition at line 303 of file experimental/functional.
template<typename _RAIter , typename _Hash = std::hash<typename std::iterator_traits<_RAIter>::value_type>, typename _BinaryPredicate = equal_to<>> boyer_moore_searcher<_RAIter, _Hash, _BinaryPredicate> std::experimental::fundamentals_v1::make_boyer_moore_searcher (_RAIter __pat_first, _RAIter __pat_last, _Hash __hf = _Hash(), _BinaryPredicate __pred = _BinaryPredicate()) [inline]¶
Generator function for boyer_moore_searcher.
Definition at line 293 of file experimental/functional.
template<typename _ForwardIterator , typename _BinaryPredicate = std::equal_to<>> default_searcher<_ForwardIterator, _BinaryPredicate> std::experimental::fundamentals_v1::make_default_searcher (_ForwardIterator __pat_first, _ForwardIterator __pat_last, _BinaryPredicate __pred = _BinaryPredicate()) [inline]¶
Generator function for default_searcher.
Definition at line 283 of file experimental/functional.
template<typename _CharT , typename _Traits , typename _DelimT > ostream_joiner<decay_t<_DelimT>, _CharT, _Traits> std::experimental::fundamentals_v2::make_ostream_joiner (basic_ostream< _CharT, _Traits > & __os, _DelimT && __delimiter) [inline]¶
Object generator for ostream_joiner.
Definition at line 104 of file experimental/iterator.
template<typename _Fn > auto std::experimental::fundamentals_v2::not_fn (_Fn && __fn) [inline], [noexcept]¶
[func.not_fn] Function template not_fn
Definition at line 372 of file experimental/functional.
template<typename _PopulationIterator , typename _SampleIterator , typename _Distance , typename _UniformRandomNumberGenerator > _SampleIterator std::experimental::fundamentals_v2::sample (_PopulationIterator __first, _PopulationIterator __last, _SampleIterator __out, _Distance __n, _UniformRandomNumberGenerator && __g)¶
Take a random sample from a population.
Definition at line 61 of file experimental/algorithm.
Variable Documentation¶
template<typename _Tp > constexpr bool std::experimental::fundamentals_v1::is_bind_expression_v [constexpr]¶
Variable template for std::is_bind_expression.
Definition at line 61 of file experimental/functional.
template<typename _Tp > constexpr int std::experimental::fundamentals_v1::is_placeholder_v [constexpr]¶
Variable template for std::is_placeholder.
Definition at line 65 of file experimental/functional.
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
Wed Jul 28 2021 | libstdc++ |