rocPRIM
|
A random-access input (read-only) iterator which generates a sequence of homogeneous values. More...
#include <constant_iterator.hpp>
Public Types | |
using | value_type = typename std::remove_const< ValueType >::type |
The type of the value that can be obtained by dereferencing the iterator. | |
using | reference = value_type |
A reference type of the type iterated over (value_type ). More... | |
using | pointer = const value_type * |
A pointer type of the type iterated over (value_type ). More... | |
using | difference_type = Difference |
A type used for identify distance between iterators. | |
using | iterator_category = std::random_access_iterator_tag |
The category of the iterator. | |
using | self_type = constant_iterator |
Public Member Functions | |
ROCPRIM_HOST_DEVICE | constant_iterator (const value_type value, const size_t index=0) |
Creates constant_iterator and sets its initial value to value . More... | |
ROCPRIM_HOST_DEVICE value_type | operator* () const |
ROCPRIM_HOST_DEVICE pointer | operator-> () const |
ROCPRIM_HOST_DEVICE constant_iterator & | operator++ () |
ROCPRIM_HOST_DEVICE constant_iterator | operator++ (int) |
ROCPRIM_HOST_DEVICE constant_iterator & | operator-- () |
ROCPRIM_HOST_DEVICE constant_iterator | operator-- (int) |
ROCPRIM_HOST_DEVICE constant_iterator | operator+ (difference_type distance) const |
ROCPRIM_HOST_DEVICE constant_iterator & | operator+= (difference_type distance) |
ROCPRIM_HOST_DEVICE constant_iterator | operator- (difference_type distance) const |
ROCPRIM_HOST_DEVICE constant_iterator & | operator-= (difference_type distance) |
ROCPRIM_HOST_DEVICE difference_type | operator- (constant_iterator other) const |
ROCPRIM_HOST_DEVICE value_type | operator[] (difference_type) const |
Constant_iterator is not writable, so we don't return reference, just something convertible to reference. More... | |
ROCPRIM_HOST_DEVICE bool | operator== (constant_iterator other) const |
ROCPRIM_HOST_DEVICE bool | operator!= (constant_iterator other) const |
ROCPRIM_HOST_DEVICE bool | operator< (constant_iterator other) const |
ROCPRIM_HOST_DEVICE bool | operator<= (constant_iterator other) const |
ROCPRIM_HOST_DEVICE bool | operator> (constant_iterator other) const |
ROCPRIM_HOST_DEVICE bool | operator>= (constant_iterator other) const |
Friends | |
std::ostream & | operator<< (std::ostream &os, const constant_iterator &iter) |
A random-access input (read-only) iterator which generates a sequence of homogeneous values.
ValueType | - type of value that can be obtained by dereferencing the iterator. |
Difference | - a type used for identify distance between iterators |
using constant_iterator< ValueType, Difference >::pointer = const value_type* |
A pointer type of the type iterated over (value_type
).
It's const
since constant_iterator is a read-only iterator.
using constant_iterator< ValueType, Difference >::reference = value_type |
A reference type of the type iterated over (value_type
).
It's same as value_type
since constant_iterator is a read-only iterator and does not have underlying buffer.
|
inlineexplicit |
Creates constant_iterator and sets its initial value to value
.
value | initial value |
index | optional index for constant_iterator |
|
inline |
Constant_iterator is not writable, so we don't return reference, just something convertible to reference.
That matches requirement of RandomAccessIterator concept