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