PPL  1.0
Parma_Polyhedra_Library::Linear_Expression::const_iterator Class Reference

#include <ppl.hh>

List of all members.

Public Member Functions

 const_iterator ()
 Constructs an invalid const_iterator.
 const_iterator (const const_iterator &itr)
 The copy constructor.
void m_swap (const_iterator &itr)
 Swaps itr with *this.
const_iteratoroperator= (const const_iterator &itr)
 Assigns itr to *this .
const_iteratoroperator++ ()
 Navigates to the next nonzero coefficient.
const_iteratoroperator-- ()
 Navigates to the previous nonzero coefficient.
reference operator* () const
 Returns the current element.
Variable variable () const
 Returns the variable of the coefficient pointed to by *this.
bool operator== (const const_iterator &x) const
 Compares *this with x .
bool operator!= (const const_iterator &x) const
 Compares *this with x .

Related Functions

(Note that these are not member functions.)

void swap (Linear_Expression::const_iterator &x, Linear_Expression::const_iterator &y)
 Swaps x with y.
void swap (Linear_Expression::const_iterator &x, Linear_Expression::const_iterator &y)

Detailed Description

A const iterator on the expression (homogeneous) coefficient that are nonzero.

These iterators are invalidated by operations that modify the expression.


Constructor & Destructor Documentation

Parma_Polyhedra_Library::Linear_Expression::const_iterator::const_iterator ( )
inlineexplicit

Constructs an invalid const_iterator.

This constructor takes $O(1)$ time.

Parma_Polyhedra_Library::Linear_Expression::const_iterator::const_iterator ( const const_iterator itr)
inline

The copy constructor.

Parameters:
itrThe iterator that will be copied.

This constructor takes $O(1)$ time.


Member Function Documentation

void Parma_Polyhedra_Library::Linear_Expression::const_iterator::m_swap ( const_iterator itr)
inline

Swaps itr with *this.

Parameters:
itrThe iterator that will be swapped with *this.

This method takes $O(1)$ time.

Linear_Expression::const_iterator & Parma_Polyhedra_Library::Linear_Expression::const_iterator::operator= ( const const_iterator itr)
inline

Assigns itr to *this .

Parameters:
itrThe iterator that will be assigned into *this.

This method takes $O(1)$ time.

Linear_Expression::const_iterator & Parma_Polyhedra_Library::Linear_Expression::const_iterator::operator++ ( )
inline

Navigates to the next nonzero coefficient.

This method takes $O(n)$ time for dense expressions, and $O(1)$ time for sparse expressions.

Linear_Expression::const_iterator & Parma_Polyhedra_Library::Linear_Expression::const_iterator::operator-- ( )
inline

Navigates to the previous nonzero coefficient.

This method takes $O(n)$ time for dense expressions, and $O(1)$ time for sparse expressions.

Variable Parma_Polyhedra_Library::Linear_Expression::const_iterator::variable ( ) const
inline

Returns the variable of the coefficient pointed to by *this.

Returns:
the variable of the coefficient pointed to by *this.
bool Parma_Polyhedra_Library::Linear_Expression::const_iterator::operator== ( const const_iterator x) const
inline

Compares *this with x .

Parameters:
xThe iterator that will be compared with *this.
bool Parma_Polyhedra_Library::Linear_Expression::const_iterator::operator!= ( const const_iterator x) const
inline

Compares *this with x .

Parameters:
xThe iterator that will be compared with *this.

Friends And Related Function Documentation

Swaps x with y.


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