Referencia de la Clase Path::Iterator
[Grafos.]

Iterador sobre nodos y arcos de un camino. Más...

Diagrama de herencias de Path::Iterator

Inheritance graph
[leyenda]
Diagrama de colaboración para Path::Iterator:

Collaboration graph
[leyenda]

Lista de todos los miembros.

Métodos públicos

void append (const T &_data) throw (std::exception, std::overflow_error, std::bad_alloc)
 Inserta un elemento antes del elemento actual del iterador.
void append_list (const DynDlist &list) throw (std::exception, std::overflow_error)
 Inserta una lista dinámica antes del elemento actual.
size_t cut_list (DynDlist &list)
 Corta una lista dinámica a partir del elemento actual.
del () throw (std::exception, std::overflow_error)
 Elimina el elemento actual y avanza el iterador hacia delante.
T & get_current ()
 Retorna el elemento actual del iterador.
Arc * get_current_arc ()
 Retorna el arco actual sobre el cual está posicionado el iterador de camino.
Node * get_current_node ()
 Retorna el nodo actual sobre el cual está posicionado el iterador de camino.
const int & get_pos () const
 retorna la posición ordinal del elemento actual de iterador.
void insert (const T &_data) throw (std::exception, std::overflow_error, std::bad_alloc)
 Inserta un elemento después del elemento actual del iterador.
void insert_list (const DynDlist &list) throw (std::exception, std::overflow_error)
 Inserta una lista dinámica después del elemento actual.
 Iterator (const Iterator &it)
 Constructor copia de iterador de camino.
 Iterator (Path &path)
 Instancia un iterador sobre el camino path.
 Iterator ()
 Constructor vacío.
const int & next ()
 Avanza hacia adelante un iterador sobre una lista dinámica.
Iteratoroperator= (const Iterator &it)
 Asignación de iterador de camino.
const int & prev ()
 Avanza hacia atrás un iterador sobre una lista dinámica.
remove_next () throw (std::exception, std::overflow_error)
 Elimina el elemento sucesor del actual.
remove_prev () throw (std::exception, std::overflow_error)
 Elimina el elemento predecesor del actual.
const int & reset_first ()
 Reinicia iterador sobre lista dinámica al primer elemento de la lista.
const int & reset_last ()
 Reinicia iterador sobre lista dinámica al último elemento de la lista.


Descripción detallada

template<typename GT>
class Aleph::Path< GT >::Iterator

Ver también:
Path

Definición en la línea 906 del archivo tpl_graph.H.


Documentación de las funciones miembro

void append ( const T &  _data  )  throw (std::exception, std::overflow_error, std::bad_alloc) [inline, inherited]

Este método inserta una copia de _data antes del elemento actual sobre el esté posicionado el iterador. El elemento actual del iterador permanece invariante.

Parámetros:
[in] _data el valor del elemento a insertar
Excepciones:
overflow_error si el iterador no tiene elemento actual
bad_alloc si no hay suficiente memoria.

Definición en la línea 407 del archivo tpl_dynDlist.H.

Hace referencia a DynDlist::num_elem.

void append_list ( const DynDlist list  )  throw (std::exception, std::overflow_error) [inline, inherited]

El método inserta todos los elementos de list antes del elemento actual del iterador. La lista list deviene vacía después de la operación.

La operación toma tiempo constante.

Si lo que se requiere es insertar una copia, entonces se debe ejecutar la operación sobre una copia de list.

Parámetros:
[in,out] list la lista a insertar antes del elemento actual. Deviene vacía luego de la operación.
Excepciones:
overflow_error si el iterador no está posicionado sobre un elemento actual.

Definición en la línea 469 del archivo tpl_dynDlist.H.

Hace referencia a DynDlist::num_elem.

size_t cut_list ( DynDlist list  )  [inline, inherited]

El método elimina todos los elementos de la lista dinámica del iterador a partir de la posición actual. Los elementos eliminados son copiados a la lista list.

La lista list debe estar vacía.

La operación toma tiempo constante.

Después de la operación el iterador queda sin elemento actual.

Parámetros:
[out] list lista donde se colocan los elementos eliminados.
Devuelve:
la cantidad de elementos eliminados.
Excepciones:
overflow_error si el iterador no tiene elemento actual.
domain_error si list no está vacía.
Nota:
Atención: puesto que después de la operación el iterador queda sin elemento actual, una llamada a next() causará overflow_error.

Definición en la línea 600 del archivo tpl_dynDlist.H.

Hace referencia a DynDlist::num_elem.

T del (  )  throw (std::exception, std::overflow_error) [inline, inherited]

Este método elimina el elemento actual sobre el cual está posicionado y lo avanza al siguiente elemento del eliminado.

Devuelve:
una copia del elemento eliminado.
Excepciones:
overflow_error si el iterador no está posicionado sobre un elemento actual.

Reimplementado de GenDlist::Iterator.

Definición en la línea 494 del archivo tpl_dynDlist.H.

Hace referencia a DynDlist::num_elem.

void insert ( const T &  _data  )  throw (std::exception, std::overflow_error, std::bad_alloc) [inline, inherited]

Este método inserta una copia de _data después del elemento actual sobre el esté posicionado el iterador. El elemento actual del iterador permanece invariante.

Parámetros:
[in] _data el valor del elemento a insertar
Excepciones:
overflow_error si el iterador no tiene elemento actual
bad_alloc si no hay suficiente memoria.

Definición en la línea 383 del archivo tpl_dynDlist.H.

Hace referencia a DynDlist::num_elem.

void insert_list ( const DynDlist list  )  throw (std::exception, std::overflow_error) [inline, inherited]

El método inserta todos los elementos de list a partir del elemento actual del iterador. La lista list deviene vacía después de la operación.

La operación toma tiempo constante.

Si lo que se requiere es insertar una copia, entonces se debe ejecutar la operación sobre una copia de list.

Parámetros:
[in,out] list la lista a insertar después del elemento actual. Deviene vacía luego de la operación.
Excepciones:
overflow_error si el iterador no está posicionado sobre un elemento actual.

Definición en la línea 436 del archivo tpl_dynDlist.H.

Hace referencia a DynDlist::num_elem.

const int& next (  )  [inline, inherited]

Devuelve:
la posición actual del iterador.
Excepciones:
overflow_error si el iterador no tiene elemento actual.

Definición en la línea 298 del archivo tpl_dynDlist.H.

const int& prev (  )  [inline, inherited]

Devuelve:
la posición actual del iterador.
Excepciones:
underflow_error si el iterador no tiene elemento actual.

Definición en la línea 311 del archivo tpl_dynDlist.H.

T remove_next (  )  throw (std::exception, std::overflow_error) [inline, inherited]

Este método elimina el elemento sucesor al elemento actual del iterador. Luego de la operación, el iterador queda en la misma posición.

Devuelve:
una copia del elemento eliminado.
Excepciones:
overflow_error si el iterador no está posicionado sobre un elemento actual.

Definición en la línea 558 del archivo tpl_dynDlist.H.

Hace referencia a Dnode::get_data(), DynDlist::num_elem, y Dnode::remove_next().

T remove_prev (  )  throw (std::exception, std::overflow_error) [inline, inherited]

Este método elimina el elemento predecesor al elemento actual del iterador. Luego de la operación, el iterador queda en la misma posición.

Devuelve:
una copia del elemento eliminado.
Excepciones:
overflow_error si el iterador no está posicionado sobre un elemento actual.

Definición en la línea 526 del archivo tpl_dynDlist.H.

Hace referencia a Dnode::get_data(), DynDlist::num_elem, y Dnode::remove_prev().

const int& reset_first (  )  [inline, inherited]

Devuelve:
0 (que es la posición ordinal del primer elemento).

Definición en la línea 323 del archivo tpl_dynDlist.H.

const int& reset_last (  )  [inline, inherited]

Devuelve:
la cantidad de elementos menos uno (que es la posición ordinal del último elemento).

Definición en la línea 336 del archivo tpl_dynDlist.H.

Hace referencia a DynDlist::num_elem.


La documentación para esta clase fue generada a partir del siguiente fichero:

Leandro R. León