RAJA
RAJA provides a collection of platform portability abstractions for C++ HPC applications.
Public Types | Public Member Functions | Friends | List of all members
RAJA::detail::random_access_iterator< iterator_base > Struct Template Reference

#include <WorkStorage.hpp>

Inheritance diagram for RAJA::detail::random_access_iterator< iterator_base >:

Public Types

using base = iterator_base
 
using value_type = const typename base::value_type
 
using pointer = typename base::pointer
 
using reference = typename base::reference
 
using difference_type = typename base::difference_type
 
using iterator_category = std::random_access_iterator_tag
 

Public Member Functions

 random_access_iterator (random_access_iterator const &)=default
 
 random_access_iterator (random_access_iterator &&)=default
 
random_access_iteratoroperator= (random_access_iterator const &)=default
 
random_access_iteratoroperator= (random_access_iterator &&)=default
 
RAJA_HOST_DEVICE reference operator* () const
 
RAJA_HOST_DEVICE pointer operator-> () const
 
RAJA_HOST_DEVICE reference operator[] (difference_type i) const
 
RAJA_HOST_DEVICE random_access_iteratoroperator++ ()
 
RAJA_HOST_DEVICE random_access_iterator operator++ (int)
 
RAJA_HOST_DEVICE random_access_iteratoroperator-- ()
 
RAJA_HOST_DEVICE random_access_iterator operator-- (int)
 
RAJA_HOST_DEVICE random_access_iteratoroperator+= (difference_type rhs)
 
RAJA_HOST_DEVICE random_access_iteratoroperator-= (difference_type rhs)
 

Friends

RAJA_HOST_DEVICE friend random_access_iterator operator+ (random_access_iterator const &lhs, difference_type rhs)
 
RAJA_HOST_DEVICE friend random_access_iterator operator+ (difference_type lhs, random_access_iterator const &rhs)
 
RAJA_HOST_DEVICE friend random_access_iterator operator- (random_access_iterator const &lhs, difference_type rhs)
 
RAJA_HOST_DEVICE friend difference_type operator- (random_access_iterator const &lhs, random_access_iterator const &rhs)
 
RAJA_HOST_DEVICE friend bool operator== (random_access_iterator const &lhs, random_access_iterator const &rhs)
 
RAJA_HOST_DEVICE friend bool operator!= (random_access_iterator const &lhs, random_access_iterator const &rhs)
 
RAJA_HOST_DEVICE friend bool operator< (random_access_iterator const &lhs, random_access_iterator const &rhs)
 
RAJA_HOST_DEVICE friend bool operator<= (random_access_iterator const &lhs, random_access_iterator const &rhs)
 
RAJA_HOST_DEVICE friend bool operator> (random_access_iterator const &lhs, random_access_iterator const &rhs)
 
RAJA_HOST_DEVICE friend bool operator>= (random_access_iterator const &lhs, random_access_iterator const &rhs)
 

Member Typedef Documentation

◆ base

template<typename iterator_base >
using RAJA::detail::random_access_iterator< iterator_base >::base = iterator_base

◆ value_type

template<typename iterator_base >
using RAJA::detail::random_access_iterator< iterator_base >::value_type = const typename base::value_type

◆ pointer

template<typename iterator_base >
using RAJA::detail::random_access_iterator< iterator_base >::pointer = typename base::pointer

◆ reference

template<typename iterator_base >
using RAJA::detail::random_access_iterator< iterator_base >::reference = typename base::reference

◆ difference_type

template<typename iterator_base >
using RAJA::detail::random_access_iterator< iterator_base >::difference_type = typename base::difference_type

◆ iterator_category

template<typename iterator_base >
using RAJA::detail::random_access_iterator< iterator_base >::iterator_category = std::random_access_iterator_tag

Constructor & Destructor Documentation

◆ random_access_iterator() [1/2]

template<typename iterator_base >
RAJA::detail::random_access_iterator< iterator_base >::random_access_iterator ( random_access_iterator< iterator_base > const &  )
default

◆ random_access_iterator() [2/2]

