From 6f769c77b75dff76eb41929e8223b53daf399db7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Grodzi=C5=84ski?= Date: Wed, 2 Jul 2025 16:51:51 +0900 Subject: [PATCH] Removed virtual toString from Statement --- src/Parser/Parser.cpp | 2 +- src/Parser/Statement/Statement.cpp | 4 ---- src/Parser/Statement/Statement.h | 2 +- src/Parser/Statement/StatementBlock.cpp | 13 ------------- src/Parser/Statement/StatementBlock.h | 1 - src/Parser/Statement/StatementExpression.cpp | 9 --------- src/Parser/Statement/StatementExpression.h | 1 - src/Parser/Statement/StatementFunction.cpp | 14 -------------- src/Parser/Statement/StatementFunction.h | 1 - src/Parser/Statement/StatementInvalid.cpp | 4 ---- src/Parser/Statement/StatementInvalid.h | 1 - .../Statement/StatementMetaExternFunction.cpp | 11 ----------- .../Statement/StatementMetaExternFunction.h | 1 - src/Parser/Statement/StatementRepeat.cpp | 16 ---------------- src/Parser/Statement/StatementRepeat.h | 1 - src/Parser/Statement/StatementReturn.cpp | 15 --------------- src/Parser/Statement/StatementReturn.h | 1 - src/Parser/Statement/StatementVariable.cpp | 14 -------------- src/Parser/Statement/StatementVariable.h | 1 - 19 files changed, 2 insertions(+), 110 deletions(-) diff --git a/src/Parser/Parser.cpp b/src/Parser/Parser.cpp index 40c196a..aabdcee 100644 --- a/src/Parser/Parser.cpp +++ b/src/Parser/Parser.cpp @@ -29,7 +29,7 @@ vector> Parser::getStatements() { shared_ptr statement = nextStatement(); // Abort parsing if we got an error if (!statement->isValid()) { - cerr << statement->toString(0); + //cerr << statement->toString(0); exit(1); } statements.push_back(statement); diff --git a/src/Parser/Statement/Statement.cpp b/src/Parser/Statement/Statement.cpp index ed664f8..b26aeef 100644 --- a/src/Parser/Statement/Statement.cpp +++ b/src/Parser/Statement/Statement.cpp @@ -10,7 +10,3 @@ StatementKind Statement::getKind() { bool Statement::isValid() { return kind != StatementKind::INVALID; } - -string Statement::toString(int indent) { - return "STATEMENT"; -} diff --git a/src/Parser/Statement/Statement.h b/src/Parser/Statement/Statement.h index 4c6289d..8ec4fd5 100644 --- a/src/Parser/Statement/Statement.h +++ b/src/Parser/Statement/Statement.h @@ -25,9 +25,9 @@ private: public: Statement(StatementKind kind); + virtual ~Statement() {} StatementKind getKind(); bool isValid(); - virtual string toString(int indent); }; #endif \ No newline at end of file diff --git a/src/Parser/Statement/StatementBlock.cpp b/src/Parser/Statement/StatementBlock.cpp index 3c8839b..ae409d0 100644 --- a/src/Parser/Statement/StatementBlock.cpp +++ b/src/Parser/Statement/StatementBlock.cpp @@ -8,16 +8,3 @@ Statement(StatementKind::BLOCK), statements(statements) { } vector> StatementBlock::getStatements() { return statements; } - -string StatementBlock::toString(int indent) { - string value; - for (int i=0; itoString(indent); - } - for (int ind=0; ind> statements); vector> getStatements(); - string toString(int indent) override; }; \ No newline at end of file diff --git a/src/Parser/Statement/StatementExpression.cpp b/src/Parser/Statement/StatementExpression.cpp index d1415be..fb5b481 100644 --- a/src/Parser/Statement/StatementExpression.cpp +++ b/src/Parser/Statement/StatementExpression.cpp @@ -8,12 +8,3 @@ Statement(StatementKind::EXPRESSION), expression(expression) { } shared_ptr StatementExpression::getExpression() { return expression; } - -string StatementExpression::toString(int indent) { - string value; - for (int ind=0; indtoString(indent); - value += "\n"; - return value; -} \ No newline at end of file diff --git a/src/Parser/Statement/StatementExpression.h b/src/Parser/Statement/StatementExpression.h index c38dd75..bc97e3a 100644 --- a/src/Parser/Statement/StatementExpression.h +++ b/src/Parser/Statement/StatementExpression.h @@ -9,5 +9,4 @@ private: public: StatementExpression(shared_ptr expression); shared_ptr getExpression(); - string toString(int indent) override; }; \ No newline at end of file diff --git a/src/Parser/Statement/StatementFunction.cpp b/src/Parser/Statement/StatementFunction.cpp index d6a6f9f..df5b24f 100644 --- a/src/Parser/Statement/StatementFunction.cpp +++ b/src/Parser/Statement/StatementFunction.cpp @@ -43,17 +43,3 @@ ValueType StatementFunction::getReturnValueType() { shared_ptr StatementFunction::getStatementBlock() { return statementBlock; } - -string StatementFunction::toString(int indent) { - string value = ""; - for (int ind=0; indtoString(indent+1); - for (int ind=0; ind> getArguments(); ValueType getReturnValueType(); shared_ptr getStatementBlock(); - string toString(int indent) override; }; \ No newline at end of file diff --git a/src/Parser/Statement/StatementInvalid.cpp b/src/Parser/Statement/StatementInvalid.cpp index 324e8d6..f0d8781 100644 --- a/src/Parser/Statement/StatementInvalid.cpp +++ b/src/Parser/Statement/StatementInvalid.cpp @@ -5,10 +5,6 @@ StatementInvalid::StatementInvalid(shared_ptr token, string message): Statement(StatementKind::INVALID), token(token), message(message) { } -string StatementInvalid::toString(int indent) { - return "Error for token " + token->toString() + " at " + to_string(token->getLine()) + ":" + to_string(token->getColumn()) + ": " + message + "\n"; -} - string StatementInvalid::getMessage() { return message; } \ No newline at end of file diff --git a/src/Parser/Statement/StatementInvalid.h b/src/Parser/Statement/StatementInvalid.h index c917de7..6c39eb7 100644 --- a/src/Parser/Statement/StatementInvalid.h +++ b/src/Parser/Statement/StatementInvalid.h @@ -9,6 +9,5 @@ private: public: StatementInvalid(shared_ptr token, string message); - string toString(int indent) override; string getMessage(); }; diff --git a/src/Parser/Statement/StatementMetaExternFunction.cpp b/src/Parser/Statement/StatementMetaExternFunction.cpp index ea09299..6285def 100644 --- a/src/Parser/Statement/StatementMetaExternFunction.cpp +++ b/src/Parser/Statement/StatementMetaExternFunction.cpp @@ -27,14 +27,3 @@ vector> StatementMetaExternFunction::getArguments() { ValueType StatementMetaExternFunction::getReturnValueType() { return returnValueType; } - -string StatementMetaExternFunction::toString(int indent) { - string value; - for (int ind=0; ind> getArguments(); ValueType getReturnValueType(); - string toString(int indent) override; }; \ No newline at end of file diff --git a/src/Parser/Statement/StatementRepeat.cpp b/src/Parser/Statement/StatementRepeat.cpp index 6f52ed9..8299466 100644 --- a/src/Parser/Statement/StatementRepeat.cpp +++ b/src/Parser/Statement/StatementRepeat.cpp @@ -21,19 +21,3 @@ shared_ptr StatementRepeat::getPostConditionExpression() { shared_ptr StatementRepeat::getBodyBlockStatement() { return bodyBlockStatement; } - -string StatementRepeat::toString(int indent) { - string value; - for (int ind=0; indtoString(0), ", "; - if (preConditionExpression != nullptr) - value += preConditionExpression->toString(0) + ", "; - if (postConditionExpression != nullptr) - value += postConditionExpression->toString(0); - value += "):\n"; - value += bodyBlockStatement->toString(indent+1); - return value; -} \ No newline at end of file diff --git a/src/Parser/Statement/StatementRepeat.h b/src/Parser/Statement/StatementRepeat.h index 399a8c8..c85de7d 100644 --- a/src/Parser/Statement/StatementRepeat.h +++ b/src/Parser/Statement/StatementRepeat.h @@ -16,5 +16,4 @@ public: shared_ptr getPreConditionExpression(); shared_ptr getPostConditionExpression(); shared_ptr getBodyBlockStatement(); - string toString(int indent) override; }; \ No newline at end of file diff --git a/src/Parser/Statement/StatementReturn.cpp b/src/Parser/Statement/StatementReturn.cpp index ce83b08..609db65 100644 --- a/src/Parser/Statement/StatementReturn.cpp +++ b/src/Parser/Statement/StatementReturn.cpp @@ -8,18 +8,3 @@ Statement(StatementKind::RETURN), expression(expression) { } shared_ptr StatementReturn::getExpression() { return expression; } - -string StatementReturn::toString(int indent) { - string value; - for (int ind=0; indtoString(indent+1); - } - value += "\n"; - return value; -} \ No newline at end of file diff --git a/src/Parser/Statement/StatementReturn.h b/src/Parser/Statement/StatementReturn.h index 73160a5..fca4ffe 100644 --- a/src/Parser/Statement/StatementReturn.h +++ b/src/Parser/Statement/StatementReturn.h @@ -9,5 +9,4 @@ private: public: StatementReturn(shared_ptr expression); shared_ptr getExpression(); - string toString(int indent) override; }; \ No newline at end of file diff --git a/src/Parser/Statement/StatementVariable.cpp b/src/Parser/Statement/StatementVariable.cpp index a6353ac..c188af3 100644 --- a/src/Parser/Statement/StatementVariable.cpp +++ b/src/Parser/Statement/StatementVariable.cpp @@ -29,17 +29,3 @@ ValueType StatementVariable::getValueType() { shared_ptr StatementVariable::getExpression() { return expression; } - -string StatementVariable::toString(int indent) { - string value; - for (int ind=0; indtoString(indent+1); - value += "\n"; - return value; -} \ No newline at end of file diff --git a/src/Parser/Statement/StatementVariable.h b/src/Parser/Statement/StatementVariable.h index dc98b7d..5e3b7c0 100644 --- a/src/Parser/Statement/StatementVariable.h +++ b/src/Parser/Statement/StatementVariable.h @@ -13,5 +13,4 @@ public: string getName(); ValueType getValueType(); shared_ptr getExpression(); - string toString(int indent) override; }; \ No newline at end of file