#include <abstractsyntaxtree.h>
Public Member Functions | |
ASTNode (ASTNode *parent) | |
virtual void | print (uint depth, DefinitionRegistry *definitions)=0 |
virtual Common::Array< const ASTCommand * > | listCommands (uint16 index) const =0 |
void | findSuccessors (ASTNode **follower, ASTNode **trueBranch, ASTNode **falseBranch) const |
virtual void | findSuccessorsIntern (const ASTNode *node, ASTNode **follower, ASTNode **trueBranch, ASTNode **falseBranch) const =0 |
virtual const ASTCommand * | getFirstCommand () const =0 |
Protected Member Functions | |
void | printWithDepth (uint depth, const Common::String &string) const |
Protected Attributes | |
ASTNode * | _parent |
Base Abstract Syntax Tree node
The abstract syntax tree directly maps the script source code.
|
pure virtual |
Print the script source code for this node and its children
Implemented in Stark::Tools::ASTLoop, Stark::Tools::ASTCondition, Stark::Tools::ASTBlock, and Stark::Tools::ASTCommand.
|
pure virtual |
Recursively list all the commands in the tree with the requested index
Implemented in Stark::Tools::ASTLoop, Stark::Tools::ASTCondition, Stark::Tools::ASTBlock, and Stark::Tools::ASTCommand.
void Stark::Tools::ASTNode::findSuccessors | ( | ASTNode ** | follower, |
ASTNode ** | trueBranch, | ||
ASTNode ** | falseBranch | ||
) | const |
Find the successors of a node, either the direct follower or the condition branches
|
pure virtual |
Find the first command to be executed when running this job
Implemented in Stark::Tools::ASTLoop, Stark::Tools::ASTCondition, Stark::Tools::ASTBlock, and Stark::Tools::ASTCommand.