libstdc++: std::experimental Namespace Reference

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
template<typename _Tp>
using | __propagate_const_elem_type
using | erased_type
using | string_view
using | u16string_view
using | u32string_view
using | wstring_view

## 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>
constexpr 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>
constexpr 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>
constexpr 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>
constexpr 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>
constexpr 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>
constexpr bool | operator== (nullptr_t, observer_ptr< _Tp > __p) noexcept
template<typename _Tp>
constexpr bool | operator== (observer_ptr< _Tp > __p, nullptr_t) noexcept
template<typename _Tp, typename _Up>
constexpr 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>
constexpr 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>
constexpr 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>
constexpr 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)
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
constexpr in_place_t | in_place
template<typename _Tp>
constexpr bool | is_bind_expression_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 int | is_placeholder_v
constexpr nullopt_t | nullopt
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
template<typename _Tp>
constexpr bool | is_void_v
template<typename _Tp>
constexpr bool | is_null_pointer_v
template<typename _Tp>
constexpr bool | is_integral_v
template<typename _Tp>
constexpr bool | is_floating_point_v
template<typename _Tp>
constexpr bool | is_array_v
template<typename _Tp>
constexpr bool | is_pointer_v
template<typename _Tp>
constexpr bool | is_lvalue_reference_v
template<typename _Tp>
constexpr bool | is_rvalue_reference_v
template<typename _Tp>
constexpr bool | is_member_object_pointer_v
template<typename _Tp>
constexpr bool | is_member_function_pointer_v
template<typename _Tp>
constexpr bool | is_enum_v
template<typename _Tp>
constexpr bool | is_union_v
template<typename _Tp>
constexpr bool | is_class_v
template<typename _Tp>
constexpr bool | is_function_v
template<typename _Tp>
constexpr bool | is_reference_v
template<typename _Tp>
constexpr bool | is_arithmetic_v
template<typename _Tp>
constexpr bool | is_fundamental_v
template<typename _Tp>
constexpr bool | is_object_v
template<typename _Tp>
constexpr bool | is_scalar_v
template<typename _Tp>
constexpr bool | is_compound_v
template<typename _Tp>
constexpr bool | is_member_pointer_v
template<typename _Tp>
constexpr bool | is_const_v
template<typename _Tp>
constexpr bool | is_volatile_v
template<typename _Tp>
constexpr bool | is_trivial_v
template<typename _Tp>
constexpr bool | is_trivially_copyable_v
template<typename _Tp>
constexpr bool | is_standard_layout_v
template<typename _Tp>
constexpr bool | is_pod_v
template<typename _Tp>
constexpr bool | is_literal_type_v
template<typename _Tp>
constexpr bool | is_empty_v
template<typename _Tp>
constexpr bool | is_polymorphic_v
template<typename _Tp>
constexpr bool | is_abstract_v
template<typename _Tp>
constexpr bool | is_final_v
template<typename _Tp>
constexpr bool | is_signed_v
template<typename _Tp>
constexpr bool | is_unsigned_v
template<typename _Tp, typename... _Args>
constexpr bool | is_constructible_v
template<typename _Tp>
constexpr bool | is_default_constructible_v
template<typename _Tp>
constexpr bool | is_copy_constructible_v
template<typename _Tp>
constexpr bool | is_move_constructible_v
template<typename _Tp, typename _Up>
constexpr bool | is_assignable_v
template<typename _Tp>
constexpr bool | is_copy_assignable_v
template<typename _Tp>
constexpr bool | is_move_assignable_v
template<typename _Tp>
constexpr bool | is_destructible_v
template<typename _Tp, typename... _Args>
constexpr bool | is_trivially_constructible_v
template<typename _Tp>
constexpr bool | is_trivially_default_constructible_v
template<typename _Tp>
constexpr bool | is_trivially_copy_constructible_v
template<typename _Tp>
constexpr bool | is_trivially_move_constructible_v
template<typename _Tp, typename _Up>
constexpr bool | is_trivially_assignable_v
template<typename _Tp>
constexpr bool | is_trivially_copy_assignable_v
template<typename _Tp>
constexpr bool | is_trivially_move_assignable_v
template<typename _Tp>
constexpr bool | is_trivially_destructible_v
template<typename _Tp, typename... _Args>
constexpr bool | is_nothrow_constructible_v
template<typename _Tp>
constexpr bool | is_nothrow_default_constructible_v
template<typename _Tp>
constexpr bool | is_nothrow_copy_constructible_v
template<typename _Tp>
constexpr bool | is_nothrow_move_constructible_v
template<typename _Tp, typename _Up>
constexpr bool | is_nothrow_assignable_v
template<typename _Tp>
constexpr bool | is_nothrow_copy_assignable_v
template<typename _Tp>
constexpr bool | is_nothrow_move_assignable_v
template<typename _Tp>
constexpr bool | is_nothrow_destructible_v
template<typename _Tp>
constexpr bool | has_virtual_destructor_v
template<typename _Tp>
constexpr size_t | alignment_of_v
template<typename _Tp>
constexpr size_t | rank_v
template<typename _Tp, unsigned _Idx = 0>
constexpr size_t | extent_v
template<typename _Tp, typename _Up>
constexpr bool | is_same_v
template<typename _Tp>
constexpr bool | is_same_v< _Tp, _Tp >
template<typename _Base, typename _Derived>
constexpr bool | is_base_of_v
template<typename _From, typename _To>
constexpr bool | is_convertible_v
template<typename... _Bn>
constexpr bool | conjunction_v
template<typename... _Bn>
constexpr bool | disjunction_v
template<typename _Pp>
constexpr bool | negation_v
template<typename...>
using | void_t
template<typename _Default, template< typename... > class _Op, typename... _Args>
using | detected_or
template<typename _Default, template< typename... > class _Op, typename... _Args>
using | detected_or_t
template<template< typename... > class _Op, typename... _Args>
using | detected_t
template<template< typename... > class _Op, typename... _Args>
using | is_detected
template<typename _Expected, template< typename... > class _Op, typename... _Args>
using | is_detected_exact
template<typename _To, template< typename... > class _Op, typename... _Args>
using | is_detected_convertible
template<template< typename... > class _Op, typename... _Args>
constexpr bool | is_detected_v
template<typename _Expected, template< typename... > class _Op, typename... _Args>
constexpr bool | is_detected_exact_v
template<typename _To, template< typename... > class _Op, typename... _Args>
constexpr bool | is_detected_convertible_v

