Aleph-w  1.5a.2
Biblioteca general de algoritmos y estructuras de datos
 Todo Clases Archivos Funciones Variables 'typedefs' Enumeraciones Amigas Grupos Páginas
Referencia de la Clase Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator

#include <tpl_treapRk.H>

+ Diagrama de colaboración para Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator:

Métodos públicos

 Iterator ()
 Constructor vacío; no tiene sentido si no se asigna un treap.
 
 Iterator (Gen_Treap_Rk &__tree)
 Instancia un iterador a partir del menor nodo del treap __tree.
 
 Iterator (Gen_Treap_Rk &__tree, Node *__curr)
 
 Iterator (Gen_Treap_Rk &__tree, const size_t &pos)
 Instancia un iterador a partir de la posición pos.
 
 Iterator (const Iterator &itor)
 Instancia un iterador a partir del estado del iterador itor.
 
Iteratoroperator= (const Iterator &itor)
 Asigna al iterador this el iterador itor.
 
void reset_first ()
 Reinicia el iterador al primer nodo (menor) del treap.
 
void reset_last ()
 Reinicia el iterador al último nodo (mayor) del treap.
 
void reset_to_key (const Key &key)
 
void reset_to_node (Node *node)
 
void reset_to_pos (size_t pos)
 Coloca la posición actual del iterador en la posición pos.
 
Nodeget_current () const
 Retorna el nodo actual.
 
Nodeget_curr () const
 Retorna el nodo actual.
 
size_t get_current_position () const throw (std::exception, std::underflow_error, std::overflow_error)
 
bool has_current () const
 
bool has_curr () const
 
void prev () throw (std::exception, std::underflow_error)
 Avanza el iterador una posición hacia atrás.
 
void next () throw (std::exception, std::overflow_error)
 Avanza el iterador una posición hacia delante.
 
Nodedel ()
 
bool operator== (const Iterator &itor) const
 Retorna true si *this está sobre el mismo nodo que itor.
 
bool operator!= (const Iterator &itor) const
 Retorna true si *this no es igual a itor.
 
bool verify (Gen_Treap_Rk *r) const
 
bool verify (const Iterator &it) const
 

Atributos protegidos

Gen_Treap_Rktree_ptr
 
Nodecurr
 
int curr_pos
 

Atributos protegidos estáticos

static const int Pos_Not_Current = -1
 
static const int Pos_Empty_Container = -2
 
static const int Pos_Not_Updated = -3
 

Descripción detallada

template<template< class > class NodeType, class Key, class Compare>
class Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator

Iterador sobre los nodos de un treap extendido.

Esta clase permite recorrer los nodos de un treap en forma ordenada según el criterio de comparación especificado en el momento de instanciación del treap.

Documentación del constructor y destructor

template<template< class > class NodeType, class Key, class Compare>
Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::Iterator ( Gen_Treap_Rk __tree,
Node __curr 
)
inline

Instancia un iterador a partir del nodo __curr del treap __tree.

Documentación de las funciones miembro

template<template< class > class NodeType, class Key, class Compare>
Node* Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::del ( )
inline

Elimina el nodo actual sobre el cual está posicionado el iterador; queda posicionado en el siguiente al eliminado.

Hace referencia a Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::has_current() y KEY.

+ Gráfico de llamadas para esta función:

template<template< class > class NodeType, class Key, class Compare>
size_t Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::get_current_position ( ) const
throw (std::exception,
std::underflow_error,
std::overflow_error
)
inline

Retorna la posición infija del nodo actual sobre el cual está posicionado el iterador.

Devuelve
posición infija del nodo actual sobre el cual está posicionado el iterador.
Excepciones
underflow_errorsi el iterador está desbordado por abajo.
overflow_errorsi el iterador está desbordado por arriba.

Hace referencia a COUNT y Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::getRoot().

+ Gráfico de llamadas para esta función:

template<template< class > class NodeType, class Key, class Compare>
bool Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::has_curr ( ) const
inline

Retorna true si el iterador está posicionado sobre un elemento actual.

Hace referencia a Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::has_current().

+ Gráfico de llamadas para esta función:

template<template< class > class NodeType, class Key, class Compare>
bool Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::has_current ( ) const
inline
template<template< class > class NodeType, class Key, class Compare>
void Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::reset_to_key ( const Key &  key)
inline

Reinicia la posición actual del iterador al elemento con valor de clave key.

Parámetros
[in]keyclave a colocar como posición actual.
Excepciones
domain_errorsi la clave no está contenida en el árbol.

Hace referencia a Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::getRoot() y Aleph::inorder_position().

+ Gráfico de llamadas para esta función:

template<template< class > class NodeType, class Key, class Compare>
void Aleph::Gen_Treap_Rk< NodeType, Key, Compare >::Iterator::reset_to_node ( Node node)
inline

Reinicia la posición actual del iterador al nodo node.

Parámetros
[in]nodenodo a colocar como posición actual.
Nota
No se realiza ninguna verificación acerca del que el nodo pertenezca o no al treap.

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

Leandro Rabindranath León