Added expression statement

This commit is contained in:
Rafał Grodziński
2025-06-01 11:37:01 +09:00
parent 28e892ca12
commit 265ce4c94d
5 changed files with 71 additions and 13 deletions

View File

@@ -1,10 +1,24 @@
#include "Statement.h"
Statement::Statement(Kind kind): kind(kind) {
Statement::Statement(Kind kind, Token token, shared_ptr<Expression> expression): kind(kind), token(token), expression(expression) {
}
shared_ptr<Expression> Statement::getExpression() {
return expression;
}
Token Statement::getToken() {
return token;
}
bool Statement::isValid() {
return kind != Statement::Kind::INVALID;
}
string Statement::toString() {
switch (kind) {
case EXPRESSION:
return expression->toString();
case INVALID:
return "INVALID";
}