|
Regina Calculation Engine
|
Iterates through all crossings of a link. More...
#include <link/link.h>
Public Member Functions | |
| CrossingIterator () | |
| Creates a singular iterator. More... | |
| CrossingIterator (const CrossingIterator &)=default | |
| Default copy constructor. More... | |
| CrossingIterator (const Link &link, size_t index=0) | |
| Creates a new iterator pointing to the given crossing of the given link. More... | |
| CrossingIterator & | operator++ () |
| Preincrement operator. More... | |
| CrossingIterator | operator++ (int) |
| Postincrement operator. More... | |
| Crossing * | operator* () const |
| Returns the crossing to which this iterator points. More... | |
| CrossingIterator & | operator= (const CrossingIterator &)=default |
| Default assignment operator. More... | |
| bool | operator== (const CrossingIterator &rhs) const |
| Tests whether this and the given iterator are equal. More... | |
| bool | operator!= (const CrossingIterator &rhs) const |
| Tests whether this and the given iterator are different. More... | |
Iterates through all crossings of a link.
The order of iteration follows the indexing of the crossings from 0 to Link::size()-1.
This class implements the Boost multipass input iterator concept, which is similar to the standard C++ forward iterator except that the reference type may be the same as value_type (and so, in particular, the dereference operator may return by value). This header also specialises std::iterator_traits for this iterator type.