/* * BasicStatement.cpp * * Created on: Dec 5, 2012 * Author: attero */ #include "BasicStatement.h" BasicStatement::BasicStatement(ASTNode * parent) { this->parent = parent; } BasicStatement::~BasicStatement() { for(auto it = children.begin(); it != children.end(); ) { delete *it; it = children.erase(it); } } void BasicStatement::add_expression(ASTExpression * expr) { children.push_back(expr); } std::string BasicStatement::debug() { return "Basic statement with expression:\n" + children[0]->debug() + "\n;\n"; } void BasicStatement::execute() { for(auto child: children) child->execute() ; } void BasicStatement::accept(Visitor * visitor) { visitor->visit(this); }