// Generated from Toc.g4 by ANTLR 4.9.2\r
\r
\r
-#include "TocListener.h"\r
\r
#include "TocParser.h"\r
\r
return TocParser::RuleProg;\r
}\r
\r
-void TocParser::ProgContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterProg(this);\r
-}\r
-\r
-void TocParser::ProgContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitProg(this);\r
-}\r
\r
TocParser::ProgContext* TocParser::prog() {\r
ProgContext *_localctx = _tracker.createInstance<ProgContext>(_ctx, getState());\r
return TocParser::RuleDecl;\r
}\r
\r
-void TocParser::DeclContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterDecl(this);\r
-}\r
-\r
-void TocParser::DeclContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitDecl(this);\r
-}\r
\r
TocParser::DeclContext* TocParser::decl() {\r
DeclContext *_localctx = _tracker.createInstance<DeclContext>(_ctx, getState());\r
return TocParser::RuleVarDecl;\r
}\r
\r
-void TocParser::VarDeclContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterVarDecl(this);\r
-}\r
-\r
-void TocParser::VarDeclContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitVarDecl(this);\r
-}\r
\r
TocParser::VarDeclContext* TocParser::varDecl() {\r
VarDeclContext *_localctx = _tracker.createInstance<VarDeclContext>(_ctx, getState());\r
return TocParser::RuleVar;\r
}\r
\r
-void TocParser::VarContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterVar(this);\r
-}\r
-\r
-void TocParser::VarContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitVar(this);\r
-}\r
\r
TocParser::VarContext* TocParser::var() {\r
VarContext *_localctx = _tracker.createInstance<VarContext>(_ctx, getState());\r
return TocParser::RuleVarInit;\r
}\r
\r
-void TocParser::VarInitContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterVarInit(this);\r
-}\r
-\r
-void TocParser::VarInitContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitVarInit(this);\r
-}\r
\r
TocParser::VarInitContext* TocParser::varInit() {\r
VarInitContext *_localctx = _tracker.createInstance<VarInitContext>(_ctx, getState());\r
return TocParser::RuleType;\r
}\r
\r
-void TocParser::TypeContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterType(this);\r
-}\r
-\r
-void TocParser::TypeContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitType(this);\r
-}\r
\r
TocParser::TypeContext* TocParser::type() {\r
TypeContext *_localctx = _tracker.createInstance<TypeContext>(_ctx, getState());\r
return TocParser::RuleTypeModifier;\r
}\r
\r
-void TocParser::TypeModifierContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterTypeModifier(this);\r
-}\r
-\r
-void TocParser::TypeModifierContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitTypeModifier(this);\r
-}\r
\r
TocParser::TypeModifierContext* TocParser::typeModifier() {\r
TypeModifierContext *_localctx = _tracker.createInstance<TypeModifierContext>(_ctx, getState());\r
return TocParser::RuleFuncDecl;\r
}\r
\r
-void TocParser::FuncDeclContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterFuncDecl(this);\r
-}\r
-\r
-void TocParser::FuncDeclContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitFuncDecl(this);\r
-}\r
\r
TocParser::FuncDeclContext* TocParser::funcDecl() {\r
FuncDeclContext *_localctx = _tracker.createInstance<FuncDeclContext>(_ctx, getState());\r
return TocParser::RuleFunc;\r
}\r
\r
-void TocParser::FuncContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterFunc(this);\r
-}\r
-\r
-void TocParser::FuncContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitFunc(this);\r
-}\r
\r
TocParser::FuncContext* TocParser::func() {\r
FuncContext *_localctx = _tracker.createInstance<FuncContext>(_ctx, getState());\r
return TocParser::RuleParameter;\r
}\r
\r
-void TocParser::ParameterContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterParameter(this);\r
-}\r
-\r
-void TocParser::ParameterContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitParameter(this);\r
-}\r
\r
TocParser::ParameterContext* TocParser::parameter() {\r
ParameterContext *_localctx = _tracker.createInstance<ParameterContext>(_ctx, getState());\r
return TocParser::RuleBody;\r
}\r
\r
-void TocParser::BodyContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterBody(this);\r
-}\r
-\r
-void TocParser::BodyContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitBody(this);\r
-}\r
\r
TocParser::BodyContext* TocParser::body() {\r
BodyContext *_localctx = _tracker.createInstance<BodyContext>(_ctx, getState());\r
return TocParser::RuleStructDecl;\r
}\r
\r
-void TocParser::StructDeclContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterStructDecl(this);\r
-}\r
-\r
-void TocParser::StructDeclContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitStructDecl(this);\r
-}\r
\r
TocParser::StructDeclContext* TocParser::structDecl() {\r
StructDeclContext *_localctx = _tracker.createInstance<StructDeclContext>(_ctx, getState());\r
return TocParser::RuleStructMember;\r
}\r
\r
-void TocParser::StructMemberContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterStructMember(this);\r
-}\r
-\r
-void TocParser::StructMemberContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitStructMember(this);\r
-}\r
\r
TocParser::StructMemberContext* TocParser::structMember() {\r
StructMemberContext *_localctx = _tracker.createInstance<StructMemberContext>(_ctx, getState());\r
return TocParser::RuleStructVar;\r
}\r
\r
-void TocParser::StructVarContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterStructVar(this);\r
-}\r
-\r
-void TocParser::StructVarContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitStructVar(this);\r
-}\r
\r
TocParser::StructVarContext* TocParser::structVar() {\r
StructVarContext *_localctx = _tracker.createInstance<StructVarContext>(_ctx, getState());\r
return TocParser::RuleStructMethod;\r
}\r
\r
-void TocParser::StructMethodContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterStructMethod(this);\r
-}\r
-\r
-void TocParser::StructMethodContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitStructMethod(this);\r
-}\r
\r
TocParser::StructMethodContext* TocParser::structMethod() {\r
StructMethodContext *_localctx = _tracker.createInstance<StructMethodContext>(_ctx, getState());\r
return TocParser::RuleStmt;\r
}\r
\r
-void TocParser::StmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterStmt(this);\r
-}\r
-\r
-void TocParser::StmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitStmt(this);\r
-}\r
\r
TocParser::StmtContext* TocParser::stmt() {\r
StmtContext *_localctx = _tracker.createInstance<StmtContext>(_ctx, getState());\r
return TocParser::RuleIfStmt;\r
}\r
\r
-void TocParser::IfStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterIfStmt(this);\r
-}\r
-\r
-void TocParser::IfStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitIfStmt(this);\r
-}\r
\r
TocParser::IfStmtContext* TocParser::ifStmt() {\r
IfStmtContext *_localctx = _tracker.createInstance<IfStmtContext>(_ctx, getState());\r
return TocParser::RuleElseIfStmt;\r
}\r
\r
-void TocParser::ElseIfStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterElseIfStmt(this);\r
-}\r
-\r
-void TocParser::ElseIfStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitElseIfStmt(this);\r
-}\r
\r
TocParser::ElseIfStmtContext* TocParser::elseIfStmt() {\r
ElseIfStmtContext *_localctx = _tracker.createInstance<ElseIfStmtContext>(_ctx, getState());\r
return TocParser::RuleElseStmt;\r
}\r
\r
-void TocParser::ElseStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterElseStmt(this);\r
-}\r
-\r
-void TocParser::ElseStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitElseStmt(this);\r
-}\r
\r
TocParser::ElseStmtContext* TocParser::elseStmt() {\r
ElseStmtContext *_localctx = _tracker.createInstance<ElseStmtContext>(_ctx, getState());\r
return TocParser::RuleSwitchStmt;\r
}\r
\r
-void TocParser::SwitchStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterSwitchStmt(this);\r
-}\r
-\r
-void TocParser::SwitchStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitSwitchStmt(this);\r
-}\r
\r
TocParser::SwitchStmtContext* TocParser::switchStmt() {\r
SwitchStmtContext *_localctx = _tracker.createInstance<SwitchStmtContext>(_ctx, getState());\r
return TocParser::RuleSwitchBody;\r
}\r
\r
-void TocParser::SwitchBodyContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterSwitchBody(this);\r
-}\r
-\r
-void TocParser::SwitchBodyContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitSwitchBody(this);\r
-}\r
\r
TocParser::SwitchBodyContext* TocParser::switchBody() {\r
SwitchBodyContext *_localctx = _tracker.createInstance<SwitchBodyContext>(_ctx, getState());\r
return TocParser::RuleSwitchCase;\r
}\r
\r
-void TocParser::SwitchCaseContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterSwitchCase(this);\r
-}\r
-\r
-void TocParser::SwitchCaseContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitSwitchCase(this);\r
-}\r
\r
TocParser::SwitchCaseContext* TocParser::switchCase() {\r
SwitchCaseContext *_localctx = _tracker.createInstance<SwitchCaseContext>(_ctx, getState());\r
return TocParser::RuleForStmt;\r
}\r
\r
-void TocParser::ForStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterForStmt(this);\r
-}\r
-\r
-void TocParser::ForStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitForStmt(this);\r
-}\r
\r
TocParser::ForStmtContext* TocParser::forStmt() {\r
ForStmtContext *_localctx = _tracker.createInstance<ForStmtContext>(_ctx, getState());\r
return TocParser::RuleWhileStmt;\r
}\r
\r
-void TocParser::WhileStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterWhileStmt(this);\r
-}\r
-\r
-void TocParser::WhileStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitWhileStmt(this);\r
-}\r
\r
TocParser::WhileStmtContext* TocParser::whileStmt() {\r
WhileStmtContext *_localctx = _tracker.createInstance<WhileStmtContext>(_ctx, getState());\r
return TocParser::RuleAssignStmt;\r
}\r
\r
-void TocParser::AssignStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterAssignStmt(this);\r
-}\r
-\r
-void TocParser::AssignStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitAssignStmt(this);\r
-}\r
\r
TocParser::AssignStmtContext* TocParser::assignStmt() {\r
AssignStmtContext *_localctx = _tracker.createInstance<AssignStmtContext>(_ctx, getState());\r
return TocParser::RuleReturnStmt;\r
}\r
\r
-void TocParser::ReturnStmtContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterReturnStmt(this);\r
-}\r
-\r
-void TocParser::ReturnStmtContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitReturnStmt(this);\r
-}\r
\r
TocParser::ReturnStmtContext* TocParser::returnStmt() {\r
ReturnStmtContext *_localctx = _tracker.createInstance<ReturnStmtContext>(_ctx, getState());\r
return TocParser::RuleExpr;\r
}\r
\r
-void TocParser::ExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterExpr(this);\r
-}\r
-\r
-void TocParser::ExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitExpr(this);\r
-}\r
\r
TocParser::ExprContext* TocParser::expr() {\r
ExprContext *_localctx = _tracker.createInstance<ExprContext>(_ctx, getState());\r
return TocParser::RuleNonOpExpr;\r
}\r
\r
-void TocParser::NonOpExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterNonOpExpr(this);\r
-}\r
-\r
-void TocParser::NonOpExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitNonOpExpr(this);\r
-}\r
\r
TocParser::NonOpExprContext* TocParser::nonOpExpr() {\r
NonOpExprContext *_localctx = _tracker.createInstance<NonOpExprContext>(_ctx, getState());\r
return TocParser::RuleNonAccessExpr;\r
}\r
\r
-void TocParser::NonAccessExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterNonAccessExpr(this);\r
-}\r
-\r
-void TocParser::NonAccessExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitNonAccessExpr(this);\r
-}\r
\r
TocParser::NonAccessExprContext* TocParser::nonAccessExpr() {\r
NonAccessExprContext *_localctx = _tracker.createInstance<NonAccessExprContext>(_ctx, getState());\r
return TocParser::RuleFuncExpr;\r
}\r
\r
-void TocParser::FuncExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterFuncExpr(this);\r
-}\r
-\r
-void TocParser::FuncExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitFuncExpr(this);\r
-}\r
\r
TocParser::FuncExprContext* TocParser::funcExpr() {\r
FuncExprContext *_localctx = _tracker.createInstance<FuncExprContext>(_ctx, getState());\r
return TocParser::RuleOpExpr;\r
}\r
\r
-void TocParser::OpExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterOpExpr(this);\r
-}\r
-\r
-void TocParser::OpExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitOpExpr(this);\r
-}\r
\r
TocParser::OpExprContext* TocParser::opExpr() {\r
OpExprContext *_localctx = _tracker.createInstance<OpExprContext>(_ctx, getState());\r
return TocParser::RuleBinaryOp;\r
}\r
\r
-void TocParser::BinaryOpContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterBinaryOp(this);\r
-}\r
-\r
-void TocParser::BinaryOpContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitBinaryOp(this);\r
-}\r
\r
TocParser::BinaryOpContext* TocParser::binaryOp() {\r
BinaryOpContext *_localctx = _tracker.createInstance<BinaryOpContext>(_ctx, getState());\r
return TocParser::RulePrefixOp;\r
}\r
\r
-void TocParser::PrefixOpContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterPrefixOp(this);\r
-}\r
-\r
-void TocParser::PrefixOpContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitPrefixOp(this);\r
-}\r
\r
TocParser::PrefixOpContext* TocParser::prefixOp() {\r
PrefixOpContext *_localctx = _tracker.createInstance<PrefixOpContext>(_ctx, getState());\r
return TocParser::RulePostfixOp;\r
}\r
\r
-void TocParser::PostfixOpContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterPostfixOp(this);\r
-}\r
-\r
-void TocParser::PostfixOpContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitPostfixOp(this);\r
-}\r
\r
TocParser::PostfixOpContext* TocParser::postfixOp() {\r
PostfixOpContext *_localctx = _tracker.createInstance<PostfixOpContext>(_ctx, getState());\r
return TocParser::RuleTernaryOp;\r
}\r
\r
-void TocParser::TernaryOpContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterTernaryOp(this);\r
-}\r
-\r
-void TocParser::TernaryOpContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitTernaryOp(this);\r
-}\r
\r
TocParser::TernaryOpContext* TocParser::ternaryOp() {\r
TernaryOpContext *_localctx = _tracker.createInstance<TernaryOpContext>(_ctx, getState());\r
return TocParser::RuleIdentifierExpr;\r
}\r
\r
-void TocParser::IdentifierExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterIdentifierExpr(this);\r
-}\r
-\r
-void TocParser::IdentifierExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitIdentifierExpr(this);\r
-}\r
\r
TocParser::IdentifierExprContext* TocParser::identifierExpr() {\r
IdentifierExprContext *_localctx = _tracker.createInstance<IdentifierExprContext>(_ctx, getState());\r
return TocParser::RuleLitExpr;\r
}\r
\r
-void TocParser::LitExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterLitExpr(this);\r
-}\r
-\r
-void TocParser::LitExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitLitExpr(this);\r
-}\r
\r
TocParser::LitExprContext* TocParser::litExpr() {\r
LitExprContext *_localctx = _tracker.createInstance<LitExprContext>(_ctx, getState());\r
return TocParser::RuleAccessExpr;\r
}\r
\r
-void TocParser::AccessExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterAccessExpr(this);\r
-}\r
-\r
-void TocParser::AccessExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitAccessExpr(this);\r
-}\r
\r
TocParser::AccessExprContext* TocParser::accessExpr() {\r
AccessExprContext *_localctx = _tracker.createInstance<AccessExprContext>(_ctx, getState());\r
return TocParser::RuleAccessSubExpr;\r
}\r
\r
-void TocParser::AccessSubExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterAccessSubExpr(this);\r
-}\r
-\r
-void TocParser::AccessSubExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitAccessSubExpr(this);\r
-}\r
\r
TocParser::AccessSubExprContext* TocParser::accessSubExpr() {\r
AccessSubExprContext *_localctx = _tracker.createInstance<AccessSubExprContext>(_ctx, getState());\r
return TocParser::RuleAccessMember;\r
}\r
\r
-void TocParser::AccessMemberContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterAccessMember(this);\r
-}\r
-\r
-void TocParser::AccessMemberContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitAccessMember(this);\r
-}\r
\r
TocParser::AccessMemberContext* TocParser::accessMember() {\r
AccessMemberContext *_localctx = _tracker.createInstance<AccessMemberContext>(_ctx, getState());\r
return TocParser::RuleAccessBrackets;\r
}\r
\r
-void TocParser::AccessBracketsContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterAccessBrackets(this);\r
-}\r
-\r
-void TocParser::AccessBracketsContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitAccessBrackets(this);\r
-}\r
\r
TocParser::AccessBracketsContext* TocParser::accessBrackets() {\r
AccessBracketsContext *_localctx = _tracker.createInstance<AccessBracketsContext>(_ctx, getState());\r
return TocParser::RuleParenExpr;\r
}\r
\r
-void TocParser::ParenExprContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterParenExpr(this);\r
-}\r
-\r
-void TocParser::ParenExprContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitParenExpr(this);\r
-}\r
\r
TocParser::ParenExprContext* TocParser::parenExpr() {\r
ParenExprContext *_localctx = _tracker.createInstance<ParenExprContext>(_ctx, getState());\r
return TocParser::RuleFuncName;\r
}\r
\r
-void TocParser::FuncNameContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterFuncName(this);\r
-}\r
-\r
-void TocParser::FuncNameContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitFuncName(this);\r
-}\r
\r
TocParser::FuncNameContext* TocParser::funcName() {\r
FuncNameContext *_localctx = _tracker.createInstance<FuncNameContext>(_ctx, getState());\r
return TocParser::RuleVarName;\r
}\r
\r
-void TocParser::VarNameContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterVarName(this);\r
-}\r
-\r
-void TocParser::VarNameContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitVarName(this);\r
-}\r
\r
TocParser::VarNameContext* TocParser::varName() {\r
VarNameContext *_localctx = _tracker.createInstance<VarNameContext>(_ctx, getState());\r
return TocParser::RuleTypeName;\r
}\r
\r
-void TocParser::TypeNameContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterTypeName(this);\r
-}\r
-\r
-void TocParser::TypeNameContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitTypeName(this);\r
-}\r
\r
TocParser::TypeNameContext* TocParser::typeName() {\r
TypeNameContext *_localctx = _tracker.createInstance<TypeNameContext>(_ctx, getState());\r
return TocParser::RuleStructName;\r
}\r
\r
-void TocParser::StructNameContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterStructName(this);\r
-}\r
-\r
-void TocParser::StructNameContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitStructName(this);\r
-}\r
\r
TocParser::StructNameContext* TocParser::structName() {\r
StructNameContext *_localctx = _tracker.createInstance<StructNameContext>(_ctx, getState());\r
return TocParser::RulePostfix_op;\r
}\r
\r
-void TocParser::Postfix_opContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterPostfix_op(this);\r
-}\r
-\r
-void TocParser::Postfix_opContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitPostfix_op(this);\r
-}\r
\r
TocParser::Postfix_opContext* TocParser::postfix_op() {\r
Postfix_opContext *_localctx = _tracker.createInstance<Postfix_opContext>(_ctx, getState());\r
return TocParser::RulePrefix_op;\r
}\r
\r
-void TocParser::Prefix_opContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterPrefix_op(this);\r
-}\r
-\r
-void TocParser::Prefix_opContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitPrefix_op(this);\r
-}\r
\r
TocParser::Prefix_opContext* TocParser::prefix_op() {\r
Prefix_opContext *_localctx = _tracker.createInstance<Prefix_opContext>(_ctx, getState());\r
return TocParser::RuleBinary_op;\r
}\r
\r
-void TocParser::Binary_opContext::enterRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->enterBinary_op(this);\r
-}\r
-\r
-void TocParser::Binary_opContext::exitRule(tree::ParseTreeListener *listener) {\r
- auto parserListener = dynamic_cast<TocListener *>(listener);\r
- if (parserListener != nullptr)\r
- parserListener->exitBinary_op(this);\r
-}\r
\r
TocParser::Binary_opContext* TocParser::binary_op() {\r
Binary_opContext *_localctx = _tracker.createInstance<Binary_opContext>(_ctx, getState());\r