template<typename iterator_base >
RAJA::detail::random_access_iterator< iterator_base >::random_access_iterator ( random_access_iterator< iterator_base > &&  )
default

Member Function Documentation

◆ operator=() [1/2]

template<typename iterator_base >
random_access_iterator& RAJA::detail::random_access_iterator< iterator_base >::operator= ( random_access_iterator< iterator_base > const &  )
default

◆ operator=() [2/2]

template<typename iterator_base >
random_access_iterator& RAJA::detail::random_access_iterator< iterator_base >::operator= ( random_access_iterator< iterator_base > &&  )
default

◆ operator*()

template<typename iterator_base >
RAJA_HOST_DEVICE reference RAJA::detail::random_access_iterator< iterator_base >::operator* ( ) const
inline

◆ operator->()

template<typename iterator_base >
RAJA_HOST_DEVICE pointer RAJA::detail::random_access_iterator< iterator_base >::operator-> ( ) const
inline

◆ operator[]()

template<typename iterator_base >
RAJA_HOST_DEVICE reference RAJA::detail::random_access_iterator< iterator_base >::operator[] ( difference_type  i) const
inline

◆ operator++() [1/2]

template<typename iterator_base >
RAJA_HOST_DEVICE random_access_iterator& RAJA::detail::random_access_iterator< iterator_base >::operator++ ( )
inline

◆ operator++() [2/2]

template<typename iterator_base >
RAJA_HOST_DEVICE random_access_iterator RAJA::detail::random_access_iterator< iterator_base >::operator++ ( int  )
inline

◆ operator--() [1/2]

template<typename iterator_base >
RAJA_HOST_DEVICE random_access_iterator& RAJA::detail::random_access_iterator< iterator_base >::operator-- ( )
inline

◆ operator--() [2/2]

template<typename iterator_base >
RAJA_HOST_DEVICE random_access_iterator RAJA::detail::random_access_iterator< iterator_base >::operator-- ( int  )
inline

◆ operator+=()

template<typename iterator_base >
RAJA_HOST_DEVICE random_access_iterator& RAJA::detail::random_access_iterator< iterator_base >::operator+= ( difference_type  rhs)
inline

◆ operator-=()

template<typename iterator_base >
RAJA_HOST_DEVICE random_access_iterator& RAJA::detail::random_access_iterator< iterator_base >::operator-= ( difference_type  rhs)
inline

Friends And Related Function Documentation

◆ operator+ [1/2]

template<typename iterator_base >
RAJA_HOST_DEVICE friend random_access_iterator operator+ ( random_access_iterator< iterator_base > const &  lhs,
difference_type  rhs 
)
friend

◆ operator+ [2/2]

template<typename iterator_base >
RAJA_HOST_DEVICE friend random_access_iterator operator+ ( difference_type  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

◆ operator- [1/2]

template<typename iterator_base >
RAJA_HOST_DEVICE friend random_access_iterator operator- ( random_access_iterator< iterator_base > const &  lhs,
difference_type  rhs 
)
friend

◆ operator- [2/2]

template<typename iterator_base >
RAJA_HOST_DEVICE friend difference_type operator- ( random_access_iterator< iterator_base > const &  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

◆ operator==

template<typename iterator_base >
RAJA_HOST_DEVICE friend bool operator== ( random_access_iterator< iterator_base > const &  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

◆ operator!=

template<typename iterator_base >
RAJA_HOST_DEVICE friend bool operator!= ( random_access_iterator< iterator_base > const &  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

◆ operator<

template<typename iterator_base >
RAJA_HOST_DEVICE friend bool operator< ( random_access_iterator< iterator_base > const &  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

◆ operator<=

template<typename iterator_base >
RAJA_HOST_DEVICE friend bool operator<= ( random_access_iterator< iterator_base > const &  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

◆ operator>

template<typename iterator_base >
RAJA_HOST_DEVICE friend bool operator> ( random_access_iterator< iterator_base > const &  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

◆ operator>=

template<typename iterator_base >
RAJA_HOST_DEVICE friend bool operator>= ( random_access_iterator< iterator_base > const &  lhs,
random_access_iterator< iterator_base > const &  rhs 
)
friend

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