## Detailed Description

Namespace for features defined in ISO Technical Specifications.

## Typedef Documentation

## ◆ __boyer_moore_base_t

template<typename _RAIter, typename _Hash, typename _Pred, typename _Val = typename iterator_traits<_RAIter>::value_type, typename _Diff = typename iterator_traits<_RAIter>::difference_type>

using std::experimental::fundamentals_v1::__boyer_moore_base_t

Definition at line 167 of file experimental/functional.

## ◆ __propagate_const_elem_type

template<typename _Tp>

using std::experimental::fundamentals_v2::__propagate_const_elem_type

Definition at line 56 of file propagate_const.

## ◆ erased_type

using std::experimental::fundamentals_v2::erased_type

Definition at line 46 of file experimental/utility.

## ◆ string_view

using std::experimental::fundamentals_v1::string_view

Definition at line 570 of file experimental/string_view.

## ◆ u16string_view

using std::experimental::fundamentals_v1::u16string_view

Definition at line 575 of file experimental/string_view.

## ◆ u32string_view

using std::experimental::fundamentals_v1::u32string_view

Definition at line 576 of file experimental/string_view.

## ◆ wstring_view

using std::experimental::fundamentals_v1::wstring_view

Definition at line 571 of file experimental/string_view.

## Function Documentation

## ◆ __apply_impl()

template<typename _Fn, typename _Tuple, std::size_t... _Idx>

decltype(auto) std::experimental::fundamentals_v1::__apply_impl | ( | _Fn && | __f,
|  | _Tuple && | __t,
|  | std::index_sequence< _Idx... > | )
| constexpr

Definition at line 61 of file experimental/tuple.

## ◆ _S_randint_engine()

std::default_random_engine & std::experimental::fundamentals_v2::_S_randint_engine | ( |  | ) |
| inline

Definition at line 47 of file experimental/random.

## ◆ apply()

template<typename _Fn, typename _Tuple>

decltype(auto) std::experimental::fundamentals_v1::apply | ( | _Fn && | __f,
|  | _Tuple && | __t )
| constexpr

Definition at line 69 of file experimental/tuple.

## ◆ atomic_compare_exchange_strong()

template<typename _Tp>

bool std::experimental::fundamentals_v2::atomic_compare_exchange_strong | ( | shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > * | __v,
|  | shared_ptr< _Tp > | __w )

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

## ◆ atomic_compare_exchange_strong_explicit()

template<typename _Tp>

bool std::experimental::fundamentals_v2::atomic_compare_exchange_strong_explicit | ( | shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > * | __v,
|  | shared_ptr< _Tp > | __w,
|  | memory_order | __success,
|  | memory_order | __failure )

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

## ◆ atomic_compare_exchange_weak()

template<typename _Tp>

bool std::experimental::fundamentals_v2::atomic_compare_exchange_weak | ( | shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > * | __v,
|  | shared_ptr< _Tp > | __w )

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

## ◆ atomic_compare_exchange_weak_explicit()

template<typename _Tp>

bool std::experimental::fundamentals_v2::atomic_compare_exchange_weak_explicit | ( | shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > * | __v,
|  | shared_ptr< _Tp > | __w,
|  | memory_order | __success,
|  | memory_order | __failure )

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

## ◆ atomic_exchange()

template<typename _Tp>

void std::experimental::fundamentals_v2::atomic_exchange | ( | shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > | __r )

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

## ◆ atomic_exchange_explicit()

template<typename _Tp>

shared_ptr< _Tp > std::experimental::fundamentals_v2::atomic_exchange_explicit | ( | const shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > | __r,
|  | memory_order | __mo )

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

## ◆ atomic_is_lock_free()

template<typename _Tp>

bool std::experimental::fundamentals_v2::atomic_is_lock_free | ( | const shared_ptr< _Tp > * | __p | ) |
| inline

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

## ◆ atomic_load()

template<typename _Tp>

shared_ptr< _Tp > std::experimental::fundamentals_v2::atomic_load | ( | const shared_ptr< _Tp > * | __p | ) |

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

## ◆ atomic_load_explicit()

template<typename _Tp>

shared_ptr< _Tp > std::experimental::fundamentals_v2::atomic_load_explicit | ( | const shared_ptr< _Tp > * | __p,
|  | memory_order | __mo )

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

## ◆ atomic_store()

template<typename _Tp>

void std::experimental::fundamentals_v2::atomic_store | ( | shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > | __r )

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

## ◆ atomic_store_explicit()

template<typename _Tp>

shared_ptr< _Tp > std::experimental::fundamentals_v2::atomic_store_explicit | ( | const shared_ptr< _Tp > * | __p,
|  | shared_ptr< _Tp > | __r,
|  | memory_order | __mo )

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

## ◆ const_pointer_cast()

template<typename _Tp, typename _Tp1>

shared_ptr< _Tp > std::experimental::fundamentals_v2::const_pointer_cast | ( | const shared_ptr< _Tp1 > & | __r | ) |
| inlinenoexcept

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

## ◆ dynamic_pointer_cast()

template<typename _Tp, typename _Tp1>

shared_ptr< _Tp > std::experimental::fundamentals_v2::dynamic_pointer_cast | ( | const shared_ptr< _Tp1 > & | __r | ) |
| inlinenoexcept

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

## ◆ erase() [1/5]

template<typename _CharT, typename _Traits, typename _Alloc, typename _Up>

void std::experimental::fundamentals_v2::erase | ( | basic_string< _CharT, _Traits, _Alloc > & | __cont,
|  | const _Up & | __value )
| inline

Definition at line 64 of file experimental/string.

## ◆ erase() [2/5]

template<typename _Tp, typename _Alloc, typename _Up>

void std::experimental::fundamentals_v2::erase | ( | deque< _Tp, _Alloc > & | __cont,
|  | const _Up & | __value )
| inline

Definition at line 63 of file experimental/deque.

## ◆ erase() [3/5]

template<typename _Tp, typename _Alloc, typename _Up>

void std::experimental::fundamentals_v2::erase | ( | forward_list< _Tp, _Alloc > & | __cont,
|  | const _Up & | __value )
| inline

