Iterator for the class ProxyVector. More...
#include <proxyVector.hpp>
Public Types | |
typedef std::ptrdiff_t | difference_type |
typedef std::bidirectional_iterator_tag | iterator_category |
typedef __PXI_POINTER_TYPE__ | pointer |
typedef __PXI_REFERENCE_TYPE__ | reference |
typedef value_t | value_type |
Public Member Functions | |
ProxyVectorIterator () | |
template<typename other_value_t , typename std::enable_if< std::is_const< value_t >::value &&!std::is_const< other_value_t >::value &&std::is_same< other_value_t, typename std::remove_cv< value_t >::type >::value, int >::type = 0> | |
ProxyVectorIterator (const ProxyVectorIterator< other_value_t, container_t > &other) | |
bool | operator!= (const ProxyVectorIterator &other) const |
__PXI_REFERENCE__ | operator* () const |
ProxyVectorIterator & | operator++ () |
ProxyVectorIterator | operator++ (int) |
ProxyVectorIterator & | operator+= (int increment) |
std::size_t | operator- (const ProxyVectorIterator &other) |
ProxyVectorIterator & | operator-- () |
ProxyVectorIterator | operator-- (int) |
__PXI_POINTER__ | operator-> () const |
template<typename other_value_t , typename std::enable_if< std::is_const< value_t >::value &&!std::is_const< other_value_t >::value &&std::is_same< other_value_t, typename std::remove_cv< value_t >::type >::value, int >::type = 0> | |
ProxyVectorIterator & | operator= (const ProxyVectorIterator< other_value_t, container_t > &other) |
template<typename other_value_t , typename std::enable_if< std::is_const< value_t >::value &&!std::is_const< other_value_t >::value &&std::is_same< other_value_t, typename std::remove_cv< value_t >::type >::value, int >::type > | |
ProxyVectorIterator< value_t, container_t > & | operator= (const ProxyVectorIterator< other_value_t, container_t > &other) |
bool | operator== (const ProxyVectorIterator &other) const |
void | swap (ProxyVectorIterator &other) noexcept |
Friends | |
template<typename PXV_value_t , bool PXV_thread_safe> | |
class | ProxyVector |
class | ProxyVectorIterator< typename std::add_const< value_t >::type, container_t > |
Iterator for the class ProxyVector.
value_t | is the type of the objects handled by the ProxyVector |
container_t | defines the type of container where the data is stored |
Definition at line 69 of file proxyVector.hpp.
typedef std::ptrdiff_t bitpit::ProxyVectorIterator< value_t, container_t >::difference_type |
Difference type
Definition at line 92 of file proxyVector.hpp.
typedef std::bidirectional_iterator_tag bitpit::ProxyVectorIterator< value_t, container_t >::iterator_category |
Iterator category
Definition at line 82 of file proxyVector.hpp.
typedef __PXI_POINTER_TYPE__ bitpit::ProxyVectorIterator< value_t, container_t >::pointer |
Pointer type
Definition at line 97 of file proxyVector.hpp.
typedef __PXI_REFERENCE_TYPE__ bitpit::ProxyVectorIterator< value_t, container_t >::reference |
Reference type
Definition at line 102 of file proxyVector.hpp.
typedef value_t bitpit::ProxyVectorIterator< value_t, container_t >::value_type |
Value type
Definition at line 87 of file proxyVector.hpp.
bitpit::ProxyVectorIterator< value_t, container_t >::ProxyVectorIterator | ( | ) |
Constructor
Definition at line 34 of file proxyVector.tpp.
bitpit::ProxyVectorIterator< value_t, container_t >::ProxyVectorIterator | ( | const ProxyVectorIterator< other_value_t, container_t > & | other | ) |
Constructor
This constructor allows to generate a constant iterator from a non constnat iterator.
other | is the iterator that will be copied |
Definition at line 49 of file proxyVector.tpp.
|
inline |
Two-way comparison.
Definition at line 141 of file proxyVector.hpp.
__PXI_REFERENCE__ bitpit::ProxyVectorIterator< value_t, container_t >::operator* | ( | ) | const |
Deference operator.
Definition at line 133 of file proxyVector.tpp.
ProxyVectorIterator< value_t, container_t > & bitpit::ProxyVectorIterator< value_t, container_t >::operator++ | ( | ) |
Pre-increment operator.
Definition at line 70 of file proxyVector.tpp.
ProxyVectorIterator< value_t, container_t > bitpit::ProxyVectorIterator< value_t, container_t >::operator++ | ( | int | ) |
Post-increment operator.
Definition at line 81 of file proxyVector.tpp.
ProxyVectorIterator< value_t, container_t > & bitpit::ProxyVectorIterator< value_t, container_t >::operator+= | ( | int | increment | ) |
Compound assigment operator.
increment | is the increment |
Definition at line 120 of file proxyVector.tpp.
std::size_t bitpit::ProxyVectorIterator< value_t, container_t >::operator- | ( | const ProxyVectorIterator< value_t, container_t > & | other | ) |
Distance operator.
other | is the iterator from which the distance will be evaluated |
Definition at line 181 of file proxyVector.tpp.
ProxyVectorIterator< value_t, container_t > & bitpit::ProxyVectorIterator< value_t, container_t >::operator-- | ( | ) |
Pre-decrement operator.
Definition at line 94 of file proxyVector.tpp.
ProxyVectorIterator< value_t, container_t > bitpit::ProxyVectorIterator< value_t, container_t >::operator-- | ( | int | ) |
Post-decrement operator.
Definition at line 105 of file proxyVector.tpp.
__PXI_POINTER__ bitpit::ProxyVectorIterator< value_t, container_t >::operator-> | ( | ) | const |
Deference operator.
Definition at line 144 of file proxyVector.tpp.
ProxyVectorIterator< value_t, container_t > & bitpit::ProxyVectorIterator< value_t, container_t >::operator= | ( | const ProxyVectorIterator< other_value_t, container_t > & | other | ) |
Copy assignment operator to create a constant iterator from a non-constant one.
other | is the iterator that will be copied |
Definition at line 157 of file proxyVector.tpp.
|
inline |
Two-way comparison.
Definition at line 133 of file proxyVector.hpp.
|
noexcept |
Exchanges the values of the current iterator and the iterator recevied as argument.
other | is the iterator to exchange values with |
Definition at line 61 of file proxyVector.tpp.
|
friend |
Definition at line 74 of file proxyVector.hpp.
|
friend |
Definition at line 74 of file proxyVector.hpp.