MorphoGraphX
|
Iterate over a container of structure, dereferencing only a member of it. More...
#include <MemberIterator.hpp>
Public Types | |
typedef BaseIterator< Iterator, SelectMemberIterator< Iterator, T, member, Reference, Pointer > > | Super |
Type of the base class. | |
typedef Iterator | base_iterator |
Type of the underlying iterator. | |
typedef std::iterator_traits < Iterator > ::iterator_category | iterator_category |
Category of the iterator. | |
typedef T | value_type |
Type of the value iterated on. | |
typedef std::iterator_traits < Iterator >::difference_type | difference_type |
Type of the difference between two iterators. | |
typedef Reference | reference |
Type of a reference on the values. | |
typedef Pointer | pointer |
Type of a pointer on the values. | |
![]() | |
typedef Iterator | base_iterator |
typedef std::iterator_traits < Iterator >::difference_type | difference_type |
Type of the difference between two iterators. | |
Public Member Functions | |
SelectMemberIterator () | |
Default constructor. | |
SelectMemberIterator (const base_iterator &i) | |
Conversion from the base iterator. | |
SelectMemberIterator (const SelectMemberIterator &other) | |
Copy constructor. | |
reference | operator* () |
Dereference operator. | |
const reference | operator* () const |
Constant dereference operator. | |
pointer | operator-> () |
Pointer-like arrow operator. | |
const pointer | operator-> () const |
Pointer-like constant arrow operator. | |
![]() | |
BaseIterator () | |
Default constructor. | |
BaseIterator (const base_iterator &i) | |
Conversion from the base iterator. | |
BaseIterator (const BaseIterator &other) | |
Copy constructor. | |
base_iterator | base () const |
Direct access to the base iterator. | |
bool | operator== (const SelectMemberIterator< Iterator, T, member, Reference, Pointer > &other) const |
bool | operator!= (const SelectMemberIterator< Iterator, T, member, Reference, Pointer > &other) const |
SelectMemberIterator< Iterator, T, member, Reference, Pointer > & | operator= (const SelectMemberIterator< Iterator, T, member, Reference, Pointer > ©) |
Assignment operator. | |
SelectMemberIterator< Iterator, T, member, Reference, Pointer > & | operator++ () |
Prefix increment operator. | |
SelectMemberIterator< Iterator, T, member, Reference, Pointer > & | operator++ (int) |
Postfix increment operator. | |
SelectMemberIterator< Iterator, T, member, Reference, Pointer > & | operator-- () |
Prefix decrement operator. | |
SelectMemberIterator< Iterator, T, member, Reference, Pointer > & | operator-- (int) |
Postfix decrement operator. | |
SelectMemberIterator< Iterator, T, member, Reference, Pointer > & | operator+= (difference_type n) |
In-place random increment operator. | |
SelectMemberIterator< Iterator, T, member, Reference, Pointer > & | operator-= (difference_type n) |
In-place random decrement operator. | |
bool | operator< (const SelectMemberIterator< Iterator, T, member, Reference, Pointer > &other) const |
bool | operator> (const SelectMemberIterator< Iterator, T, member, Reference, Pointer > &other) const |
bool | operator<= (const SelectMemberIterator< Iterator, T, member, Reference, Pointer > &other) const |
bool | operator>= (const SelectMemberIterator< Iterator, T, member, Reference, Pointer > &other) const |
Additional Inherited Members | |
![]() | |
base_iterator | it |
Underlying iterator. | |
Iterate over a container of structure, dereferencing only a member of it.
This iterator is used when iterating over a container of a complexe structure. It allows for dereferencing only a member of that structure. A typical example is iterating over a map but dereferencing either the key or the value: