Regina Calculation Engine
Public Member Functions | Friends | List of all members
regina::NNormalSurfaceList::VectorIterator Class Reference

A bidirectional iterator that runs through the raw vectors for surfaces in this list. More...

#include <surfaces/nnormalsurfacelist.h>

Inheritance diagram for regina::NNormalSurfaceList::VectorIterator:

Public Member Functions

 VectorIterator ()
 Creates a new uninitialised iterator. More...
 
 VectorIterator (const VectorIterator &cloneMe)
 Creates a copy of the given iterator. More...
 
VectorIteratoroperator= (const VectorIterator &cloneMe)
 Makes this a copy of the given iterator. More...
 
bool operator== (const VectorIterator &other) const
 Compares this with the given operator for equality. More...
 
bool operator!= (const VectorIterator &other) const
 Compares this with the given operator for inequality. More...
 
const NNormalSurfaceVectoroperator* () const
 Returns the raw vector for the normal surface that this iterator is currently pointing to. More...
 
VectorIteratoroperator++ ()
 The preincrement operator. More...
 
VectorIterator operator++ (int)
 The postincrement operator. More...
 
VectorIteratoroperator-- ()
 The predecrement operator. More...
 
VectorIterator operator-- (int)
 The postdecrement operator. More...
 

Friends

class NNormalSurfaceList
 

Detailed Description

A bidirectional iterator that runs through the raw vectors for surfaces in this list.

Python:
Not present.

Constructor & Destructor Documentation

regina::NNormalSurfaceList::VectorIterator::VectorIterator ( )
inline

Creates a new uninitialised iterator.

regina::NNormalSurfaceList::VectorIterator::VectorIterator ( const VectorIterator cloneMe)
inline

Creates a copy of the given iterator.

Parameters
cloneMethe iterator to clone.

Member Function Documentation

bool regina::NNormalSurfaceList::VectorIterator::operator!= ( const VectorIterator other) const
inline

Compares this with the given operator for inequality.

Parameters
otherthe iterator to compare this with.
Returns
false if the iterators point to the same element of the same normal surface list, or true if they do not.
const NNormalSurfaceVector * regina::NNormalSurfaceList::VectorIterator::operator* ( ) const
inline

Returns the raw vector for the normal surface that this iterator is currently pointing to.

Precondition
This iterator is dereferenceable (in particular, it is not past-the-end).
Returns
the corresponding normal surface vector.
NNormalSurfaceList::VectorIterator & regina::NNormalSurfaceList::VectorIterator::operator++ ( )
inline

The preincrement operator.

Returns
a reference to this iterator after the increment.
NNormalSurfaceList::VectorIterator regina::NNormalSurfaceList::VectorIterator::operator++ ( int  )
inline

The postincrement operator.

Returns
a copy of this iterator before the increment took place.
NNormalSurfaceList::VectorIterator & regina::NNormalSurfaceList::VectorIterator::operator-- ( )
inline

The predecrement operator.

Returns
a reference to this iterator after the decrement.
NNormalSurfaceList::VectorIterator regina::NNormalSurfaceList::VectorIterator::operator-- ( int  )
inline

The postdecrement operator.

Returns
a copy of this iterator before the decrement took place.
NNormalSurfaceList::VectorIterator & regina::NNormalSurfaceList::VectorIterator::operator= ( const VectorIterator cloneMe)
inline

Makes this a copy of the given iterator.

Parameters
cloneMethe iterator to clone.
Returns
a reference to this iterator.
bool regina::NNormalSurfaceList::VectorIterator::operator== ( const VectorIterator other) const
inline

Compares this with the given operator for equality.

Parameters
otherthe iterator to compare this with.
Returns
true if the iterators point to the same element of the same normal surface list, or false if they do not.

The documentation for this class was generated from the following file:

Copyright © 1999-2013, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).