hpx/parallel/util/result_types.hpp#

See Public API for a list of names and headers that are part of the public HPX API.

namespace hpx
namespace parallel
namespace util

Functions

template<typename I1, typename I2>
I2 get_in2_element(util::in_in_result<I1, I2> &&p)#
template<typename I1, typename I2>
hpx::future<I2> get_in2_element(hpx::future<util::in_in_result<I1, I2>> &&f)#
template<typename I, typename O>
std::pair<I, O> get_pair(util::in_out_result<I, O> &&p)#
template<typename I, typename O>
O get_second_element(util::in_out_result<I, O> &&p)#
template<typename I, typename O>
hpx::future<std::pair<I, O>> get_pair(hpx::future<util::in_out_result<I, O>> &&f)#
template<typename I, typename O>
hpx::future<O> get_second_element(hpx::future<util::in_out_result<I, O>> &&f)#
template<typename I, typename O>
hpx::util::iterator_range<I, O> get_subrange(in_out_result<I, O> const &ior)#
template<typename I, typename O>
hpx::future<hpx::util::iterator_range<I, O>> get_subrange(hpx::future<in_out_result<I, O>> &&ior)#
template<typename I1, typename I2, typename O>
O get_third_element(util::in_in_out_result<I1, I2, O> &&p)#
template<typename I1, typename I2, typename O>
hpx::future<O> get_third_element(hpx::future<util::in_in_out_result<I1, I2, O>> &&f)#
template<typename ...Ts>
constexpr in_out_out_result<Ts...> make_in_out_out_result(hpx::tuple<Ts...> &&t)#
template<typename ...Ts>
hpx::future<in_out_out_result<Ts...>> make_in_out_out_result(hpx::future<hpx::tuple<Ts...>> &&f)#
template<typename Iterator, typename Sentinel = Iterator>
hpx::util::iterator_range<Iterator, Sentinel> make_subrange(Iterator iterator, Sentinel sentinel)#
template<typename Iterator, typename Sentinel = Iterator>
hpx::future<hpx::util::iterator_range<Iterator, Sentinel>> make_subrange(hpx::future<Iterator> &&iterator, Sentinel sentinel)#
template<typename I, typename F>
struct in_fun_result#

Public Functions

template<typename I2, typename F2, typename Enable = std::enable_if_t<std::is_convertible_v<I const&, I2> && std::is_convertible_v<F const&, F2>>>
inline constexpr operator in_fun_result<I2, F2>() const &#
template<typename I2, typename F2, typename Enable = std::enable_if_t<std::is_convertible_v<I, I2> && std::is_convertible_v<F, F2>>>
inline constexpr operator in_fun_result<I2, F2>() &&#
template<typename Archive>
inline void serialize(Archive &ar, unsigned)#

Public Members

HPX_NO_UNIQUE_ADDRESS I in
HPX_NO_UNIQUE_ADDRESS F fun
template<typename I1, typename I2, typename O>
struct in_in_out_result#

Public Functions

template<typename II1, typename II2, typename O1, typename Enable = typename std::enable_if_t<std::is_convertible_v<I1 const&, II1> && std::is_convertible_v<I2 const&, II2> && std::is_convertible_v<O const&, O1>>>
inline constexpr operator in_in_out_result<II1, II2, O1>() const &#
template<typename II2, typename II1, typename O1, typename Enable = typename std::enable_if_t<std::is_convertible_v<I1, II1> && std::is_convertible_v<I2, II2> && std::is_convertible_v<O, O1>>>
inline constexpr operator in_in_out_result<II1, II2, O1>() &&#
template<typename Archive>
inline void serialize(Archive &ar, unsigned)#

Public Members

HPX_NO_UNIQUE_ADDRESS I1 in1
HPX_NO_UNIQUE_ADDRESS I2 in2
HPX_NO_UNIQUE_ADDRESS O out
template<typename I1, typename I2>
struct in_in_result#

Public Functions

template<typename II1, typename II2, typename Enable = std::enable_if_t<std::is_convertible_v<I1 const&, II1> && std::is_convertible_v<I2 const&, II2>>>
inline constexpr operator in_in_result<II1, II2>() const &#
template<typename II1, typename II2, typename Enable = std::enable_if_t<std::is_convertible_v<I1, II1> && std::is_convertible_v<I2, II2>>>
inline constexpr operator in_in_result<II1, II2>() &&#
template<typename Archive>
inline void serialize(Archive &ar, unsigned)#

Public Members

HPX_NO_UNIQUE_ADDRESS I1 in1
HPX_NO_UNIQUE_ADDRESS I2 in2
template<typename I, typename O1, typename O2>
struct in_out_out_result#

Public Functions

template<typename II, typename OO1, typename OO2, typename Enable = typename std::enable_if_t<std::is_convertible_v<I const&, II> && std::is_convertible_v<O1 const&, OO1> && std::is_convertible_v<O2 const&, OO2>>>
inline constexpr operator in_out_out_result<II, OO1, OO2>() const &#
template<typename II, typename OO1, typename OO2, typename Enable = typename std::enable_if_t<std::is_convertible_v<I, II> && std::is_convertible_v<O1, OO1> && std::is_convertible_v<O2, OO2>>>
inline constexpr operator in_out_out_result<II, OO1, OO2>() &&#
template<typename Archive>
inline void serialize(Archive &ar, unsigned)#

Public Members

HPX_NO_UNIQUE_ADDRESS I in
HPX_NO_UNIQUE_ADDRESS O1 out1
HPX_NO_UNIQUE_ADDRESS O2 out2
template<typename I, typename O>
struct in_out_result#

Public Functions

template<typename I2, typename O2, typename Enable = std::enable_if_t<std::is_convertible_v<I const&, I2> && std::is_convertible_v<O const&, O2>>>
inline constexpr operator in_out_result<I2, O2>() const &#
template<typename I2, typename O2, typename Enable = std::enable_if_t<std::is_convertible_v<I, I2> && std::is_convertible_v<O, O2>>>
inline constexpr operator in_out_result<I2, O2>() &&#
template<typename Archive>
inline void serialize(Archive &ar, unsigned)#

Public Members

HPX_NO_UNIQUE_ADDRESS I in
HPX_NO_UNIQUE_ADDRESS O out
template<typename T>
struct min_max_result#

Public Functions

template<typename T2, typename Enable = std::enable_if_t<std::is_convertible_v<T const&, T>>>
inline constexpr operator min_max_result<T2>() const &#
template<typename T2, typename Enable = std::enable_if_t<std::is_convertible_v<T, T2>>>
inline constexpr operator min_max_result<T2>() &&#
template<typename Archive>
inline void serialize(Archive &ar, unsigned)#

Public Members

HPX_NO_UNIQUE_ADDRESS T min
HPX_NO_UNIQUE_ADDRESS T max
namespace ranges