Function getFunction(TocParser::FuncContext * ctx);\r
Struct getStruct(TocParser::StructDeclContext * ctx);\r
Program getProgram(TocParser::ProgContext * ctx);\r
-OperatorExpr getOperatorExpr(TocParser::OperatorExprContext * ctx);\r
-Expr getExpr(TocParser::NonOpExprContext * ctx);\r
-Expr getExpr(TocParser::NonSubscriptExprContext * ctx);\r
+//Expr getExpr(TocParser::NonOpExprContext * ctx);\r
+//Expr getExpr(TocParser::NonAccessExprContext * ctx);\r
Expr getExpr(TocParser::ExprContext * ctx);\r
Stmt getStmt(TocParser::StmtContext * ctx);\r
\r
}\r
return result;\r
}\r
-OperatorExpr getOperatorExpr(TocParser::OperatorExprContext * ctx) {\r
+OperatorExpr getOperatorExpr(TocParser::OpExprContext * ctx) {\r
OperatorExpr result;\r
- result.lexpr = std::make_unique<Expr>(getExpr(ctx->binaryOperator()->nonOpExpr(0)));\r
- result.rexpr = std::make_unique<Expr>(getExpr(ctx->binaryOperator()->nonOpExpr(1)));\r
+ result.lexpr = std::make_unique<Expr>(getExpr(ctx->binaryOp()->nonOpExpr(0)));\r
+ result.rexpr = std::make_unique<Expr>(getExpr(ctx->binaryOp()->nonOpExpr(1)));\r
\r
- std::string op = ctx->binaryOperator()->BINARY_OPERATOR(0)->toString();\r
+ std::string op = ctx->binaryOp()->BINARY_OP(0)->toString();\r
+ for (auto o : ops) {\r
+\r
+ }\r
if (op == "+") result.type = OperatorType::Plus;\r
if (op == "-") result.type = OperatorType::Minus;\r
if (op == "*") result.type = OperatorType::Multiply;\r
}\r
return result;\r
}\r
-Expr getExpr(TocParser::NonSubscriptExprContext * ctx) {\r
+Expr getExpr(TocParser::NonAccessExprContext * ctx) {\r
Expr result;\r
if (ctx->funcCall() != nullptr) {\r
result.type = ExprType::Call;\r