|
RAJA
RAJA provides a collection of platform portability abstractions for C++ HPC applications.
|
Tuple used by ZipIterator for storing multiple references and values. Acts like a reference to its members allowing copy/move construction/assignment based on the reference type of the zip_tuple. More...
#include <zip_tuple.hpp>
Public Types | |
| using | value_type = RAJA::tuple< Ts... > |
| template<typename T > | |
| using | opp_type = typename std::conditional< is_val, typename std::add_lvalue_reference< T >::type, typename std::remove_reference< T >::type >::type |
| using | opp_tuple = zip_tuple<!is_val, opp_type< Ts >... > |
| using | IdxSeq = camp::make_idx_seq_t< sizeof...(Ts)> |
Public Member Functions | |
| template<typename... Os, typename = concepts::enable_if<type_traits::convertible_to<Os&&, Ts>...>> | |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE | zip_tuple (Os &&... os) |
| template<typename... Os, typename = concepts::enable_if<type_traits::convertible_to< Os&&, typename std::remove_reference<Ts>::type>...>> | |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE zip_tuple & | assign (Os &&... os) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE | zip_tuple (zip_tuple &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE | zip_tuple (zip_tuple const &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE | zip_tuple (zip_tuple &&o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE zip_tuple & | operator= (zip_tuple &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE zip_tuple & | operator= (zip_tuple const &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE zip_tuple & | operator= (zip_tuple &&o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE | zip_tuple (opp_tuple &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE | zip_tuple (opp_tuple const &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE | zip_tuple (opp_tuple &&o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE zip_tuple & | operator= (opp_tuple &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE zip_tuple & | operator= (opp_tuple const &o) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE zip_tuple & | operator= (opp_tuple &&o) |
| template<camp::idx_t I> | |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE RAJA::tuple_element_t< I, value_type > & | get () &noexcept |
| template<camp::idx_t I> | |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE RAJA::tuple_element_t< I, value_type > const & | get () const &noexcept |
| template<camp::idx_t I> | |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE std::remove_reference_t< RAJA::tuple_element_t< I, value_type > > && | get () &&noexcept |
| template<camp::idx_t I> | |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE std::remove_reference_t< RAJA::tuple_element_t< I, value_type > > const && | get () const &&noexcept |
Friends | |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE friend void | safe_swap (zip_tuple &lhs, zip_tuple &rhs) |
| RAJA_HOST_DEVICE constexpr RAJA_INLINE friend void | safe_swap (zip_tuple &lhs, opp_tuple &rhs) |
| std::ostream & | operator<< (std::ostream &o, zip_tuple const &v) |
Tuple used by ZipIterator for storing multiple references and values. Acts like a reference to its members allowing copy/move construction/assignment based on the reference type of the zip_tuple.
| using RAJA::zip_tuple< is_val, Ts >::value_type = RAJA::tuple<Ts...> |
| using RAJA::zip_tuple< is_val, Ts >::opp_type = typename std::conditional<is_val, typename std::add_lvalue_reference<T>::type, typename std::remove_reference<T>::type>::type |
| using RAJA::zip_tuple< is_val, Ts >::opp_tuple = zip_tuple<!is_val, opp_type<Ts>...> |
| using RAJA::zip_tuple< is_val, Ts >::IdxSeq = camp::make_idx_seq_t<sizeof...(Ts)> |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
friend |
|
friend |
|
friend |