| ExecutionP2300 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <experimental/execution> | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Filesystem TS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <experimental/filesystem> | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Parallelism TS (v1, v2) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Library Fundamentals TS (v1, v2, v3) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Concurrency TS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Ranges TS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Coroutines TS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
experimental/coroutine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Networking TS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Reflection TS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| <experimental/reflect> | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
This header is part of the Library Fundamentals TS (v1,v2).
Contents |
| Name | Description |
(library fundamentals TS) | a wrapper that may or may not hold an object (class template)[edit] |
(library fundamentals TS) | exception indicating checked access to an optional that doesn't contain a value (class)[edit] |
(library fundamentals TS) | disambiguation tag type for in-place construction of optional types (class)[edit] |
| specializes thestd::hash algorithm (class template specialization)[edit] | |
(library fundamentals TS) | indicator of optional type with uninitialized state (class)[edit] |
Comparison | |
comparesoptional objects(function template)[edit] | |
Specialized algorithms | |
| specializes thestd::swap algorithm (function)[edit] | |
creates anoptional object(function template)[edit] | |
Hash support | |
namespace std{namespace experimental{inlinenamespace fundamentals_v1{ // 5.4, optional for object typestemplate<class T>class optional; // 5.5, In-place constructionstruct in_place_t{};constexpr in_place_t in_place{}; // 5.6, Disengaged state indicatorstruct nullopt_t{see below};constexpr nullopt_t nullopt(unspecified); // 5.7, Class bad_optional_accessclass bad_optional_access; // 5.8, Relational operatorstemplate<class T>constexprbool operator==(const optional<T>&,const optional<T>&);template<class T>constexprbool operator!=(const optional<T>&,const optional<T>&);template<class T>constexprbool operator<(const optional<T>&,const optional<T>&);template<class T>constexprbool operator>(const optional<T>&,const optional<T>&);template<class T>constexprbool operator<=(const optional<T>&,const optional<T>&);template<class T>constexprbool operator>=(const optional<T>&,const optional<T>&); // 5.9, Comparison with nullopttemplate<class T>constexprbool operator==(const optional<T>&, nullopt_t)noexcept;template<class T>constexprbool operator==(nullopt_t,const optional<T>&)noexcept;template<class T>constexprbool operator!=(const optional<T>&, nullopt_t)noexcept;template<class T>constexprbool operator!=(nullopt_t,const optional<T>&)noexcept;template<class T>constexprbool operator<(const optional<T>&, nullopt_t)noexcept;template<class T>constexprbool operator<(nullopt_t,const optional<T>&)noexcept;template<class T>constexprbool operator<=(const optional<T>&, nullopt_t)noexcept;template<class T>constexprbool operator<=(nullopt_t,const optional<T>&)noexcept;template<class T>constexprbool operator>(const optional<T>&, nullopt_t)noexcept;template<class T>constexprbool operator>(nullopt_t,const optional<T>&)noexcept;template<class T>constexprbool operator>=(const optional<T>&, nullopt_t)noexcept;template<class T>constexprbool operator>=(nullopt_t,const optional<T>&)noexcept; // 5.10, Comparison with Ttemplate<class T>constexprbool operator==(const optional<T>&,const T&);template<class T>constexprbool operator==(const T&,const optional<T>&);template<class T>constexprbool operator!=(const optional<T>&,const T&);template<class T>constexprbool operator!=(const T&,const optional<T>&);template<class T>constexprbool operator<(const optional<T>&,const T&);template<class T>constexprbool operator<(const T&,const optional<T>&);template<class T>constexprbool operator<=(const optional<T>&,const T&);template<class T>constexprbool operator<=(const T&,const optional<T>&);template<class T>constexprbool operator>(const optional<T>&,const T&);template<class T>constexprbool operator>(const T&,const optional<T>&);template<class T>constexprbool operator>=(const optional<T>&,const T&);template<class T>constexprbool operator>=(const T&,const optional<T>&); // 5.11, Specialized algorithmstemplate<class T>void swap(optional<T>&, optional<T>&)noexcept(see below);template<class T>constexpr optional<see below> make_optional(T&&); }// namespace fundamentals_v1}// namespace experimental // 5.12, Hash supporttemplate<class T>struct hash;template<class T>struct hash<experimental::optional<T>>; }// namespace std