Referencia de la Clase foreachNode

Nodo sentencia foreach. Más...

#include <loopStmtNode.h>

Diagrama de herencias de foreachNode
runNode

Métodos públicos

 foreachNode (runNode *val, runNode *exp, runNode *rb=NULL, runNode *key=NULL)
 
void run ()
 
- 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_runlist () 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 sentencia foreach.

Este nodo representa una sentencia foreach. Permite ejecutar un bloque de sentencias para cada elemento contenido en un conjunto.

Se construye a partir un nodo que hace de conjunto a recorrer, un nodo que hace de identificador, el cual referenciará al elemento actual en cada iteración y un nodo que hace de bloque de sentencias que se ejecutará para cada elemento. Es posible además especificar un nodo que hará de identificador en el que se guardará las claves de las referencias a los elementos recorridos.

Documentación del constructor y destructor

foreachNode::foreachNode ( runNode *  val,
runNode *  exp,
runNode *  rb = NULL,
runNode *  key = NULL 
)

Constructor de la clase.

Parámetros
valNodo que hace de identificador para el valor de cada iteración.
expNodo que hace de conjunto de elementos.
rbNodo que hace de bloque de sentencias.
keyNodo que hace de identificador para la clave de cada iteración.

Documentación de las funciones miembro

void foreachNode::run ( )
virtual

Método de ejecución del nodo. Ejecuta el bloque de sentencias para cada elemento contenido en el conjunto, asignado el elemento al identificador del valor y la clave al identificador de clave si se facilitó.

Implementa runNode.


La documentación para esta clase fue generada a partir de los siguientes ficheros:
  • trunk/src/run/stmts/loopStmtNode.h
  • trunk/src/run/stmts/loopStmtNode.cpp