HDK
|
#include <iterator.h>
Public Types | |
using | iterator_type = typename ReverseIterator::iterator_type |
using | iterator_category = typename ReverseIterator::iterator_category |
using | value_type = typename ReverseIterator::value_type |
using | reference = typename ReverseIterator::reference |
using | pointer = typename ReverseIterator::pointer |
using | difference_type = typename ReverseIterator::difference_type |
Public Member Functions | |
Tf_ProxyReferenceReverseIterator ()=default | |
Tf_ProxyReferenceReverseIterator (UnderlyingIterator it) | |
pointer | operator-> () const |
Tf_ProxyReferenceReverseIterator & | operator++ () |
Tf_ProxyReferenceReverseIterator | operator++ (int) |
Tf_ProxyReferenceReverseIterator & | operator-- () |
Tf_ProxyReferenceReverseIterator | operator-- (int) |
Tf_ProxyReferenceReverseIterator | operator+ (difference_type increment) const |
Tf_ProxyReferenceReverseIterator | operator- (difference_type decrement) const |
template<typename OtherIt > | |
difference_type | operator- (const Tf_ProxyReferenceReverseIterator< OtherIt > &other) const |
Tf_ProxyReferenceReverseIterator & | operator+= (difference_type increment) |
Tf_ProxyReferenceReverseIterator & | operator-= (difference_type decrement) |
A reverse iterator adapter for std::reverse_iterator
that provides an operator->
compatible with proxy reference types. This should only be used when the underlying iterator's reference is a value type and should become unnecessary in newer compilers and C++20. This implementation was written for use with random access iterators but could be extended to bidirectional iterators if necessary.
Definition at line 419 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::difference_type = typename ReverseIterator::difference_type |
Definition at line 436 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::iterator_category = typename ReverseIterator::iterator_category |
Definition at line 432 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::iterator_type = typename ReverseIterator::iterator_type |
Definition at line 431 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::pointer = typename ReverseIterator::pointer |
Definition at line 435 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::reference = typename ReverseIterator::reference |
Definition at line 434 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::value_type = typename ReverseIterator::value_type |
Definition at line 433 of file iterator.h.
|
default |
|
inlineexplicit |
Definition at line 449 of file iterator.h.
|
inline |
Definition at line 487 of file iterator.h.
|
inline |
Definition at line 465 of file iterator.h.
|
inline |
Definition at line 470 of file iterator.h.
|
inline |
Definition at line 501 of file iterator.h.
|
inline |
Definition at line 491 of file iterator.h.
|
inline |
Definition at line 496 of file iterator.h.
|
inline |
Definition at line 476 of file iterator.h.
|
inline |
Definition at line 481 of file iterator.h.
|
inline |
Definition at line 506 of file iterator.h.
|
inline |
Customize operator-> to support proxied reference types Compatible with the C++20 specification.
Definition at line 461 of file iterator.h.
|
friend |
Definition at line 526 of file iterator.h.
|
friend |
Definition at line 512 of file iterator.h.
|
friend |
Definition at line 532 of file iterator.h.
|
friend |
Definition at line 544 of file iterator.h.
|
friend |
Definition at line 520 of file iterator.h.
|
friend |
Definition at line 538 of file iterator.h.
|
friend |
Definition at line 550 of file iterator.h.