Definition at line 59 of file experimental/forward_list.

## ◆ erase() [4/5]

template<typename _Tp, typename _Alloc, typename _Up>

void std::experimental::fundamentals_v2::erase | ( | list< _Tp, _Alloc > & | __cont,
|  | const _Up & | __value )
| inline

Definition at line 59 of file experimental/list.

## ◆ erase() [5/5]

template<typename _Tp, typename _Alloc, typename _Up>

void std::experimental::fundamentals_v2::erase | ( | vector< _Tp, _Alloc > & | __cont,
|  | const _Up & | __value )
| inline

Definition at line 65 of file experimental/vector.

## ◆ erase_if() [1/13]

template<typename _CharT, typename _Traits, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | basic_string< _CharT, _Traits, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 56 of file experimental/string.

## ◆ erase_if() [2/13]

template<typename _Tp, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | deque< _Tp, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 55 of file experimental/deque.

## ◆ erase_if() [3/13]

template<typename _Tp, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | forward_list< _Tp, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 54 of file experimental/forward_list.

## ◆ erase_if() [4/13]

template<typename _Tp, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | list< _Tp, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 54 of file experimental/list.

## ◆ erase_if() [5/13]

template<typename _Key, typename _Tp, typename _Compare, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | map< _Key, _Tp, _Compare, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 56 of file experimental/map.

## ◆ erase_if() [6/13]

template<typename _Key, typename _Tp, typename _Compare, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | multimap< _Key, _Tp, _Compare, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 65 of file experimental/map.

## ◆ erase_if() [7/13]

template<typename _Key, typename _Compare, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | multiset< _Key, _Compare, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 65 of file experimental/set.

## ◆ erase_if() [8/13]

template<typename _Key, typename _Compare, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | set< _Key, _Compare, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 56 of file experimental/set.

## ◆ erase_if() [9/13]

template<typename _Key, typename _Tp, typename _Hash, typename _CPred, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | unordered_map< _Key, _Tp, _Hash, _CPred, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 56 of file experimental/unordered_map.

## ◆ erase_if() [10/13]

template<typename _Key, typename _Tp, typename _Hash, typename _CPred, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | unordered_multimap< _Key, _Tp, _Hash, _CPred, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 67 of file experimental/unordered_map.

## ◆ erase_if() [11/13]

template<typename _Key, typename _Hash, typename _CPred, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | unordered_multiset< _Key, _Hash, _CPred, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 67 of file experimental/unordered_set.

## ◆ erase_if() [12/13]

template<typename _Key, typename _Hash, typename _CPred, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | unordered_set< _Key, _Hash, _CPred, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 56 of file experimental/unordered_set.

## ◆ erase_if() [13/13]

template<typename _Tp, typename _Alloc, typename _Predicate>

void std::experimental::fundamentals_v2::erase_if | ( | vector< _Tp, _Alloc > & | __cont,
|  | _Predicate | __pred )
| inline

Definition at line 57 of file experimental/vector.

## ◆ gcd()

template<typename _Mn, typename _Nn>

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

Greatest common divisor.

Definition at line 61 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 494 of file experimental/bits/shared_ptr.h.

## ◆ lcm()

template<typename _Mn, typename _Nn>

common_type_t< _Mn, _Nn > std::experimental::fundamentals_v2::lcm | ( | _Mn | __m,
|  | _Nn | __n )
| constexpr

Least common multiple.

Definition at line 77 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.

References std::move().

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

References std::move().

## ◆ 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_observer()

template<typename _Tp>

observer_ptr< _Tp > std::experimental::fundamentals_v2::make_observer | ( | _Tp * | __p | ) |
| constexprnoexcept

Definition at line 159 of file experimental/memory.

## ◆ 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 108 of file experimental/iterator.

References std::forward().

## ◆ 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 373 of file experimental/functional.

References std::forward().

## ◆ operator!=() [1/9]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator!= | ( | __type_identity_t< basic_string_view< _CharT, _Traits > > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 480 of file experimental/string_view.

## ◆ operator!=() [2/9]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator!= | ( | basic_string_view< _CharT, _Traits > | __x,
|  | __type_identity_t< basic_string_view< _CharT, _Traits > > | __y )
| constexprnoexcept

