libstdc++
std::experimental Namespace Reference

Classes

class  any
 
class  bad_any_cast
 
class  bad_optional_access
 
class  basic_string_view
 
struct  in_place_t
 
struct  nullopt_t
 
class  optional
 
class  ostream_joiner
 
struct  owner_less< shared_ptr< _Tp > >
 
struct  owner_less< weak_ptr< _Tp > >
 
class  propagate_const
 

Typedefs

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 _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<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... > >
 
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<typename _Fn , typename _Tuple , std::size_t... _Idx>
constexpr decltype(auto) __apply_impl (_Fn &&__f, _Tuple &&__t, std::index_sequence< _Idx... >)
 
template<typename _Tp , size_t _Nm, size_t... _Idx>
constexpr array< remove_cv_t< _Tp >, _Nm > __to_array (_Tp(&__a)[_Nm], index_sequence< _Idx... >)
 
std::default_random_engine_S_randint_engine ()
 
template<typename _ValueType >
_ValueType any_cast (const any &__any)
 
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 _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)
 
template<typename _Mn , typename _Nn >
constexpr common_type_t< _Mn, _Nn > gcd (_Mn __m, _Nn __n) noexcept
 
template<typename _Del , typename _Tp >
_Del * get_deleter (const shared_ptr< _Tp > &__p) noexcept
 
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 _Mn , typename _Nn >
constexpr common_type_t< _Mn, _Nn > lcm (_Mn __m, _Nn __n)
 
template<typename _Dest = void, typename... _Types>
constexpr array< typename __make_array_elem< _Dest, _Types... >::type, sizeof...(_Types)> make_array (_Types &&... __t)
 
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())
 
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())
 
template<typename _ForwardIterator , typename _BinaryPredicate = std::equal_to<>>
default_searcher< _ForwardIterator, _BinaryPredicate > make_default_searcher (_ForwardIterator __pat_first, _ForwardIterator __pat_last, _BinaryPredicate __pred=_BinaryPredicate())
 
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)
 
template<typename _Fn >
auto not_fn (_Fn &&__fn) noexcept(std::is_nothrow_constructible< std::decay_t< _Fn >, _Fn && >::value)
 
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)
 
template<typename _IntType >
_IntType randint (_IntType __a, _IntType __b)
 
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)
 
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 _Tp1 >
shared_ptr< _Tp > static_pointer_cast (const shared_ptr< _Tp1 > &__r) noexcept
 
void swap (any &__x, any &__y) noexcept
 
template<typename _Tp >
void swap (observer_ptr< _Tp > &__p1, observer_ptr< _Tp > &__p2) noexcept
 
template<typename _Tp >
constexpr 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)
 
template<typename _ValueType >
_ValueType any_cast (any &__any)
 
template<typename _ValueType , typename enable_if<!is_move_constructible< _ValueType >::value||is_lvalue_reference< _ValueType >::value, bool >::type = true>
_ValueType any_cast (any &&__any)
 
template<typename _ValueType , typename enable_if< is_move_constructible< _ValueType >::value &&!is_lvalue_reference< _ValueType >::value, bool >::type = false>
_ValueType any_cast (any &&__any)
 
template<typename _ValueType >
const _ValueType * any_cast (const any *__any) noexcept
 
template<typename _ValueType >
_ValueType * any_cast (any *__any) noexcept
 

Variables

template<typename _Yp , typename _Tp >
constexpr bool __sp_compatible_v
 
template<typename _Tp , typename _Yp >
constexpr bool __sp_is_constructible_v
 
template<typename _Tp >
constexpr size_t alignment_of_v
 
template<typename... _Bn>
constexpr bool conjunction_v
 
template<typename... _Bn>
constexpr bool disjunction_v
 
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
 
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
 
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
 
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_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 _Pp >
constexpr bool negation_v
 
constexpr nullopt_t nullopt
 
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 >
constexpr size_t tuple_size_v
 

Detailed Description

Namespace for features defined in ISO Technical Specifications.

Function Documentation

◆ gcd()

template<typename _Mn , typename _Nn >
constexpr common_type_t<_Mn, _Nn> std::experimental::fundamentals_v2::gcd ( _Mn  __m,
_Nn  __n 
)
constexprnoexcept

Greatest common divisor.

Definition at line 57 of file experimental/numeric.

◆ get_deleter()

template<typename _Del , typename _Tp >
_Del* std::experimental::fundamentals_v2::get_deleter ( const shared_ptr< _Tp > &  __p)
inlinenoexcept

C++14 20.8.2.2.10.

Definition at line 492 of file experimental/bits/shared_ptr.h.

◆ lcm()

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.

◆ make_boyer_moore_horspool_searcher()

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.

◆ make_boyer_moore_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> 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.

◆ make_default_searcher()

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.

◆ make_ostream_joiner()

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.

◆ not_fn()

template<typename _Fn >
auto std::experimental::fundamentals_v2::not_fn ( _Fn &&  __fn)
inlinenoexcept

[func.not_fn] Function template not_fn

Definition at line 372 of file experimental/functional.

◆ sample()

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

◆ is_bind_expression_v

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.

◆ is_placeholder_v

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.