datastructures¶
#include <hpx/datastructures/tuple.hpp>¶
-
template<typename
T0, typenameT1>
structtuple_element<0, std::pair<T0, T1>>¶ Public Types
-
template<>
usingtype= T0¶
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(std::pair< T0, T1 > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(std::pair< T0, T1 > const & tuple)
-
template<>
-
template<typename
T0, typenameT1>
structtuple_element<1, std::pair<T0, T1>>¶ Public Types
-
template<>
usingtype= T1¶
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(std::pair< T0, T1 > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(std::pair< T0, T1 > const & tuple)
-
template<>
-
template<std::size_t
I, typenameType, std::size_tSize>
structtuple_element<I, boost::array<Type, Size>>¶ Public Types
-
template<>
usingtype= Type¶
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(boost::array< Type, Size > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(boost::array< Type, Size > const & tuple)
-
template<>
-
template<std::size_t
I, typenameType, std::size_tSize>
structtuple_element<I, std::array<Type, Size>>¶ Public Types
-
template<>
usingtype= Type¶
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(std::array< Type, Size > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(std::array< Type, Size > const & tuple)
-
template<>
-
namespace
hpx -
namespace
util Functions
-
template<typename... Ts>HPX_HOST_DEVICE tuple<typename decay_unwrap<Ts>::type...> hpx::util::make_tuple(Ts &&... vs)
-
template<typename... Ts>HPX_HOST_DEVICE tuple<Ts&&...> hpx::util::forward_as_tuple(Ts &&... vs)
-
template<typename... Ts>HPX_HOST_DEVICE tuple<Ts&...> hpx::util::tie(Ts &... vs)
-
template<typename... Tuples>HPX_HOST_DEVICE auto hpx::util::tuple_cat(Tuples &&... tuples)
-
template<typename... Ts, typename... Us>HPX_HOST_DEVICE std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::type hpx::util::operator==(tuple < Ts... > const & t, tuple < Us... > const & u)
-
template<typename... Ts, typename... Us>HPX_HOST_DEVICE std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::type hpx::util::operator!=(tuple < Ts... > const & t, tuple < Us... > const & u)
-
template<typename... Ts, typename... Us>HPX_HOST_DEVICE std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::type hpx::util::operator<(tuple < Ts... > const & t, tuple < Us... > const & u)
-
template<typename... Ts, typename... Us>HPX_HOST_DEVICE std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::type hpx::util::operator>(tuple < Ts... > const & t, tuple < Us... > const & u)
-
template<typename... Ts, typename... Us>HPX_HOST_DEVICE std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::type hpx::util::operator<=(tuple < Ts... > const & t, tuple < Us... > const & u)
-
template<typename... Ts, typename... Us>HPX_HOST_DEVICE std::enable_if<sizeof...(Ts) == sizeof...(Us), bool>::type hpx::util::operator>=(tuple < Ts... > const & t, tuple < Us... > const & u)
-
template<typename... Ts>HPX_HOST_DEVICE void hpx::util::swap(tuple < Ts... > & x, tuple < Ts... > & y)
Variables
-
detail::ignore_type const
ignore= {}¶
-
template<typename ...
Ts>
classtuple¶ Public Functions
-
template<typename
Dependent= void, typenameEnable= typename std::enable_if<hpx::util::detail::all_of<std::is_constructible<Ts>...>::value, Dependent>::type>
HPX_HOST_DEVICEtuple()¶
-
HPX_HOST_DEVICE
tuple(Ts const&... vs)¶
-
template<typename
U, typename ...Us, typenameEnable= typename std::enable_if<detail::pack<U, Us...>::size == detail::pack<Ts...>::size && std::conditional<detail::pack<Us...>::size == 0, typename std::enable_if<!std::is_same<tuple, typename std::decay<U>::type>::value && !detail::are_tuples_compatible_not_same<tuple, U&&>::value, detail::are_tuples_compatible<tuple, tuple<U>&&>>::type, detail::are_tuples_compatible<tuple, tuple<U, Us...>&&>>::type::value>::type>
HPX_HOST_DEVICEtuple(U &&v, Us&&... vs)¶
-
template<typename
UTuple, typenameEnable= typename std::enable_if<detail::are_tuples_compatible_not_same<tuple, UTuple&&>::value>::type>
HPX_HOST_DEVICEtuple(UTuple &&other)¶
-
HPX_HOST_DEVICE tuple& hpx::util::tuple::operator=(tuple const & other)
-
HPX_HOST_DEVICE tuple& hpx::util::tuple::operator=(tuple && other)
-
template<typename UTuple>HPX_HOST_DEVICE std::enable_if< tuple_size<typename std::decay<UTuple>::type>::value == detail::pack<Ts...>::size, tuple&>::type hpx::util::tuple::operator=(UTuple && other)
-
HPX_HOST_DEVICE void hpx::util::tuple::swap(tuple & other)
Public Members
-
detail::tuple_impl<typename detail::make_index_pack<sizeof...(Ts)>::type, Ts...>
_impl¶
-
template<typename
-
template<>
classtuple<>¶
-
template<typename
T0, typenameT1>
structtuple_element<0, std::pair<T0, T1>> Public Types
-
template<>
usingtype= T0
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(std::pair< T0, T1 > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(std::pair< T0, T1 > const & tuple)
-
template<>
-
template<typename
T0, typenameT1>
structtuple_element<1, std::pair<T0, T1>> Public Types
-
template<>
usingtype= T1
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(std::pair< T0, T1 > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(std::pair< T0, T1 > const & tuple)
-
template<>
-
template<std::size_t
I, typenameType, std::size_tSize>
structtuple_element<I, boost::array<Type, Size>> Public Types
-
template<>
usingtype= Type
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(boost::array< Type, Size > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(boost::array< Type, Size > const & tuple)
-
template<>
-
template<std::size_t
I, typenameType, std::size_tSize>
structtuple_element<I, std::array<Type, Size>> Public Types
-
template<>
usingtype= Type
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(std::array< Type, Size > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(std::array< Type, Size > const & tuple)
-
template<>
-
template<std::size_t
I, typename ...Ts>
structtuple_element<I, tuple<Ts...>>¶ Public Types
-
template<>
usingtype= typename detail::at_index::type¶
Public Static Functions
-
static HPX_HOST_DEVICE type& hpx::util::tuple_element::get(tuple < Ts... > & tuple)
-
static HPX_HOST_DEVICE type const& hpx::util::tuple_element::get(tuple < Ts... > const & tuple)
-
template<>
-
template<class
T>
structtuple_size¶ Subclassed by hpx::util::tuple_size< const T >, hpx::util::tuple_size< const volatile T >, hpx::util::tuple_size< volatile T >
-
namespace
adl_barrier¶ Functions
-
template<std::size_t I, typename Tuple>HPX_HOST_DEVICE tuple_element< I, Tuple >::type & hpx::util::adl_barrier::get(Tuple & t)
-
template<std::size_t I, typename Tuple>HPX_HOST_DEVICE tuple_element< I, Tuple >::type const & hpx::util::adl_barrier::get(Tuple const & t)
-
template<std::size_t I, typename Tuple>HPX_HOST_DEVICE tuple_element< I, Tuple >::type && hpx::util::adl_barrier::get(Tuple && t)
-
template<std::size_t I, typename Tuple>HPX_HOST_DEVICE tuple_element< I, Tuple >::type const && hpx::util::adl_barrier::get(Tuple const && t)
-
-
-
namespace
#include <hpx/datastructures/optional.hpp>¶
-
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
-
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)¶
-
T const *
operator->() const¶
-
T *
operator->()¶
-
T const &
operator*() const¶
-
T &
operator*()¶
-
operator bool() const¶
-
bool
has_value() const¶
-
T &
value()¶
-
T const &
value() const¶
-
template<typename U>HPX_CXX14_CONSTEXPR T hpx::util::optional::value_or(U && value) const
-
void
swap(optional &other)¶
-
void
reset()¶
-
template<>
-
class
-
namespace
#include <hpx/datastructures/any.hpp>¶
-
template<>
classbasic_any<void, void, void, std::true_type>¶ Public Functions
-
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)¶
-
-
template<typename
Char>
classbasic_any<void, void, Char, std::true_type>¶ Public Functions
-
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)
-
-
template<>
classbasic_any<void, void, void, std::false_type>¶ Public Functions
-
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
-
-
template<typename
Char>
classbasic_any<void, void, Char, std::false_type>¶ Public Functions
-
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
-
-
namespace
hpx -
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, typenameIArch, typenameOArch, typenameChar, typenameCopyable>
T *any_cast(basic_any<IArch, OArch, Char, Copyable> *operand)¶
-
template<typename
T, typenameIArch, typenameOArch, typenameChar, typenameCopyable>
T const *any_cast(basic_any<IArch, OArch, Char, Copyable> const *operand)¶
-
template<typename
T, typenameIArch, typenameOArch, typenameChar, typenameCopyable>
Tany_cast(basic_any<IArch, OArch, Char, Copyable> &operand)¶
-
template<typename
T, typenameIArch, typenameOArch, typenameChar, typenameCopyable>
T const &any_cast(basic_any<IArch, OArch, Char, Copyable> const &operand)¶
-
template<typename
Char>
classbasic_any<void, void, Char, std::false_type> Public Functions
-
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
-
-
template<typename
Char>
classbasic_any<void, void, Char, std::true_type> Public Functions
-
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)
-
-
template<>
classbasic_any<void, void, void, std::false_type> Public Functions
-
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
-
-
template<>
classbasic_any<void, void, void, std::true_type> Public Functions
-
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)
-
-
template<typename
-
namespace