diff --git a/CMakeLists.txt b/CMakeLists.txt index a95df99..c4e5034 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -62,6 +62,7 @@ SET(SCULLY_SOURCE src/AST/ASTVisitor.cpp src/AST/AssignmentExpression.cpp src/AST/BinOpExpression.cpp + src/AST/CodeGenVisitor.cpp src/AST/ConstantExpression.cpp src/AST/Expression.cpp src/AST/ExpressionStatement.cpp diff --git a/inc/AST/CodeGenVisitor.h b/inc/AST/CodeGenVisitor.h new file mode 100644 index 0000000..ef83cdb --- /dev/null +++ b/inc/AST/CodeGenVisitor.h @@ -0,0 +1,31 @@ +#ifndef CODEGENVISITOR_H +#define CODEGENVISITOR_H + +#include "ASTVisitor.h" +#include + +class CodeGenVisitor : public ASTVisitor { +public: + CodeGenVisitor(); + virtual ~CodeGenVisitor(); + + virtual void visit(AssignmentExpression* e); + virtual void visit(BinOpExpression* e); + virtual void visit(ConstantExpression* e); + virtual void visit(ExpressionStatement* e); + virtual void visit(ForStatement* e); + virtual void visit(FunctionCallExpression* e); + virtual void visit(FunctionDefinition* e); + virtual void visit(IfStatement* e); + virtual void visit(ParameterList* e); + virtual void visit(RandomForStatement* e); + virtual void visit(RandomIfStatement* e); + virtual void visit(ReturnStatement* e); + virtual void visit(Scope* e); + virtual void visit(StatementList* e); + virtual void visit(ValueList* e); + virtual void visit(VariableDefinition* e); +private: +}; + +#endif // CODEGENVISITOR_H diff --git a/src/AST/CodeGenVisitor.cpp b/src/AST/CodeGenVisitor.cpp new file mode 100644 index 0000000..b8d6847 --- /dev/null +++ b/src/AST/CodeGenVisitor.cpp @@ -0,0 +1,57 @@ +#include "AST/CodeGenVisitor.h" + +CodeGenVisitor::CodeGenVisitor() { + // +} + +CodeGenVisitor::~CodeGenVisitor() { + // +} + +void CodeGenVisitor::visit(AssignmentExpression* e) { +} + +void CodeGenVisitor::visit(BinOpExpression* e) { +} + +void CodeGenVisitor::visit(ConstantExpression* e) { +} + +void CodeGenVisitor::visit(ExpressionStatement* e) { +} + +void CodeGenVisitor::visit(ForStatement* e) { +} + +void CodeGenVisitor::visit(FunctionCallExpression* e) { +} + +void CodeGenVisitor::visit(FunctionDefinition* e) { +} + +void CodeGenVisitor::visit(IfStatement* e) { +} + +void CodeGenVisitor::visit(ParameterList* e) { +} + +void CodeGenVisitor::visit(RandomForStatement* e) { +} + +void CodeGenVisitor::visit(RandomIfStatement* e) { +} + +void CodeGenVisitor::visit(ReturnStatement* e) { +} + +void CodeGenVisitor::visit(Scope* e) { +} + +void CodeGenVisitor::visit(StatementList* e) { +} + +void CodeGenVisitor::visit(ValueList* e) { +} + +void CodeGenVisitor::visit(VariableDefinition* e) { +}