Parma_Polyhedra_Library::Matrix::const_iterator Class Reference
[C++ Language Interface]

An iterator over a matrix. More...

#include <Matrix.defs.hh>

Collaboration diagram for Parma_Polyhedra_Library::Matrix::const_iterator:

Collaboration graph
[legend]

List of all members.

Public Types

typedef std::forward_iterator_tag iterator_category
typedef std::iterator_traits
< Iter >::value_type 
value_type
typedef std::iterator_traits
< Iter >::difference_type 
difference_type
typedef std::iterator_traits
< Iter >::pointer 
pointer
typedef std::iterator_traits
< Iter >::reference 
reference

Public Member Functions

 const_iterator ()
 Default constructor.
 const_iterator (const Iter &b)
 Builds a const iterator on the matrix starting from an iterator b on the elements of the vector rows.
 const_iterator (const const_iterator &y)
 Ordinary copy-constructor.
const_iteratoroperator= (const const_iterator &y)
 Assignment operator.
reference operator* () const
 Dereference operator.
pointer operator-> () const
 Indirect member selector.
const_iteratoroperator++ ()
 Prefix increment operator.
const_iterator operator++ (int)
 Postfix increment operator.
bool operator== (const const_iterator &y) const
 Returns true if and only if *this and y are identical.
bool operator!= (const const_iterator &y) const
 Returns true if and only if *this and y are different.

Private Types

typedef std::vector< Row >
::const_iterator 
Iter

Private Attributes

Iter i
 The const iterator on the rows' vector rows.


Detailed Description

An iterator over a matrix.

A const_iterator is used to provide read-only access to each row contained in a Matrix object.

Definition at line 90 of file Matrix.defs.hh.


Member Typedef Documentation

Definition at line 92 of file Matrix.defs.hh.

Definition at line 97 of file Matrix.defs.hh.

Definition at line 98 of file Matrix.defs.hh.

Definition at line 99 of file Matrix.defs.hh.

Definition at line 100 of file Matrix.defs.hh.

Definition at line 101 of file Matrix.defs.hh.


Constructor & Destructor Documentation

Parma_Polyhedra_Library::Matrix::const_iterator::const_iterator (  )  [inline]

Default constructor.

Definition at line 48 of file Matrix.inlines.hh.

Referenced by operator++().

00049   : i(Iter()) {
00050 }

Parma_Polyhedra_Library::Matrix::const_iterator::const_iterator ( const Iter b  )  [inline, explicit]

Builds a const iterator on the matrix starting from an iterator b on the elements of the vector rows.

Definition at line 53 of file Matrix.inlines.hh.

00054   : i(b) {
00055 }

Parma_Polyhedra_Library::Matrix::const_iterator::const_iterator ( const const_iterator y  )  [inline]

Ordinary copy-constructor.

Definition at line 58 of file Matrix.inlines.hh.

00059   : i(y.i) {
00060 }


Member Function Documentation

Matrix::const_iterator & Parma_Polyhedra_Library::Matrix::const_iterator::operator= ( const const_iterator y  )  [inline]

Assignment operator.

Definition at line 63 of file Matrix.inlines.hh.

References i.

00063                                                        {
00064   i = y.i;
00065   return *this;
00066 }

Matrix::const_iterator::reference Parma_Polyhedra_Library::Matrix::const_iterator::operator* (  )  const [inline]

Dereference operator.

Definition at line 69 of file Matrix.inlines.hh.

References i.

00069                                       {
00070   return *i;
00071 }

Matrix::const_iterator::pointer Parma_Polyhedra_Library::Matrix::const_iterator::operator-> (  )  const [inline]

Indirect member selector.

Definition at line 74 of file Matrix.inlines.hh.

References i.

00074                                        {
00075   return &*i;
00076 }

Matrix::const_iterator & Parma_Polyhedra_Library::Matrix::const_iterator::operator++ (  )  [inline]

Prefix increment operator.

Definition at line 79 of file Matrix.inlines.hh.

References i.

00079                                  {
00080   ++i;
00081   return *this;
00082 }

Matrix::const_iterator Parma_Polyhedra_Library::Matrix::const_iterator::operator++ ( int   )  [inline]

Postfix increment operator.

Definition at line 85 of file Matrix.inlines.hh.

References const_iterator(), and i.

00085                                     {
00086   return const_iterator(i++);
00087 }

bool Parma_Polyhedra_Library::Matrix::const_iterator::operator== ( const const_iterator y  )  const [inline]

Returns true if and only if *this and y are identical.

Definition at line 90 of file Matrix.inlines.hh.

References i.

Referenced by operator!=().

00090                                                               {
00091   return i == y.i;
00092 }

bool Parma_Polyhedra_Library::Matrix::const_iterator::operator!= ( const const_iterator y  )  const [inline]

Returns true if and only if *this and y are different.

Definition at line 95 of file Matrix.inlines.hh.

References operator==().

00095                                                               {
00096   return !operator==(y);
00097 }


Member Data Documentation


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

Generated on Sat Oct 11 10:41:05 2008 for PPL by  doxygen 1.5.6