Changed naming

This commit is contained in:
Rafał Grodziński
2025-08-12 13:11:34 +09:00
parent d159b81c46
commit c0188e16bc
8 changed files with 31 additions and 30 deletions

View File

@@ -229,7 +229,7 @@ void ModuleBuilder::buildAssignment(shared_ptr<StatementAssignment> statement) {
llvm::Value *value = valueForExpression(statement->getValueExpression());
switch (statement->getAssignmentKind()) {
case StatementAssignmentKind::VARIABLE: {
case StatementAssignmentKind::SIMPLE: {
builder->CreateStore(value, alloca);
break;
}
@@ -364,7 +364,7 @@ llvm::Value *ModuleBuilder::valueForExpression(shared_ptr<Expression> expression
return valueForUnary(dynamic_pointer_cast<ExpressionUnary>(expression));
case ExpressionKind::IF_ELSE:
return valueForIfElse(dynamic_pointer_cast<ExpressionIfElse>(expression));
case ExpressionKind::VAR:
case ExpressionKind::VARIABLE:
return valueForVariable(dynamic_pointer_cast<ExpressionVariable>(expression));
case ExpressionKind::CALL:
return valueForCall(dynamic_pointer_cast<ExpressionCall>(expression));

View File

@@ -334,7 +334,7 @@ string Logger::toString(shared_ptr<StatementBlock> statement) {
string Logger::toString(shared_ptr<StatementAssignment> statement) {
switch (statement->getAssignmentKind()) {
case StatementAssignmentKind::VARIABLE:
case StatementAssignmentKind::SIMPLE:
return format("{} <- {}", statement->getIdentifier(), toString(statement->getValueExpression()));
case StatementAssignmentKind::DATA:
return format("{}[{}] <- {}", statement->getIdentifier(), toString(statement->getIndexExpression()), toString(statement->getValueExpression()));
@@ -384,7 +384,7 @@ string Logger::toString(shared_ptr<Expression> expression) {
return toString(dynamic_pointer_cast<ExpressionUnary>(expression));
case ExpressionKind::IF_ELSE:
return toString(dynamic_pointer_cast<ExpressionIfElse>(expression));
case ExpressionKind::VAR:
case ExpressionKind::VARIABLE:
return toString(dynamic_pointer_cast<ExpressionVariable>(expression));
case ExpressionKind::GROUPING:
return toString(dynamic_pointer_cast<ExpressionGrouping>(expression));

View File

@@ -15,7 +15,7 @@ enum class ExpressionKind {
UNARY,
BINARY,
IF_ELSE,
VAR,
VARIABLE,
CALL,
BLOCK
};

View File

@@ -1,13 +1,13 @@
#include "ExpressionVariable.h"
shared_ptr<ExpressionVariable> ExpressionVariable::simpleVariable(string identifier) {
shared_ptr<ExpressionVariable> ExpressionVariable::simple(string identifier) {
shared_ptr<ExpressionVariable> expression = make_shared<ExpressionVariable>();
expression->variableKind = ExpressionVariableKind::SIMPLE;
expression->identifier = identifier;
return expression;
}
shared_ptr<ExpressionVariable> ExpressionVariable::dataVariable(string identifier, shared_ptr<Expression> indexExpression) {
shared_ptr<ExpressionVariable> ExpressionVariable::data(string identifier, shared_ptr<Expression> indexExpression) {
shared_ptr<ExpressionVariable> expression = make_shared<ExpressionVariable>();
expression->variableKind = ExpressionVariableKind::DATA;
expression->identifier = identifier;
@@ -15,7 +15,7 @@ shared_ptr<ExpressionVariable> ExpressionVariable::dataVariable(string identifie
return expression;
}
shared_ptr<ExpressionVariable> ExpressionVariable::blobVariable(string identifier, string memberName) {
shared_ptr<ExpressionVariable> ExpressionVariable::blob(string identifier, string memberName) {
shared_ptr<ExpressionVariable> expression = make_shared<ExpressionVariable>();
expression->variableKind = ExpressionVariableKind::BLOB;
expression->identifier = identifier;
@@ -24,7 +24,7 @@ shared_ptr<ExpressionVariable> ExpressionVariable::blobVariable(string identifie
}
ExpressionVariable::ExpressionVariable():
Expression(ExpressionKind::VAR, nullptr) { }
Expression(ExpressionKind::VARIABLE, nullptr) { }
ExpressionVariableKind ExpressionVariable::getVariableKind() {
return variableKind;

View File

@@ -14,9 +14,9 @@ private:
string memberName;
public:
static shared_ptr<ExpressionVariable> simpleVariable(string identifer);
static shared_ptr<ExpressionVariable> dataVariable(string identifier, shared_ptr<Expression> indexExpression);
static shared_ptr<ExpressionVariable> blobVariable(string identifier, string memberName);
static shared_ptr<ExpressionVariable> simple(string identifer);
static shared_ptr<ExpressionVariable> data(string identifier, shared_ptr<Expression> indexExpression);
static shared_ptr<ExpressionVariable> blob(string identifier, string memberName);
ExpressionVariable();
ExpressionVariableKind getVariableKind();

View File

@@ -495,7 +495,7 @@ shared_ptr<Statement> Parser::matchStatementAssignment() {
case ParseeResultsGroupKind::SUCCESS: {
string identifier = resultsGroup.getResults().at(0).getToken()->getLexme();
shared_ptr<Expression> valueExpression = resultsGroup.getResults().at(1).getExpression();
return StatementAssignment::variableAssignment(identifier, valueExpression);
return StatementAssignment::simple(identifier, valueExpression);
}
case ParseeResultsGroupKind::NO_MATCH:
break;
@@ -525,7 +525,7 @@ shared_ptr<Statement> Parser::matchStatementAssignment() {
string identifier = resultsGroup.getResults().at(0).getToken()->getLexme();
shared_ptr<Expression> indexExpression = resultsGroup.getResults().at(1).getExpression();
shared_ptr<Expression> valueExpression = resultsGroup.getResults().at(2).getExpression();
return StatementAssignment::dataAssignment(identifier, indexExpression, valueExpression);
return StatementAssignment::data(identifier, indexExpression, valueExpression);
}
case ParseeResultsGroupKind::NO_MATCH:
break;
@@ -554,7 +554,7 @@ shared_ptr<Statement> Parser::matchStatementAssignment() {
string identifier = resultsGroup.getResults().at(0).getToken()->getLexme();
string memberName = resultsGroup.getResults().at(1).getToken()->getLexme();
shared_ptr<Expression> valueExpression = resultsGroup.getResults().at(2).getExpression();
return StatementAssignment::blobAssignment(identifier, memberName, valueExpression);
return StatementAssignment::blob(identifier, memberName, valueExpression);
}
case ParseeResultsGroupKind::NO_MATCH:
break;
@@ -832,8 +832,8 @@ shared_ptr<Expression> Parser::matchExpressionVariable() {
switch (resultsGroup.getKind()) {
case ParseeResultsGroupKind::SUCCESS: {
string identifier = resultsGroup.getResults().at(0).getToken()->getLexme();
shared_ptr<Expression> indexExpression = indexExpression = resultsGroup.getResults().at(1).getExpression();
return ExpressionVariable::dataVariable(identifier, indexExpression);
shared_ptr<Expression> indexExpression = resultsGroup.getResults().at(1).getExpression();
return ExpressionVariable::data(identifier, indexExpression);
}
case ParseeResultsGroupKind::NO_MATCH:
break;
@@ -858,7 +858,7 @@ shared_ptr<Expression> Parser::matchExpressionVariable() {
case ParseeResultsGroupKind::SUCCESS: {
string identifier = resultsGroup.getResults().at(0).getToken()->getLexme();
string memberName = resultsGroup.getResults().at(1).getToken()->getLexme();
return ExpressionVariable::blobVariable(identifier, memberName);
return ExpressionVariable::blob(identifier, memberName);
}
case ParseeResultsGroupKind::NO_MATCH:
break;
@@ -879,7 +879,7 @@ shared_ptr<Expression> Parser::matchExpressionVariable() {
switch (resultsGroup.getKind()) {
case ParseeResultsGroupKind::SUCCESS: {
string identifier = resultsGroup.getResults().at(0).getToken()->getLexme();
return ExpressionVariable::simpleVariable(identifier);
return ExpressionVariable::simple(identifier);
}
case ParseeResultsGroupKind::NO_MATCH:
break;

View File

@@ -1,17 +1,14 @@
#include "StatementAssignment.h"
StatementAssignment::StatementAssignment():
Statement(StatementKind::ASSIGNMENT) { }
shared_ptr<StatementAssignment> StatementAssignment::variableAssignment(string identifier, shared_ptr<Expression> valueExpression) {
shared_ptr<StatementAssignment> StatementAssignment::simple(string identifier, shared_ptr<Expression> valueExpression) {
shared_ptr<StatementAssignment> statement = make_shared<StatementAssignment>();
statement->assignmentKind = StatementAssignmentKind::VARIABLE;
statement->assignmentKind = StatementAssignmentKind::SIMPLE;
statement->identifier = identifier;
statement->valueExpression = valueExpression;
return statement;
}
shared_ptr<StatementAssignment> StatementAssignment::dataAssignment(string identifier, shared_ptr<Expression> indexExpression, shared_ptr<Expression> valueExpression) {
shared_ptr<StatementAssignment> StatementAssignment::data(string identifier, shared_ptr<Expression> indexExpression, shared_ptr<Expression> valueExpression) {
shared_ptr<StatementAssignment> statement = make_shared<StatementAssignment>();
statement->assignmentKind = StatementAssignmentKind::DATA;
statement->identifier = identifier;
@@ -20,7 +17,7 @@ shared_ptr<StatementAssignment> StatementAssignment::dataAssignment(string ident
return statement;
}
shared_ptr<StatementAssignment> StatementAssignment::blobAssignment(string identifier, string memberName, shared_ptr<Expression> valueExpression) {
shared_ptr<StatementAssignment> StatementAssignment::blob(string identifier, string memberName, shared_ptr<Expression> valueExpression) {
shared_ptr<StatementAssignment> statement = make_shared<StatementAssignment>();
statement->assignmentKind = StatementAssignmentKind::BLOB;
statement->identifier = identifier;
@@ -29,6 +26,9 @@ shared_ptr<StatementAssignment> StatementAssignment::blobAssignment(string ident
return statement;
}
StatementAssignment::StatementAssignment():
Statement(StatementKind::ASSIGNMENT) { }
StatementAssignmentKind StatementAssignment::getAssignmentKind() {
return assignmentKind;
}

View File

@@ -3,7 +3,7 @@
class Expression;
enum class StatementAssignmentKind {
VARIABLE,
SIMPLE,
DATA,
BLOB
};
@@ -17,10 +17,11 @@ private:
shared_ptr<Expression> valueExpression;
public:
static shared_ptr<StatementAssignment> simple(string identifier, shared_ptr<Expression> valueExpression);
static shared_ptr<StatementAssignment> data(string identifier, shared_ptr<Expression> indexExpression, shared_ptr<Expression> valueExpression);
static shared_ptr<StatementAssignment> blob(string identifier, string memberName, shared_ptr<Expression> valueExpression);
StatementAssignment();
static shared_ptr<StatementAssignment> variableAssignment(string identifier, shared_ptr<Expression> valueExpression);
static shared_ptr<StatementAssignment> dataAssignment(string identifier, shared_ptr<Expression> indexExpression, shared_ptr<Expression> valueExpression);
static shared_ptr<StatementAssignment> blobAssignment(string identifier, string memberName, shared_ptr<Expression> valueExpression);
StatementAssignmentKind getAssignmentKind();
string getIdentifier();
shared_ptr<Expression> getIndexExpression();