Definition at line 473 of file experimental/string_view.

## ◆ operator!=() [3/9]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator!= | ( | basic_string_view< _CharT, _Traits > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 467 of file experimental/string_view.

## ◆ operator!=() [4/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator!= | ( | const shared_ptr< _Tp > & | __a,
|  | nullptr_t | )
| inlinenoexcept

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

## ◆ operator!=() [5/9]

template<typename _Tp1, typename _Tp2>

bool std::experimental::fundamentals_v2::operator!= | ( | const shared_ptr< _Tp1 > & | __a,
|  | const shared_ptr< _Tp2 > & | __b )
| inlinenoexcept

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

## ◆ operator!=() [6/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator!= | ( | nullptr_t | ,
|  | const shared_ptr< _Tp > & | __a )
| inlinenoexcept

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

## ◆ operator!=() [7/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator!= | ( | nullptr_t | ,
|  | observer_ptr< _Tp > | __p )
| constexprnoexcept

Definition at line 201 of file experimental/memory.

## ◆ operator!=() [8/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator!= | ( | observer_ptr< _Tp > | __p,
|  | nullptr_t | )
| noexcept

Definition at line 194 of file experimental/memory.

## ◆ operator!=() [9/9]

template<typename _Tp, typename _Up>

bool std::experimental::fundamentals_v2::operator!= | ( | observer_ptr< _Tp > | __p1,
|  | observer_ptr< _Up > | __p2 )
| constexpr

Definition at line 173 of file experimental/memory.

## ◆ operator""sv() [1/4]

basic_string_view< char > std::experimental::literals::string_view_literals::operator""sv | ( | const char * | __str,
|  | size_t | __len )
| inlineconstexprnoexcept

Definition at line 665 of file experimental/string_view.

## ◆ operator""sv() [2/4]

basic_string_view< char16_t > std::experimental::literals::string_view_literals::operator""sv | ( | const char16_t * | __str,
|  | size_t | __len )
| inlineconstexprnoexcept

Definition at line 679 of file experimental/string_view.

## ◆ operator""sv() [3/4]

basic_string_view< char32_t > std::experimental::literals::string_view_literals::operator""sv | ( | const char32_t * | __str,
|  | size_t | __len )
| inlineconstexprnoexcept

Definition at line 683 of file experimental/string_view.

## ◆ operator""sv() [4/4]

basic_string_view< wchar_t > std::experimental::literals::string_view_literals::operator""sv | ( | const wchar_t * | __str,
|  | size_t | __len )
| inlineconstexprnoexcept

Definition at line 669 of file experimental/string_view.

## ◆ operator<() [1/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator< | ( | __type_identity_t< basic_string_view< _CharT, _Traits > > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 498 of file experimental/string_view.

## ◆ operator<() [2/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator< | ( | basic_string_view< _CharT, _Traits > | __x,
|  | __type_identity_t< basic_string_view< _CharT, _Traits > > | __y )
| constexprnoexcept

Definition at line 491 of file experimental/string_view.

## ◆ operator<() [3/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator< | ( | basic_string_view< _CharT, _Traits > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 485 of file experimental/string_view.

## ◆ operator<() [4/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator< | ( | const shared_ptr< _Tp > & | __a,
|  | nullptr_t | )
| inlinenoexcept

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

## ◆ operator<() [5/7]

template<typename _Tp1, typename _Tp2>

bool std::experimental::fundamentals_v2::operator< | ( | const shared_ptr< _Tp1 > & | __a,
|  | const shared_ptr< _Tp2 > & | __b )
| inlinenoexcept

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

## ◆ operator<() [6/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator< | ( | nullptr_t | ,
|  | const shared_ptr< _Tp > & | __a )
| inlinenoexcept

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

## ◆ operator<() [7/7]

template<typename _Tp, typename _Up>

bool std::experimental::fundamentals_v2::operator< | ( | observer_ptr< _Tp > | __p1,
|  | observer_ptr< _Up > | __p2 )
| constexpr

Definition at line 207 of file experimental/memory.

## ◆ operator<<() [1/2]

template<typename _CharT, typename _Traits>

