Skip to content
This repository was archived by the owner on Jan 8, 2023. It is now read-only.

Commit 9a0563c

Browse files
author
ApsarasX
committed
chore: reorganize folder
1 parent 6090198 commit 9a0563c

2 files changed

Lines changed: 410 additions & 0 deletions

File tree

include/AST/ASTVisitor.h

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
#ifndef STATICSCRIPT_AST_VISITOR_H
2+
#define STATICSCRIPT_AST_VISITOR_H
3+
4+
#include <iostream>
5+
#include "StaticScriptParserBaseVisitor.h"
6+
#include "AST/Decl.h"
7+
#include "AST/Stmt.h"
8+
#include "AST/Type.h"
9+
#include "AST/Expr.h"
10+
#include "AST/Module.h"
11+
#include "Util/Alias.h"
12+
13+
class Visitor : public StaticScriptParserVisitor {
14+
public:
15+
explicit Visitor(String filename);
16+
17+
antlrcpp::Any visitModule(StaticScriptParser::ModuleContext *ctx) override;
18+
19+
antlrcpp::Any visitStatements(StaticScriptParser::StatementsContext *ctx) override;
20+
21+
antlrcpp::Any visitStatement(StaticScriptParser::StatementContext *ctx) override;
22+
23+
antlrcpp::Any visitEmptyStatement(StaticScriptParser::EmptyStatementContext *ctx) override;
24+
25+
antlrcpp::Any visitDeclarationStatement(StaticScriptParser::DeclarationStatementContext *ctx) override;
26+
27+
antlrcpp::Any visitDeclaration(StaticScriptParser::DeclarationContext *ctx) override;
28+
29+
antlrcpp::Any visitVariableDeclaration(StaticScriptParser::VariableDeclarationContext *ctx) override;
30+
31+
antlrcpp::Any visitVariableDeclarators(StaticScriptParser::VariableDeclaratorsContext *ctx) override;
32+
33+
antlrcpp::Any visitVariableModifier(StaticScriptParser::VariableModifierContext *ctx) override;
34+
35+
antlrcpp::Any visitVariableDeclarator(StaticScriptParser::VariableDeclaratorContext *ctx) override;
36+
37+
antlrcpp::Any visitTypeAnnotation(StaticScriptParser::TypeAnnotationContext *ctx) override;
38+
39+
antlrcpp::Any visitVariableInitializer(StaticScriptParser::VariableInitializerContext *ctx) override;
40+
41+
antlrcpp::Any visitBuiltinType(StaticScriptParser::BuiltinTypeContext *ctx) override;
42+
43+
antlrcpp::Any visitFunctionDeclaration(StaticScriptParser::FunctionDeclarationContext *ctx) override;
44+
45+
antlrcpp::Any visitParameterList(StaticScriptParser::ParameterListContext *ctx) override;
46+
47+
antlrcpp::Any visitFunctionBody(StaticScriptParser::FunctionBodyContext *ctx) override;
48+
49+
antlrcpp::Any visitCallExpression(StaticScriptParser::CallExpressionContext *ctx) override;
50+
51+
antlrcpp::Any visitArgumentList(StaticScriptParser::ArgumentListContext *ctx) override;
52+
53+
antlrcpp::Any visitCompoundStatement(StaticScriptParser::CompoundStatementContext *ctx) override;
54+
55+
antlrcpp::Any visitExpressionStatement(StaticScriptParser::ExpressionStatementContext *ctx) override;
56+
57+
antlrcpp::Any visitExpression(StaticScriptParser::ExpressionContext *ctx) override;
58+
59+
antlrcpp::Any visitLiteral(StaticScriptParser::LiteralContext *ctx) override;
60+
61+
antlrcpp::Any visitSelectionStatement(StaticScriptParser::SelectionStatementContext *ctx) override;
62+
63+
antlrcpp::Any visitIfStatement(StaticScriptParser::IfStatementContext *ctx) override;
64+
65+
antlrcpp::Any visitIterationStatement(StaticScriptParser::IterationStatementContext *ctx) override;
66+
67+
antlrcpp::Any visitWhileStatement(StaticScriptParser::WhileStatementContext *ctx) override;
68+
69+
antlrcpp::Any visitForStatement(StaticScriptParser::ForStatementContext *ctx) override;
70+
71+
antlrcpp::Any visitForInit(StaticScriptParser::ForInitContext *ctx) override;
72+
73+
antlrcpp::Any visitExpressionList(StaticScriptParser::ExpressionListContext *ctx) override;
74+
75+
antlrcpp::Any visitJumpStatement(StaticScriptParser::JumpStatementContext *ctx) override;
76+
77+
antlrcpp::Any visitContinueStatement(StaticScriptParser::ContinueStatementContext *ctx) override;
78+
79+
antlrcpp::Any visitBreakStatement(StaticScriptParser::BreakStatementContext *ctx) override;
80+
81+
antlrcpp::Any visitReturnStatement(StaticScriptParser::ReturnStatementContext *ctx) override;
82+
83+
private:
84+
const String filename;
85+
};
86+
87+
88+
#endif // STATICSCRIPT_AST_VISITOR_H

0 commit comments

Comments
 (0)