Parma_Polyhedra_Library::CO_Tree::iterator Class Reference

An iterator on the tree elements, ordered by key. More...

`#include <ppl.hh>`

## Public Member Functions

| iterator ()
| Constructs an invalid iterator. More...
| iterator (CO_Tree &tree)
| Constructs an iterator pointing to first element of the tree. More...
| iterator (CO_Tree &tree, dimension_type i)
| Constructs an iterator pointing to the i-th node. More...
| iterator (const tree_iterator &itr)
| The constructor from a tree_iterator. More...
| iterator (const iterator &itr)
| The copy constructor. More...
void | m_swap (iterator &itr)
| Swaps itr with *this. More...
iterator & | operator= (const iterator &itr)
| Assigns `itr` to *this . More...
iterator & | operator= (const tree_iterator &itr)
| Assigns `itr` to *this . More...
iterator & | operator++ ()
| Navigates to the next element in the tree. More...
iterator & | operator-- ()
| Navigates to the previous element in the tree. More...
iterator | operator++ (int)
| Navigates to the next element in the tree. More...
iterator | operator-- (int)
| Navigates to the previous element in the tree. More...
data_type & | operator* ()
| Returns the current element.
data_type_const_reference | operator* () const
| Returns the current element.
dimension_type | index () const
| Returns the index of the element pointed to by `*this`. More...
bool | operator== (const iterator &x) const
| Compares `*this` with x . More...
bool | operator!= (const iterator &x) const
| Compares `*this` with x . More...

## Detailed Description

An iterator on the tree elements, ordered by key.

Iterator increment and decrement operations are time. These iterators are invalidated by operations that add or remove elements from the tree.

## Constructor & Destructor Documentation

Parma_Polyhedra_Library::CO_Tree::iterator::iterator | ( |  | ) |

inline

Constructs an invalid iterator.

This constructor takes time.

Parma_Polyhedra_Library::CO_Tree::iterator::iterator | ( | CO_Tree & | tree | ) |

inlineexplicit

Constructs an iterator pointing to first element of the tree.

Parameters

  tree | The tree to which the new iterator will point to.

This constructor takes time.

Parma_Polyhedra_Library::CO_Tree::iterator::iterator | ( | CO_Tree & | tree,
|  | dimension_type | i
| ) |  |

inline

Constructs an iterator pointing to the i-th node.

Parameters

  tree | The tree to which the new iterator will point to.
  i | The index of the element in `tree` to which the new iterator will point to.

The i-th node must be a node with a value or end().

This constructor takes time.

Parma_Polyhedra_Library::CO_Tree::iterator::iterator | ( | const tree_iterator & | itr | ) |

inlineexplicit

The constructor from a tree_iterator.

Parameters

  itr | The tree_iterator that will be converted into an iterator.

This is meant for use by CO_Tree only. This is not private to avoid the friend declaration.

This constructor takes time.

Parma_Polyhedra_Library::CO_Tree::iterator::iterator | ( | const iterator & | itr | ) |

inline

The copy constructor.

Parameters

  itr | The iterator that will be copied.

This constructor takes time.

## Member Function Documentation

void Parma_Polyhedra_Library::CO_Tree::iterator::m_swap | ( | iterator & | itr | ) |

inline

Swaps itr with *this.

Parameters

  itr | The iterator that will be swapped with *this.

This method takes time.

CO_Tree::iterator & Parma_Polyhedra_Library::CO_Tree::iterator::operator= | ( | const iterator & | itr | ) |

inline

Assigns `itr` to *this .

Parameters

  itr | The iterator that will be assigned into *this.

This method takes time.

CO_Tree::iterator & Parma_Polyhedra_Library::CO_Tree::iterator::operator= | ( | const tree_iterator & | itr | ) |

inline

Assigns `itr` to *this .

Parameters

  itr | The iterator that will be assigned into *this.

This method takes time.

CO_Tree::iterator & Parma_Polyhedra_Library::CO_Tree::iterator::operator++ | ( |  | ) |

inline

Navigates to the next element in the tree.

This method takes time.

CO_Tree::iterator & Parma_Polyhedra_Library::CO_Tree::iterator::operator-- | ( |  | ) |

inline

Navigates to the previous element in the tree.

This method takes time.

CO_Tree::iterator Parma_Polyhedra_Library::CO_Tree::iterator::operator++ | ( | int |  | ) |

inline

Navigates to the next element in the tree.

This method takes time.

CO_Tree::iterator Parma_Polyhedra_Library::CO_Tree::iterator::operator-- | ( | int |  | ) |

inline

Navigates to the previous element in the tree.

This method takes time.

dimension_type Parma_Polyhedra_Library::CO_Tree::iterator::index | ( |  | ) | const

inline

Returns the index of the element pointed to by `*this`.

Returns
  the index of the element pointed to by `*this`.

bool Parma_Polyhedra_Library::CO_Tree::iterator::operator== | ( | const iterator & | x | ) | const

inline

Compares `*this` with x .

Parameters

  x | The iterator that will be compared with *this.

bool Parma_Polyhedra_Library::CO_Tree::iterator::operator!= | ( | const iterator & | x | ) | const

inline

Compares `*this` with x .

Parameters

  x | The iterator that will be compared with *this.

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

- ppl.hh