basic_ostream< _CharT, _Traits > & std::experimental::fundamentals_v1::operator<< | ( | basic_ostream< _CharT, _Traits > & | __os,
|  | basic_string_view< _CharT, _Traits > | __str )
| inline

Definition at line 556 of file experimental/string_view.

## ◆ operator<<() [2/2]

template<typename _Ch, typename _Tr, typename _Tp>

std::basic_ostream< _Ch, _Tr > & std::experimental::fundamentals_v2::operator<< | ( | std::basic_ostream< _Ch, _Tr > & | __os,
|  | const shared_ptr< _Tp > & | __p )
| inline

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

## ◆ operator<=() [1/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator<= | ( | __type_identity_t< basic_string_view< _CharT, _Traits > > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 536 of file experimental/string_view.

## ◆ operator<=() [2/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator<= | ( | basic_string_view< _CharT, _Traits > | __x,
|  | __type_identity_t< basic_string_view< _CharT, _Traits > > | __y )
| constexprnoexcept

Definition at line 529 of file experimental/string_view.

## ◆ operator<=() [3/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator<= | ( | basic_string_view< _CharT, _Traits > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 523 of file experimental/string_view.

## ◆ operator<=() [4/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator<= | ( | const shared_ptr< _Tp > & | __a,
|  | nullptr_t | )
| inlinenoexcept

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

## ◆ operator<=() [5/7]

template<typename _Tp1, typename _Tp2>

bool std::experimental::fundamentals_v2::operator<= | ( | const shared_ptr< _Tp1 > & | __a,
|  | const shared_ptr< _Tp2 > & | __b )
| inlinenoexcept

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

## ◆ operator<=() [6/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator<= | ( | nullptr_t | ,
|  | const shared_ptr< _Tp > & | __a )
| inlinenoexcept

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

## ◆ operator<=() [7/7]

template<typename _Tp, typename _Up>

bool std::experimental::fundamentals_v2::operator<= | ( | observer_ptr< _Tp > | __p1,
|  | observer_ptr< _Up > | __p2 )
| constexpr

Definition at line 224 of file experimental/memory.

## ◆ operator==() [1/9]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator== | ( | __type_identity_t< basic_string_view< _CharT, _Traits > > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 461 of file experimental/string_view.

## ◆ operator==() [2/9]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator== | ( | basic_string_view< _CharT, _Traits > | __x,
|  | __type_identity_t< basic_string_view< _CharT, _Traits > > | __y )
| constexprnoexcept

Definition at line 454 of file experimental/string_view.

## ◆ operator==() [3/9]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator== | ( | basic_string_view< _CharT, _Traits > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 448 of file experimental/string_view.

## ◆ operator==() [4/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator== | ( | const shared_ptr< _Tp > & | __a,
|  | nullptr_t | )
| inlinenoexcept

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

## ◆ operator==() [5/9]

template<typename _Tp1, typename _Tp2>

bool std::experimental::fundamentals_v2::operator== | ( | const shared_ptr< _Tp1 > & | __a,
|  | const shared_ptr< _Tp2 > & | __b )
| noexcept

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

## ◆ operator==() [6/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator== | ( | nullptr_t | ,
|  | const shared_ptr< _Tp > & | __a )
| inlinenoexcept

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

## ◆ operator==() [7/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator== | ( | nullptr_t | ,
|  | observer_ptr< _Tp > | __p )
| constexprnoexcept

Definition at line 187 of file experimental/memory.

## ◆ operator==() [8/9]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator== | ( | observer_ptr< _Tp > | __p,
|  | nullptr_t | )
| constexprnoexcept

Definition at line 180 of file experimental/memory.

## ◆ operator==() [9/9]

template<typename _Tp, typename _Up>

bool std::experimental::fundamentals_v2::operator== | ( | observer_ptr< _Tp > | __p1,
|  | observer_ptr< _Up > | __p2 )
| constexpr

Definition at line 166 of file experimental/memory.

## ◆ operator>() [1/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator> | ( | __type_identity_t< basic_string_view< _CharT, _Traits > > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 518 of file experimental/string_view.

## ◆ operator>() [2/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator> | ( | basic_string_view< _CharT, _Traits > | __x,
|  | __type_identity_t< basic_string_view< _CharT, _Traits > > | __y )
| constexprnoexcept

