kokkos-execution 0.0.1
Loading...
Searching...
No Matches
Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties > Struct Template Reference

#include <parallel_reduce.hpp>

Inheritance diagram for Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >:

Public Types

using functor_t = Functor
using policy_or_iter_space_t = ExecPolicyOrIterSpace
using reducer_t = Reducer
using properties_t = properties<Properties...>

Public Member Functions

template<typename Self, typename UnaryOp>
constexpr auto transform_policy_or_iter_space (this Self &&self, UnaryOp &&unary_op) noexcept(noexcept(ParallelReduceData< functor_t, std::remove_cvref_t< std::invoke_result_t< UnaryOp, decltype(stdexec::__forward_like< Self >(self.policy_or_iter_space))> >, reducer_t, Properties... >{stdexec::__forward_like< Self >(detail::as_base< Properties >(self))..., stdexec::__forward_like< Self >(self.functor), std::forward< UnaryOp >(unary_op)(stdexec::__forward_like< Self >(self.policy_or_iter_space)), stdexec::__forward_like< Self >(self.reducer)})) -> decltype(ParallelReduceData< functor_t, std::remove_cvref_t< std::invoke_result_t< UnaryOp, decltype(stdexec::__forward_like< Self >(self.policy_or_iter_space))> >, reducer_t, Properties... >{stdexec::__forward_like< Self >(detail::as_base< Properties >(self))..., stdexec::__forward_like< Self >(self.functor), std::forward< UnaryOp >(unary_op)(stdexec::__forward_like< Self >(self.policy_or_iter_space)), stdexec::__forward_like< Self >(self.reducer)})
 Transform policy_or_iter_space, keeping other data unchanged.

Public Attributes

functor_t functor
policy_or_iter_space_t policy_or_iter_space
reducer_t reducer

Detailed Description

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
struct Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >

Definition at line 138 of file parallel_reduce.hpp.

Member Typedef Documentation

◆ functor_t

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
using Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::functor_t = Functor

Definition at line 139 of file parallel_reduce.hpp.

◆ policy_or_iter_space_t

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
using Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::policy_or_iter_space_t = ExecPolicyOrIterSpace

Definition at line 140 of file parallel_reduce.hpp.

◆ properties_t

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
using Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::properties_t = properties<Properties...>

Definition at line 142 of file parallel_reduce.hpp.

◆ reducer_t

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
using Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::reducer_t = Reducer

Definition at line 141 of file parallel_reduce.hpp.

Member Function Documentation

◆ transform_policy_or_iter_space()

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
template<typename Self, typename UnaryOp>
auto Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::transform_policy_or_iter_space ( this Self && self,
UnaryOp && unary_op ) -> decltype(ParallelReduceData< functor_t, std::remove_cvref_t< std::invoke_result_t< UnaryOp, decltype(stdexec::__forward_like< Self >(self.policy_or_iter_space))> >, reducer_t, Properties... >{stdexec::__forward_like< Self >(detail::as_base< Properties >(self))..., stdexec::__forward_like< Self >(self.functor), std::forward< UnaryOp >(unary_op)(stdexec::__forward_like< Self >(self.policy_or_iter_space)), stdexec::__forward_like< Self >(self.reducer)})
inlineconstexprnoexcept

Transform policy_or_iter_space, keeping other data unchanged.

Definition at line 150 of file parallel_reduce.hpp.

Member Data Documentation

◆ functor

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
functor_t Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::functor

Definition at line 144 of file parallel_reduce.hpp.

◆ policy_or_iter_space

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
policy_or_iter_space_t Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::policy_or_iter_space

Definition at line 145 of file parallel_reduce.hpp.

◆ reducer

template<typename Functor, execution_policy_or_iteration_space ExecPolicyOrIterSpace, typename Reducer, typename... Properties>
reducer_t Kokkos::Execution::Impl::ParallelReduceData< Functor, ExecPolicyOrIterSpace, Reducer, Properties >::reducer

Definition at line 146 of file parallel_reduce.hpp.


The documentation for this struct was generated from the following file: