Referencia de la Clase DynDlist::Iterator
[Secuencias.]

Iterador sobre lista dinámica.

Diagrama de herencias de DynDlist::Iterator

Inheritance graph
[leyenda]
Diagrama de colaboración para DynDlist::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.
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 ()
 Constructor vacío.
 Iterator (const Iterator &it)
 Constructor copia de iterador.
 Iterator (const DynDlist< T > &_list)
 Constructor de iterador sobre lista constante _list.
 Iterator (DynDlist< T > &_list)
 Constructor de iterador sobre lista _list.
const int & next ()
 Avanza hacia adelante un iterador sobre una lista dinámica.
Iteratoroperator= (const Iterator &it)
 Asignación e iterador.
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 T>
class Aleph::DynDlist< T >::Iterator

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


Documentación de las funciones miembro

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

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]

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]

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]

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]

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]

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]

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]

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]

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]

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]

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]

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