Referencia de la Clase listNode

Nodo lista de elementos. Más...

#include <typeNode.h>

Diagrama de herencias de listNode
runNode

Métodos públicos

 listNode (runNode *ele1, runNode *ele2=NULL)
 
void run ()
 
int size ()
 
vector< runNode * > listvalue () const
 
bool isAsigList ()
 
listNode * quitAsig ()
 
bool is_runlist () const
 
- Métodos públicos heredados desde runNode
 runNode (string str)
 
 runNode ()
 
virtual void addRef ()
 
virtual void rmRef ()
 
virtual bool is_print () const
 
virtual bool is_string () const
 
string getPtrString ()
 

Otros miembros heredados

- Métodos públicos estáticos heredados desde runNode
static bool compare (runNode *node1, runNode *node2, int op=0)
 

Descripción detallada

Nodo lista de elementos.

Una lista de elementos se representa mediante un vector de nodos ejecutables.

Un nodo lista se enlaza con otros dos nodos ejecutables. En la práctica uno de estos nodos será otro nodo lista o NULL, mientras que él otro será de cualquier otro tipo, formándose así una lista de nodos. Cada nodo en la lista ocupará una posición en función de los nodos listas anidados.

Tras la ejecución de una lista de nodos de este tipo, cada nodo guarda un vector con los valores de los nodos hijos y el suyo mismo. Así el primero de la lista guardará un vector con todos los valores de la lista. Esto hace posible que cada nodo hijo se libere tras la ejecución del padre ya que este ya hará referencia a los elementos que guardaban su hijos. Gracias ha esto la ejecución de un nodo lista sólo se lleva a cabo una vez.

Documentación del constructor y destructor

listNode::listNode ( runNode *  ele1,
runNode *  ele2 = NULL 
)

Método constructor.

Parámetros
ele1Nodo primer elemento .
ele2Nodo segundo elemento.

Documentación de las funciones miembro

bool listNode::is_runlist ( ) const
virtual

Sobre carga este método para que la lista sea ejecutada de forma recursiva.

Devuelve
Devuelve el valor booleano true.

Reimplementado de runNode.

bool listNode::isAsigList ( )

Comprueba si algunos de los elementos de la lista es una asignación.

Devuelve
Booleano que indica si algunos de los elementos de la lista es una asignación.
vector< runNode * > listNode::listvalue ( ) const

Obtiene el valor de la lista como un vector de nodos ejecutables.

Devuelve
Lista de valores como vector de nodos.
listNode * listNode::quitAsig ( )

Devuelve el nodo lista donde los nodos asignaciones presentes son el valor asignado en los mismos.

Devuelve
Lista sin nodos asignaciones.
void listNode::run ( )
virtual

Ejecuta el nodo, para ello ejecuta sus hijos. Luego, en el caso de que alguno sea otro nodo lista guarda el contenido del vector de este en el suyo propio, luego elimina el nodo lista. En el caso contrario introduce el nodo en su propio vector.

Implementa runNode.

int listNode::size ( )

Devuelve el número de elementos del nodo lista una vez ejecutado.

Devuelve
Número de elementos.

La documentación para esta clase fue generada a partir de los siguientes ficheros: