Changed naming
This commit is contained in:
@@ -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));
|
||||
|
||||
@@ -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));
|
||||
|
||||
@@ -15,7 +15,7 @@ enum class ExpressionKind {
|
||||
UNARY,
|
||||
BINARY,
|
||||
IF_ELSE,
|
||||
VAR,
|
||||
VARIABLE,
|
||||
CALL,
|
||||
BLOCK
|
||||
};
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user