From 04c8c858b940ec14da8a7617117f24eb05961428 Mon Sep 17 00:00:00 2001 From: Peter Dahlberg Date: Sat, 1 Jun 2013 02:41:15 +0200 Subject: [PATCH] ReturnStatement(1) --- inc/AST/ReturnStatement.h | 17 +++++++++++++++++ src/AST/ReturnStatement.cpp | 18 ++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 inc/AST/ReturnStatement.h create mode 100644 src/AST/ReturnStatement.cpp diff --git a/inc/AST/ReturnStatement.h b/inc/AST/ReturnStatement.h new file mode 100644 index 0000000..284f6cd --- /dev/null +++ b/inc/AST/ReturnStatement.h @@ -0,0 +1,17 @@ +#ifndef RETURNSTATEMENT_H +#define RETURNSTATEMENT_H + +#include "AST/Statement.h" +#include "AST/Expression.h" + +class ReturnStatement : public Statement { +public: + ReturnStatement(Expression* expr); + virtual ~ReturnStatement(); + virtual void accept(ASTVisitor *visitor); + Expression* getExpr(); +private: + Expression* expr_; +}; + +#endif // RETURNSTATEMENT_H diff --git a/src/AST/ReturnStatement.cpp b/src/AST/ReturnStatement.cpp new file mode 100644 index 0000000..2a72035 --- /dev/null +++ b/src/AST/ReturnStatement.cpp @@ -0,0 +1,18 @@ +#include "AST/ReturnStatement.h" +#include "AST/ASTVisitor.h" + +ReturnStatement::ReturnStatement(Expression* expr): expr_(expr) { + // +} + +ReturnStatement::~ReturnStatement() { + // +} + +void ReturnStatement::accept(ASTVisitor* visitor) { + visitor->visit(this); +} + +Expression* ReturnStatement::getExpr() { + return expr_; +}