datastructures¶
The contents of this module can be included with the header
hpx/modules/datastructures.hpp. These headers may be used by user-code but are not
guaranteed stable (neither header location nor contents). You are using these at
your own risk. If you wish to use non-public functionality from a module we
strongly suggest only including the module header hpx/modules/datastructures.hpp, not
the particular header in which the functionality you would like to use is
defined. See Public API for a list of names that are part of the public
HPX API.
-
template<>
classbasic_any<void, void, void, std::true_type>¶ Public Functions
-
constexpr
basic_any()¶
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_copy_constructible<typename std::decay<T>::type>::value>::type* = nullptr)¶
-
~basic_any()¶
-
basic_any &
operator=(basic_any const &x)¶
-
basic_any &
operator=(basic_any &&rhs)¶
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_copy_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)¶
-
basic_any &
swap(basic_any &x)¶
-
bool
has_value() const¶
-
void
reset()¶
-
bool
equal_to(basic_any const &rhs) const¶
Private Functions
-
basic_any &
assign(basic_any const &x)¶
-
constexpr
-
template<typename
Char>
classbasic_any<void, void, Char, std::true_type>¶ Public Functions
-
constexpr
basic_any()
-
basic_any(basic_any const &x)
-
basic_any(basic_any &&x)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_copy_constructible<typename std::decay<T>::type>::value>::type* = nullptr)
-
~basic_any()
-
basic_any &
operator=(basic_any const &x)
-
basic_any &
operator=(basic_any &&rhs)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_copy_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)
-
basic_any &
swap(basic_any &x)
-
std::type_info const &
type() const
-
template<typename
T>
T const &cast() const
-
bool
has_value() const
-
void
reset()
-
bool
equal_to(basic_any const &rhs) const
Private Functions
-
basic_any &
assign(basic_any const &x)
-
constexpr
-
template<>
classbasic_any<void, void, void, std::false_type>¶ Public Functions
-
constexpr
basic_any()
-
basic_any(basic_any &&x)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_move_constructible<typename std::decay<T>::type>::value>::type* = nullptr)¶
-
basic_any(basic_any const &x)
-
basic_any &
operator=(basic_any const &x)
-
~basic_any()
-
basic_any &
operator=(basic_any &&rhs)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_move_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)
-
basic_any &
swap(basic_any &x)
-
std::type_info const &
type() const
-
template<typename
T>
T const &cast() const
-
bool
has_value() const
-
void
reset()
-
bool
equal_to(basic_any const &rhs) const
-
constexpr
-
template<typename
Char>
classbasic_any<void, void, Char, std::false_type>¶ Public Functions
-
constexpr
basic_any()
-
basic_any(basic_any &&x)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_move_constructible<typename std::decay<T>::type>::value>::type* = nullptr)
-
basic_any(basic_any const &x)
-
basic_any &
operator=(basic_any const &x)
-
~basic_any()
-
basic_any &
operator=(basic_any &&rhs)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_move_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)
-
basic_any &
swap(basic_any &x)
-
std::type_info const &
type() const
-
template<typename
T>
T const &cast() const
-
bool
has_value() const
-
void
reset()
-
bool
equal_to(basic_any const &rhs) const
-
constexpr
-
namespace
hpx Typedefs
Functions
-
template<typename
T>
util::basic_any<void, void, void, std::false_type>make_unique_any_nonser(T &&t)¶
-
template<typename
T, typenameIArch, typenameOArch, typenameChar, typenameCopyable>
T *any_cast(util::basic_any<IArch, OArch, Char, Copyable> *operand)¶
-
template<typename
T, typenameIArch, typenameOArch, typenameChar, typenameCopyable>
T const *any_cast(util::basic_any<IArch, OArch, Char, Copyable> const *operand)¶
-
namespace
util Typedefs
Functions
-
template<typename
IArch, typenameOArch, typenameChar, typenameCopyable, typenameEnable= typename std::enable_if<!std::is_void<Char>::value>::type>
std::basic_istream<Char> &operator>>(std::basic_istream<Char> &i, basic_any<IArch, OArch, Char, Copyable> &obj)¶
-
template<typename
IArch, typenameOArch, typenameChar, typenameCopyable, typenameEnable= typename std::enable_if<!std::is_void<Char>::value>::type>
std::basic_ostream<Char> &operator<<(std::basic_ostream<Char> &o, basic_any<IArch, OArch, Char, Copyable> const &obj)¶
-
template<typename
IArch, typenameOArch, typenameChar, typenameCopyable>
voidswap(basic_any<IArch, OArch, Char, Copyable> &lhs, basic_any<IArch, OArch, Char, Copyable> &rhs)¶
-
template<typename T>hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::make_any_nonser is deprecated. Please use " "hpx::make_any_nonser instead.")
-
template<typename
T, typenameChar>
basic_any<void, void, Char, std::true_type>make_streamable_any_nonser(T &&t)¶
-
template<typename T>hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::make_unique_any_nonser is deprecated. Please use " "hpx::make_unique_any_nonser instead.")
Variables
-
hpx::util::void
-
template<typename
Char>
classbasic_any<void, void, Char, std::false_type> Public Functions
-
constexpr
basic_any()
-
basic_any(basic_any &&x)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_move_constructible<typename std::decay<T>::type>::value>::type* = nullptr)
-
basic_any(basic_any const &x)
-
basic_any &
operator=(basic_any const &x)
-
~basic_any()
-
basic_any &
operator=(basic_any &&rhs)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_move_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)
-
basic_any &
swap(basic_any &x)
-
std::type_info const &
type() const
-
template<typename
T>
T const &cast() const
-
bool
has_value() const
-
void
reset()
-
bool
equal_to(basic_any const &rhs) const
-
constexpr
-
template<typename
Char>
classbasic_any<void, void, Char, std::true_type> Public Functions
-
constexpr
basic_any()
-
basic_any(basic_any const &x)
-
basic_any(basic_any &&x)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_copy_constructible<typename std::decay<T>::type>::value>::type* = nullptr)
-
~basic_any()
-
basic_any &
operator=(basic_any const &x)
-
basic_any &
operator=(basic_any &&rhs)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_copy_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)
-
basic_any &
swap(basic_any &x)
-
std::type_info const &
type() const
-
template<typename
T>
T const &cast() const
-
bool
has_value() const
-
void
reset()
-
bool
equal_to(basic_any const &rhs) const
Private Functions
-
basic_any &
assign(basic_any const &x)
-
constexpr
-
template<>
classbasic_any<void, void, void, std::false_type> Public Functions
-
constexpr
basic_any()
-
basic_any(basic_any &&x)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_move_constructible<typename std::decay<T>::type>::value>::type* = nullptr)
-
basic_any(basic_any const &x)
-
basic_any &
operator=(basic_any const &x)
-
~basic_any()
-
basic_any &
operator=(basic_any &&rhs)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_move_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)
-
basic_any &
swap(basic_any &x)
-
std::type_info const &
type() const
-
template<typename
T>
T const &cast() const
-
bool
has_value() const
-
void
reset()
-
bool
equal_to(basic_any const &rhs) const
-
constexpr
-
template<>
classbasic_any<void, void, void, std::true_type> Public Functions
-
constexpr
basic_any()
-
basic_any(basic_any const &x)
-
basic_any(basic_any &&x)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value>::type>basic_any(T &&x, typename std::enable_if<std::is_copy_constructible<typename std::decay<T>::type>::value>::type* = nullptr)
-
~basic_any()
-
basic_any &
operator=(basic_any const &x)
-
basic_any &
operator=(basic_any &&rhs)
-
template<typename
T, typenameEnable= typename std::enable_if<!std::is_same<basic_any, typename std::decay<T>::type>::value && std::is_copy_constructible<typename std::decay<T>::type>::value>::type>
basic_any &operator=(T &&rhs)
-
basic_any &
swap(basic_any &x)
-
std::type_info const &
type() const
-
template<typename
T>
T const &cast() const
-
bool
has_value() const
-
void
reset()
-
bool
equal_to(basic_any const &rhs) const
Private Functions
-
basic_any &
assign(basic_any const &x)
-
constexpr
-
template<typename
-
template<typename
-
template<std::size_t...
Is, typename ...Ts>
structmember_pack<util::index_pack<Is...>, Ts...> : public hpx::util::detail::member_leaf<Is, Ts>¶ Public Functions
-
member_pack()¶
-
-
namespace
hpx -
namespace
serialization¶
-
namespace
-
namespace
hpx -
namespace
util Functions
-
class
bad_optional_access: public logic_error¶
-
struct
nullopt_t¶
-
template<typename
T>
classoptional¶ Public Types
-
template<>
usingvalue_type= T¶
Public Functions
-
constexpr
optional()¶
-
optional(T const &val)¶
-
optional(T &&val)¶
-
~optional()¶
-
optional &
operator=(optional const &other)¶
-
optional &
operator=(optional &&other)¶
-
optional &
operator=(T const &other)¶
-
optional &
operator=(T &&other)¶
-
constexpr T const *
operator->() const¶
-
T *
operator->()¶
-
constexpr T const &
operator*() const¶
-
T &
operator*()¶
-
constexpr
operator bool() const¶
-
constexpr bool
has_value() const¶
-
T &
value()¶
-
T const &
value() const¶
-
void
swap(optional &other)¶
-
void
reset()¶
-
template<>
-
class
-
namespace
Defines
-
HPX_DEFINE_TAG_SPECIFIER(NAME)¶
-
namespace
hpx
-
namespace
hpx -
namespace
util Functions
-
template<typename
Tag1, typenameTag2, typenameT1, typenameT2>
constexpr tagged_pair<Tag1(typename std::decay<T1>::type), Tag2(typename std::decay<T2>::type)>make_tagged_pair(std::pair<T1, T2> &&p)¶
-
template<typename
Tag1, typenameTag2, typenameT1, typenameT2>
constexpr tagged_pair<Tag1(typename std::decay<T1>::type), Tag2(typename std::decay<T2>::type)>make_tagged_pair(std::pair<T1, T2> const &p)¶
-
template<typename
Tag1, typenameTag2, typename ...Ts>
constexpr tagged_pair<Tag1(typename hpx::tuple_element<0, hpx::tuple<Ts...>>::type), Tag2(typename hpx::tuple_element<1, hpx::tuple<Ts...>>::type)>make_tagged_pair(hpx::tuple<Ts...> &&p)¶
-
template<typename
-
namespace
-
namespace
hpx -
namespace
util
-
namespace
-
template<typename
T0, typenameT1>
structtuple_element<0, std::pair<T0, T1>>¶ Public Types
-
template<>
usingtype= T0¶
-
template<>
-
template<typename
T0, typenameT1>
structtuple_element<1, std::pair<T0, T1>>¶ Public Types
-
template<>
usingtype= T1¶
-
template<>
-
template<std::size_t
I, typenameType, std::size_tSize>
structtuple_element<I, std::array<Type, Size>>¶ Public Types
-
template<>
usingtype= Type¶
-
template<>
-
namespace
hpx Functions
-
template<typename ...
Ts>
constexpr tuple<typename util::decay_unwrap<Ts>::type...>make_tuple(Ts&&... vs)¶
-
template<typename ...
Ts, typename ...Us>
constexpr std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::typeoperator==(tuple<Ts...> const &t, tuple<Us...> const &u)¶
-
template<typename ...
Ts, typename ...Us>
constexpr std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::typeoperator!=(tuple<Ts...> const &t, tuple<Us...> const &u)¶
-
template<typename ...
Ts, typename ...Us>
constexpr std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::typeoperator<(tuple<Ts...> const &t, tuple<Us...> const &u)¶
-
template<typename ...
Ts, typename ...Us>
constexpr std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::typeoperator>(tuple<Ts...> const &t, tuple<Us...> const &u)¶
-
template<typename ...
Ts, typename ...Us>
constexpr std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::typeoperator<=(tuple<Ts...> const &t, tuple<Us...> const &u)¶
-
template<typename ...
Ts>
classtuple¶ Public Functions
-
template<typename
Dependent= void, typenameEnable= typename std::enable_if<util::all_of<std::is_constructible<Ts>...>::value, Dependent>::type>
constexprtuple()¶
-
constexpr
tuple(Ts const&... vs)¶
-
template<typename
U, typename ...Us, typenameEnable= typename std::enable_if<!std::is_same<tuple, typename std::decay<U>::type>::value || util::pack<Us...>::size != 0>::type, typenameEnableCompatible= typename std::enable_if<hpx::detail::are_tuples_compatible<tuple, tuple<U, Us...>>::value>::type>
constexprtuple(U &&v, Us&&... vs)¶
-
template<typename
UTuple, typenameEnable= typename std::enable_if<!std::is_same<tuple, typename std::decay<UTuple>::type>::value>::type, typenameEnableCompatible= typename std::enable_if<hpx::detail::are_tuples_compatible<tuple, UTuple>::value>::type>
constexprtuple(UTuple &&other)¶
-
tuple &
operator=(tuple const &other)¶
-
tuple &
operator=(tuple &&other)¶
-
void
swap(tuple &other)¶
Private Functions
-
template<std::size_t...
Is, typenameUTuple>
constexprtuple(util::index_pack<Is...>, UTuple &&other)¶
-
template<std::size_t...
Is>
voidassign_(util::index_pack<Is...>, tuple const &other)¶
-
template<std::size_t...
Is>
voidassign_(util::index_pack<Is...>, tuple &&other)¶
-
template<std::size_t...
Is>
voidswap_(util::index_pack<Is...>, tuple &other)¶
Private Members
-
util::member_pack_for<Ts...>
_members¶
-
template<typename
-
template<>
classtuple<>¶
-
template<typename
T0, typenameT1>
structtuple_element<0, std::pair<T0, T1>> Public Types
-
template<>
usingtype= T0
-
template<>
-
template<typename
T0, typenameT1>
structtuple_element<1, std::pair<T0, T1>> Public Types
-
template<>
usingtype= T1
-
template<>
-
template<std::size_t
I, typenameType, std::size_tSize>
structtuple_element<I, std::array<Type, Size>> Public Types
-
template<>
usingtype= Type
-
template<>
-
template<class
T>
structtuple_size¶ Subclassed by hpx::tuple_size< const T >, hpx::tuple_size< const volatile T >, hpx::tuple_size< volatile T >
-
namespace
adl_barrier¶ Functions
-
template<std::size_t
I, typenameTuple, typenameEnable= typename util::always_void<typename hpx::tuple_element<I, Tuple>::type>::type>
constexpr hpx::tuple_element<I, Tuple>::type &get(Tuple &t)¶
-
template<std::size_t
I, typenameTuple, typenameEnable= typename util::always_void<typename hpx::tuple_element<I, Tuple>::type>::type>
constexpr hpx::tuple_element<I, Tuple>::type const &get(Tuple const &t)¶
-
template<std::size_t
I, typenameTuple, typenameEnable= typename util::always_void<typename hpx::tuple_element<I, typename std::decay<Tuple>::type>::type>::type>
constexpr hpx::tuple_element<I, Tuple>::type &&get(Tuple &&t)¶
-
template<std::size_t
I, typenameTuple, typenameEnable= typename util::always_void<typename hpx::tuple_element<I, Tuple>::type>::type>
constexpr hpx::tuple_element<I, Tuple>::type const &&get(Tuple const &&t)¶
-
template<std::size_t
I, typenameTuple, typenameEnable>
constexpr tuple_element<I, Tuple>::type &get(Tuple &t)¶
-
template<std::size_t
I, typenameTuple, typenameEnable>
constexpr tuple_element<I, Tuple>::type const &get(Tuple const &t)¶
-
template<std::size_t
-
namespace
std_adl_barrier¶ Functions
-
template<std::size_t
I, typename ...Ts>
constexpr hpx::tuple_element<I, hpx::tuple<Ts...>>::type &get(hpx::tuple<Ts...> &t)¶
-
template<std::size_t
I, typename ...Ts>
constexpr hpx::tuple_element<I, hpx::tuple<Ts...>>::type const &get(hpx::tuple<Ts...> const &t)¶
-
template<std::size_t
I, typename ...Ts>
constexpr hpx::tuple_element<I, hpx::tuple<Ts...>>::type &&get(hpx::tuple<Ts...> &&t)¶
-
template<std::size_t
I, typename ...Ts>
constexpr hpx::tuple_element<I, hpx::tuple<Ts...>>::type const &&get(hpx::tuple<Ts...> const &&t)¶
-
template<std::size_t
I, typename ...Ts>
constexpr tuple_element<I, tuple<Ts...>>::type &get(tuple<Ts...> &t)¶
-
template<std::size_t
I, typename ...Ts>
constexpr tuple_element<I, tuple<Ts...>>::type const &get(tuple<Ts...> const &t)¶
-
template<std::size_t
-
namespace
util Functions
-
hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::ignore is deprecated. Use hpx::ignore instead.")
-
template<typename... Ts>hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::make_tuple is deprecated. Use hpx::make_tuple instead.") const&&
-
template<typename... Ts>hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::tie is deprecated. Use hpx::tie instead.") const&&
-
template<typename... Ts>hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::forward_as_tuple is deprecated. Use hpx::forward_as_tuple " "instead.") const&&
-
template<typename... Ts>hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::tuple_cat is deprecated. Use hpx::tuple_cat " "instead.") const&&
-
template<std::size_t I, typename Tuple>hpx::util::HPX_DEPRECATED_V(1, 6, "hpx::util::get is deprecated. Use hpx::get " "instead.") const&&
-
-
template<typename ...