Definition at line 511 of file experimental/string_view.

## ◆ operator>() [3/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator> | ( | basic_string_view< _CharT, _Traits > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 505 of file experimental/string_view.

## ◆ operator>() [4/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator> | ( | const shared_ptr< _Tp > & | __a,
|  | nullptr_t | )
| inlinenoexcept

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

## ◆ operator>() [5/7]

template<typename _Tp1, typename _Tp2>

bool std::experimental::fundamentals_v2::operator> | ( | const shared_ptr< _Tp1 > & | __a,
|  | const shared_ptr< _Tp2 > & | __b )
| inlinenoexcept

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

## ◆ operator>() [6/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator> | ( | nullptr_t | ,
|  | const shared_ptr< _Tp > & | __a )
| inlinenoexcept

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

## ◆ operator>() [7/7]

template<typename _Tp, typename _Up>

bool std::experimental::fundamentals_v2::operator> | ( | observer_ptr< _Tp > | __p1,
|  | observer_ptr< _Up > | __p2 )
| constexpr

Definition at line 218 of file experimental/memory.

## ◆ operator>=() [1/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator>= | ( | __type_identity_t< basic_string_view< _CharT, _Traits > > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 556 of file experimental/string_view.

## ◆ operator>=() [2/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator>= | ( | basic_string_view< _CharT, _Traits > | __x,
|  | __type_identity_t< basic_string_view< _CharT, _Traits > > | __y )
| constexprnoexcept

Definition at line 549 of file experimental/string_view.

## ◆ operator>=() [3/7]

template<typename _CharT, typename _Traits>

bool std::experimental::fundamentals_v1::operator>= | ( | basic_string_view< _CharT, _Traits > | __x,
|  | basic_string_view< _CharT, _Traits > | __y )
| constexprnoexcept

Definition at line 543 of file experimental/string_view.

## ◆ operator>=() [4/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator>= | ( | const shared_ptr< _Tp > & | __a,
|  | nullptr_t | )
| inlinenoexcept

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

## ◆ operator>=() [5/7]

template<typename _Tp1, typename _Tp2>

bool std::experimental::fundamentals_v2::operator>= | ( | const shared_ptr< _Tp1 > & | __a,
|  | const shared_ptr< _Tp2 > & | __b )
| inlinenoexcept

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

## ◆ operator>=() [6/7]

template<typename _Tp>

bool std::experimental::fundamentals_v2::operator>= | ( | nullptr_t | ,
|  | const shared_ptr< _Tp > & | __a )
| inlinenoexcept

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

## ◆ operator>=() [7/7]

template<typename _Tp, typename _Up>

bool std::experimental::fundamentals_v2::operator>= | ( | observer_ptr< _Tp > | __p1,
|  | observer_ptr< _Up > | __p2 )
| constexpr

Definition at line 232 of file experimental/memory.

## ◆ randint()

template<typename _IntType>

_IntType std::experimental::fundamentals_v2::randint | ( | _IntType | __a,
|  | _IntType | __b )
| inline

Definition at line 57 of file experimental/random.

## ◆ reinterpret_pointer_cast()

template<typename _Tp, typename _Tp1>

shared_ptr< _Tp > std::experimental::fundamentals_v2::reinterpret_pointer_cast | ( | const shared_ptr< _Tp1 > & | __r | ) |
| inlinenoexcept

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

## ◆ reseed() [1/2]

void std::experimental::fundamentals_v2::reseed | ( |  | ) |
| inline

Definition at line 69 of file experimental/random.

## ◆ reseed() [2/2]

void std::experimental::fundamentals_v2::reseed | ( | default_random_engine::result_type | __value | ) |
| inline

Definition at line 75 of file experimental/random.

## ◆ sample() [1/2]

template<typename _PopulationIterator, typename _SampleIterator, typename _Distance>

_SampleIterator std::experimental::fundamentals_v2::sample | ( | _PopulationIterator | __first,
|  | _PopulationIterator | __last,
|  | _SampleIterator | __out,
|  | _Distance | __n )
| inline

Definition at line 92 of file experimental/algorithm.

## ◆ sample() [2/2]

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 65 of file experimental/algorithm.

References std::forward().

## ◆ search()

