An iterator over a system of congruences. More...
#include <Congruence_System.defs.hh>

Public Member Functions | |
| const_iterator () | |
| Default constructor. | |
| const_iterator (const const_iterator &y) | |
| Ordinary copy constructor. | |
| ~const_iterator () | |
| Destructor. | |
| const_iterator & | operator= (const const_iterator &y) |
| Assignment operator. | |
| const Congruence & | operator* () const |
| Dereference operator. | |
| const Congruence * | operator-> () const |
| Indirect member selector. | |
| const_iterator & | operator++ () |
| 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 Member Functions | |
| const_iterator (const Matrix::const_iterator &iter, const Congruence_System &cgs) | |
| Constructor. | |
| void | skip_forward () |
*this skips to the next non-trivial congruence. | |
Private Attributes | |
| Matrix::const_iterator | i |
| The const iterator over the matrix of congruences. | |
| const Matrix * | csp |
| A const pointer to the matrix of congruences. | |
Friends | |
| class | Congruence_System |
An iterator over a system of congruences.
A const_iterator is used to provide read-only access to each congruence contained in an object of Congruence_System.
gr: const Congruence_System& cgs = gr.congruences(); for (Congruence_System::const_iterator i = cgs.begin(), cgs_end = cgs.end(); i != cgs_end; ++i) cout << *i << endl;
Definition at line 235 of file Congruence_System.defs.hh.
| Parma_Polyhedra_Library::Congruence_System::const_iterator::const_iterator | ( | ) | [inline] |
Default constructor.
Definition at line 114 of file Congruence_System.inlines.hh.
| Parma_Polyhedra_Library::Congruence_System::const_iterator::const_iterator | ( | const const_iterator & | y | ) | [inline] |
Ordinary copy constructor.
Definition at line 119 of file Congruence_System.inlines.hh.
| Parma_Polyhedra_Library::Congruence_System::const_iterator::~const_iterator | ( | ) | [inline] |
| Parma_Polyhedra_Library::Congruence_System::const_iterator::const_iterator | ( | const Matrix::const_iterator & | iter, | |
| const Congruence_System & | cgs | |||
| ) | [inline, private] |
Constructor.
Definition at line 170 of file Congruence_System.inlines.hh.
| bool Parma_Polyhedra_Library::Congruence_System::const_iterator::operator!= | ( | const const_iterator & | y | ) | const [inline] |
Returns true if and only if *this and y are different.
Definition at line 164 of file Congruence_System.inlines.hh.
References Parma_Polyhedra_Library::Matrix::const_iterator::i, and i.
00164 { 00165 return i != y.i; 00166 }
| const Congruence & Parma_Polyhedra_Library::Congruence_System::const_iterator::operator* | ( | ) | const [inline] |
Dereference operator.
Definition at line 135 of file Congruence_System.inlines.hh.
| Congruence_System::const_iterator Parma_Polyhedra_Library::Congruence_System::const_iterator::operator++ | ( | int | ) | [inline] |
Postfix increment operator.
Definition at line 152 of file Congruence_System.inlines.hh.
References operator++().
00152 { 00153 const const_iterator tmp = *this; 00154 operator++(); 00155 return tmp; 00156 }
| Congruence_System::const_iterator & Parma_Polyhedra_Library::Congruence_System::const_iterator::operator++ | ( | ) | [inline] |
Prefix increment operator.
Definition at line 145 of file Congruence_System.inlines.hh.
References i, and skip_forward().
Referenced by operator++().
00145 { 00146 ++i; 00147 skip_forward(); 00148 return *this; 00149 }
| const Congruence * Parma_Polyhedra_Library::Congruence_System::const_iterator::operator-> | ( | ) | const [inline] |
Indirect member selector.
Definition at line 140 of file Congruence_System.inlines.hh.
References i.
00140 { 00141 return static_cast<const Congruence*>(i.operator->()); 00142 }
| Congruence_System::const_iterator & Parma_Polyhedra_Library::Congruence_System::const_iterator::operator= | ( | const const_iterator & | y | ) | [inline] |
Assignment operator.
Definition at line 128 of file Congruence_System.inlines.hh.
References csp, Parma_Polyhedra_Library::Matrix::const_iterator::i, and i.
| bool Parma_Polyhedra_Library::Congruence_System::const_iterator::operator== | ( | const const_iterator & | y | ) | const [inline] |
Returns true if and only if *this and y are identical.
Definition at line 159 of file Congruence_System.inlines.hh.
References Parma_Polyhedra_Library::Matrix::const_iterator::i, and i.
00159 { 00160 return i == y.i; 00161 }
| void Parma_Polyhedra_Library::Congruence_System::const_iterator::skip_forward | ( | ) | [private] |
*this skips to the next non-trivial congruence.
Definition at line 248 of file Congruence_System.cc.
References csp, Parma_Polyhedra_Library::Matrix::end(), and i.
Referenced by operator++().
friend class Congruence_System [friend] |
Definition at line 279 of file Congruence_System.defs.hh.
const Matrix* Parma_Polyhedra_Library::Congruence_System::const_iterator::csp [private] |
A const pointer to the matrix of congruences.
Definition at line 285 of file Congruence_System.defs.hh.
Referenced by operator=(), and skip_forward().
The const iterator over the matrix of congruences.
Definition at line 282 of file Congruence_System.defs.hh.
Referenced by operator!=(), operator++(), operator->(), operator=(), operator==(), and skip_forward().
1.6.3