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 402 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::difference_type = typename ReverseIterator::difference_type |
Definition at line 419 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::iterator_category = typename ReverseIterator::iterator_category |
Definition at line 415 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::iterator_type = typename ReverseIterator::iterator_type |
Definition at line 414 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::pointer = typename ReverseIterator::pointer |
Definition at line 418 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::reference = typename ReverseIterator::reference |
Definition at line 417 of file iterator.h.
using Tf_ProxyReferenceReverseIterator< UnderlyingIterator >::value_type = typename ReverseIterator::value_type |
Definition at line 416 of file iterator.h.
|
default |
|
inlineexplicit |
Definition at line 432 of file iterator.h.
|
inline |
Definition at line 470 of file iterator.h.
|
inline |
Definition at line 448 of file iterator.h.
|
inline |
Definition at line 453 of file iterator.h.
|
inline |
Definition at line 484 of file iterator.h.
|
inline |
Definition at line 474 of file iterator.h.
|
inline |
Definition at line 479 of file iterator.h.
|
inline |
Definition at line 459 of file iterator.h.
|
inline |
Definition at line 464 of file iterator.h.
|
inline |
Definition at line 489 of file iterator.h.
|
inline |
Customize operator-> to support proxied reference types Compatible with the C++20 specification.
Definition at line 444 of file iterator.h.
|
friend |
Definition at line 509 of file iterator.h.
|
friend |
Definition at line 495 of file iterator.h.
|
friend |
Definition at line 515 of file iterator.h.
|
friend |
Definition at line 527 of file iterator.h.
|
friend |
Definition at line 503 of file iterator.h.
|
friend |
Definition at line 521 of file iterator.h.
|
friend |
Definition at line 533 of file iterator.h.