template<typename _ForwardIterator, typename _Searcher>

_ForwardIterator std::experimental::fundamentals_v2::search | ( | _ForwardIterator | __first,
|  | _ForwardIterator | __last,
|  | const _Searcher & | __searcher )
| inline

Definition at line 55 of file experimental/algorithm.

## ◆ shuffle()

template<typename _RandomAccessIterator>

void std::experimental::fundamentals_v2::shuffle | ( | _RandomAccessIterator | __first,
|  | _RandomAccessIterator | __last )
| inline

Definition at line 101 of file experimental/algorithm.

## ◆ static_pointer_cast()

template<typename _Tp, typename _Tp1>

shared_ptr< _Tp > std::experimental::fundamentals_v2::static_pointer_cast | ( | const shared_ptr< _Tp1 > & | __r | ) |
| inlinenoexcept

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

## ◆ swap() [1/3]

template<typename _Tp>

void std::experimental::fundamentals_v2::swap | ( | observer_ptr< _Tp > & | __p1,
|  | observer_ptr< _Tp > & | __p2 )
| constexprnoexcept

Definition at line 152 of file experimental/memory.

## ◆ swap() [2/3]

template<typename _Tp>

void std::experimental::fundamentals_v2::swap | ( | shared_ptr< _Tp > & | __a,
|  | shared_ptr< _Tp > & | __b )
| inlinenoexcept

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

## ◆ swap() [3/3]

template<typename _Tp>

void std::experimental::fundamentals_v2::swap | ( | weak_ptr< _Tp > & | __a,
|  | weak_ptr< _Tp > & | __b )
| related

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

## Variable Documentation

## ◆ __sp_compatible_v

template<typename _Yp, typename _Tp>

bool std::experimental::fundamentals_v2::__sp_compatible_v
| constexpr

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

## ◆ __sp_is_constructible_v

template<typename _Tp, typename _Yp>

bool std::experimental::fundamentals_v2::__sp_is_constructible_v
| constexpr

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

## ◆ is_bind_expression_v

template<typename _Tp>

bool std::experimental::fundamentals_v1::is_bind_expression_v
| constexpr

Variable template for std::is_bind_expression.

Definition at line 62 of file experimental/functional.

## ◆ is_error_code_enum_v

template<typename _Tp>

bool std::experimental::fundamentals_v1::is_error_code_enum_v
| constexpr

Definition at line 58 of file experimental/system_error.

## ◆ is_error_condition_enum_v

template<typename _Tp>

bool std::experimental::fundamentals_v1::is_error_condition_enum_v
| constexpr

Definition at line 60 of file experimental/system_error.

## ◆ is_placeholder_v

template<typename _Tp>

int std::experimental::fundamentals_v1::is_placeholder_v
| constexpr

Variable template for std::is_placeholder.

Definition at line 66 of file experimental/functional.

## ◆ ratio_equal_v

template<typename _R1, typename _R2>

bool std::experimental::fundamentals_v1::ratio_equal_v
| constexpr

Definition at line 58 of file experimental/ratio.

## ◆ ratio_greater_equal_v

template<typename _R1, typename _R2>

bool std::experimental::fundamentals_v1::ratio_greater_equal_v
| constexpr

Definition at line 68 of file experimental/ratio.

## ◆ ratio_greater_v

template<typename _R1, typename _R2>

bool std::experimental::fundamentals_v1::ratio_greater_v
| constexpr

Definition at line 66 of file experimental/ratio.

## ◆ ratio_less_equal_v

template<typename _R1, typename _R2>

bool std::experimental::fundamentals_v1::ratio_less_equal_v
| constexpr

Definition at line 64 of file experimental/ratio.

## ◆ ratio_less_v

template<typename _R1, typename _R2>

bool std::experimental::fundamentals_v1::ratio_less_v
| constexpr

Definition at line 62 of file experimental/ratio.

## ◆ ratio_not_equal_v

template<typename _R1, typename _R2>

bool std::experimental::fundamentals_v1::ratio_not_equal_v
| constexpr

Definition at line 60 of file experimental/ratio.

## ◆ tuple_size_v

template<typename _Tp>

size_t std::experimental::fundamentals_v1::tuple_size_v
| constexpr

Definition at line 55 of file experimental/tuple.