Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator Class Reference
[C++ Language Interface]

A const_iterator on the disjuncts of a Powerset element. More...

#include <Powerset.defs.hh>

List of all members.

Public Types

typedef Traits::iterator_category iterator_category
typedef Traits::value_type value_type
typedef Traits::difference_type difference_type
typedef Traits::pointer pointer
typedef Traits::reference reference

Public Member Functions

 omega_const_iterator ()
 Default constructor.
 omega_const_iterator (const omega_const_iterator &y)
 Copy constructor.
 omega_const_iterator (const omega_iterator &y)
 Constructs from the corresponding non-const iterator.
reference operator* () const
 Dereference operator.
pointer operator-> () const
 Indirect member selector.
omega_const_iteratoroperator++ ()
 Prefix increment operator.
omega_const_iterator operator++ (int)
 Postfix increment operator.
omega_const_iteratoroperator-- ()
 Prefix decrement operator.
omega_const_iterator operator-- (int)
 Postfix decrement operator.
bool operator== (const omega_const_iterator &y) const
 Returns true if and only if *this and y are identical.
bool operator!= (const omega_const_iterator &y) const
 Returns true if and only if *this and y are different.

Protected Types

typedef
Powerset::Sequence::const_iterator 
Base
 The type of the underlying const_iterator.
typedef std::iterator_traits
< Base
Traits
 A shortcut for naming traits.

Protected Member Functions

 omega_const_iterator (const Base &b)
 Constructs from the lower-level const_iterator.

Protected Attributes

Base base
 A const_iterator on the sequence of elements.

Friends

class Powerset

Related Functions

(Note that these are not member functions.)

template<typename D>
bool operator== (const typename Powerset< D >::omega_iterator &x, const typename Powerset< D >::omega_const_iterator &y)
 Mixed comparison operator: returns true if and only if (the const version of) x is identical to y.
template<typename D>
bool operator!= (const typename Powerset< D >::omega_iterator &x, const typename Powerset< D >::omega_const_iterator &y)
 Mixed comparison operator: returns true if and only if (the const version of) x is different from y.


Detailed Description

template<typename D>
class Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator

A const_iterator on the disjuncts of a Powerset element.

This class implements a read-only bidirectional iterator on the sequence of disjuncts.

Definition at line 428 of file Powerset.defs.hh.


Member Typedef Documentation

template<typename D>
typedef Powerset::Sequence::const_iterator Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::Base [protected]

The type of the underlying const_iterator.

Definition at line 431 of file Powerset.defs.hh.

template<typename D>
typedef std::iterator_traits<Base> Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::Traits [protected]

A shortcut for naming traits.

Definition at line 434 of file Powerset.defs.hh.

template<typename D>
typedef Traits::iterator_category Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::iterator_category

Definition at line 446 of file Powerset.defs.hh.

template<typename D>
typedef Traits::value_type Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::value_type

Definition at line 447 of file Powerset.defs.hh.

template<typename D>
typedef Traits::difference_type Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::difference_type

Definition at line 448 of file Powerset.defs.hh.

template<typename D>
typedef Traits::pointer Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::pointer

Definition at line 449 of file Powerset.defs.hh.

template<typename D>
typedef Traits::reference Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::reference

Definition at line 450 of file Powerset.defs.hh.


Constructor & Destructor Documentation

template<typename D>
Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::omega_const_iterator ( const Base b  )  [inline, protected]

Constructs from the lower-level const_iterator.

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

00119   : base(b) {
00120 }

template<typename D>
Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::omega_const_iterator (  )  [inline]

Default constructor.

Definition at line 105 of file Powerset.inlines.hh.

00106   : base() {
00107 }

template<typename D>
Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::omega_const_iterator ( const omega_const_iterator y  )  [inline]

Copy constructor.

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

00113   : base(y.base) {
00114 }

template<typename D>
Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::omega_const_iterator ( const omega_iterator y  )  [inline]

Constructs from the corresponding non-const iterator.

Definition at line 181 of file Powerset.inlines.hh.

00182   : base(y.base) {
00183 }


Member Function Documentation

template<typename D>
Powerset< D >::omega_const_iterator::reference Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator* (  )  const [inline]

Dereference operator.

Definition at line 124 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::base.

00124                                                  {
00125   return *base;
00126 }

template<typename D>
Powerset< D >::omega_const_iterator::pointer Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator-> (  )  const [inline]

Indirect member selector.

Definition at line 130 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::base.

00130                                                   {
00131   return &*base;
00132 }

template<typename D>
Powerset< D >::omega_const_iterator & Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator++ (  )  [inline]

Prefix increment operator.

Definition at line 136 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::base.

Referenced by Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator++().

00136                                             {
00137   ++base;
00138   return *this;
00139 }

template<typename D>
Powerset< D >::omega_const_iterator Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator++ ( int   )  [inline]

Postfix increment operator.

Definition at line 143 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator++().

00143                                                {
00144   omega_const_iterator tmp = *this;
00145   operator++();
00146   return tmp;
00147 }

template<typename D>
Powerset< D >::omega_const_iterator & Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator-- (  )  [inline]

Prefix decrement operator.

Definition at line 151 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::base.

Referenced by Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator--().

00151                                             {
00152   --base;
00153   return *this;
00154 }

template<typename D>
Powerset< D >::omega_const_iterator Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator-- ( int   )  [inline]

Postfix decrement operator.

Definition at line 158 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator--().

00158                                                {
00159   omega_const_iterator tmp = *this;
00160   operator--();
00161   return tmp;
00162 }

template<typename D>
bool Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator== ( const omega_const_iterator y  )  const [inline]

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

Definition at line 167 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::base.

Referenced by Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator!=().

00167                                                                     {
00168   return base == y.base;
00169 }

template<typename D>
bool Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator!= ( const omega_const_iterator y  )  const [inline]

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

Definition at line 174 of file Powerset.inlines.hh.

References Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::operator==().

00174                                                                     {
00175   return !operator==(y);
00176 }


Friends And Related Function Documentation

template<typename D>
friend class Powerset [friend]

Definition at line 442 of file Powerset.defs.hh.

template<typename D>
bool operator== ( const typename Powerset< D >::omega_iterator x,
const typename Powerset< D >::omega_const_iterator y 
) [related]

Mixed comparison operator: returns true if and only if (the const version of) x is identical to y.

Definition at line 188 of file Powerset.inlines.hh.

00189                                                               {
00190   return Powerset<D>::omega_const_iterator(x).operator==(y);
00191 }

template<typename D>
bool operator!= ( const typename Powerset< D >::omega_iterator x,
const typename Powerset< D >::omega_const_iterator y 
) [related]

Mixed comparison operator: returns true if and only if (the const version of) x is different from y.

Definition at line 196 of file Powerset.inlines.hh.

00197                                                               {
00198   return !(x == y);
00199 }


Member Data Documentation

template<typename D>
Base Parma_Polyhedra_Library::Powerset< D >::omega_const_iterator::base [protected]


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

Generated on Wed Jul 16 22:55:51 2008 for PPL by  doxygen 1.5.6