Nodo de sentencia. Más...
#include <stmtNode.h>
Métodos públicos | |
| stmtNode (runNode *node1, runNode *node2, YYLTYPE bloq=YYLTYPE(), bool firstlevel=false) | |
| 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 () |
Métodos públicos estáticos | |
| static void | newLine (void) |
Métodos públicos estáticos heredados desde runNode | |
| static bool | compare (runNode *node1, runNode *node2, int op=0) |
Atributos públicos estáticos | |
| static int | row_ = 2 |
| static bool | compile_error = false |
Nodo de sentencia.
La funcionalidad de este nodo es meramente constructiva. Su función es enlazar dos nodos de diferente naturaleza.
El nodo de sentencia es asociado a otros dos nodos. Su ejecución consistirá en ejecutar ambos nodos de forma secuencial.
Haciendo un uso anidado del mismo es posible enlazar varios nodos de ejecución.
Las sentencias pueden presentarse en un primer nivel si no se encuentras dentro de ningún bloque, o dentro de otras sentencias en forma de bloque.
| stmtNode::stmtNode | ( | runNode * | node1, |
| runNode * | node2, | ||
| YYLTYPE | bloq = YYLTYPE(), |
||
| bool | firstlevel = false |
||
| ) |
Constructor de la clase.
| node1 | Nodo que se ejecutará en primer lugar. |
| node2 | Nodo que se ejecutará en segundo lugar. |
| bloq | Determina en la línea en la que se encuentra la sentencia dentro del fichero |
| fistlevel | Determina si la sentencia es de primer nivel |
|
static |
Añade una nueva línea para el control de líneas en la que se encuentra cada sentencia
|
virtual |
Método de ejecución del nodo.
Ejecuta secuencialmente los nodos asociados en la construcción del objeto.
Implementa runNode.
|
static |
Determina si se ha llevado a cabo un error al procesar el código fuente
|
static |
Líneas en el fichero