Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator Class Reference
[C++ Language Interface]

A read-only iterator over the rows of the matrix. More...

#include <DB_Matrix.defs.hh>

Collaboration diagram for Parma_Polyhedra_Library::DB_Matrix< T >::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< DB_Row< T >
>::const_iterator 
Iter

Private Attributes

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


Detailed Description

template<typename T>
class Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator

A read-only iterator over the rows of the matrix.

Definition at line 95 of file DB_Matrix.defs.hh.


Member Typedef Documentation

template<typename T>
typedef std::vector<DB_Row<T> >::const_iterator Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::Iter [private]

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

template<typename T>
typedef std::forward_iterator_tag Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::iterator_category

Definition at line 102 of file DB_Matrix.defs.hh.

template<typename T>
typedef std::iterator_traits<Iter>::value_type Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::value_type

Definition at line 103 of file DB_Matrix.defs.hh.

template<typename T>
typedef std::iterator_traits<Iter>::difference_type Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::difference_type

Definition at line 105 of file DB_Matrix.defs.hh.

template<typename T>
typedef std::iterator_traits<Iter>::pointer Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::pointer

Definition at line 106 of file DB_Matrix.defs.hh.

template<typename T>
typedef std::iterator_traits<Iter>::reference Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::reference

Definition at line 107 of file DB_Matrix.defs.hh.


Constructor & Destructor Documentation

template<typename T>
Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::const_iterator (  )  [inline]

Default constructor.

Definition at line 62 of file DB_Matrix.inlines.hh.

Referenced by Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator++().

00063   : i(Iter()) {
00064 }

template<typename T>
Parma_Polyhedra_Library::DB_Matrix< T >::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 68 of file DB_Matrix.inlines.hh.

00069   : i(b) {
00070 }

template<typename T>
Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::const_iterator ( const const_iterator y  )  [inline]

Ordinary copy-constructor.

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

00075   : i(y.i) {
00076 }


Member Function Documentation

template<typename T>
DB_Matrix< T >::const_iterator & Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator= ( const const_iterator y  )  [inline]

Assignment operator.

Definition at line 80 of file DB_Matrix.inlines.hh.

References Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::i.

00080                                                              {
00081   i = y.i;
00082   return *this;
00083 }

template<typename T>
DB_Matrix< T >::const_iterator::reference Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator* (  )  const [inline]

Dereference operator.

Definition at line 87 of file DB_Matrix.inlines.hh.

References Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::i.

00087                                             {
00088   return *i;
00089 }

template<typename T>
DB_Matrix< T >::const_iterator::pointer Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator-> (  )  const [inline]

Indirect member selector.

Definition at line 93 of file DB_Matrix.inlines.hh.

References Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::i.

00093                                              {
00094   return &*i;
00095 }

template<typename T>
DB_Matrix< T >::const_iterator & Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator++ (  )  [inline]

Prefix increment operator.

Definition at line 99 of file DB_Matrix.inlines.hh.

References Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::i.

00099                                        {
00100   ++i;
00101   return *this;
00102 }

template<typename T>
DB_Matrix< T >::const_iterator Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator++ ( int   )  [inline]

Postfix increment operator.

Definition at line 106 of file DB_Matrix.inlines.hh.

References Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::const_iterator(), and Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::i.

00106                                           {
00107   return const_iterator(i++);
00108 }

template<typename T>
bool Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator== ( const const_iterator y  )  const [inline]

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

Definition at line 112 of file DB_Matrix.inlines.hh.

References Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::i.

Referenced by Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator!=().

00112                                                                     {
00113   return i == y.i;
00114 }

template<typename T>
bool Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator!= ( const const_iterator y  )  const [inline]

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

Definition at line 118 of file DB_Matrix.inlines.hh.

References Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::operator==().

00118                                                                     {
00119   return !operator==(y);
00120 }


Member Data Documentation

template<typename T>
Iter Parma_Polyhedra_Library::DB_Matrix< T >::const_iterator::i [private]


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

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