From ab07efcb86b7dd5c5095df51723cbe43dfc53046 Mon Sep 17 00:00:00 2001 From: Maxwell Jeffress Date: Fri, 25 Apr 2025 10:40:18 +1000 Subject: [PATCH] Half working code --- mx | Bin 322216 -> 326312 bytes src/Interpreter.cpp | 12 ++++++++++++ src/Parser.cpp | 1 + src/SyntaxError.cpp | 2 +- src/common.h | 2 +- test.mx | 5 ++++- 6 files changed, 19 insertions(+), 3 deletions(-) diff --git a/mx b/mx index 3adb443d86d150d14ee43bb691c15a636b95546f..c052949ed9dadb3031138ba2115fa1ae39806908 100755 GIT binary patch delta 72121 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 delta 70205 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 ~c{t#ztTSv0 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 U7KgHzJ*-A+?xvFd_6Ym`0G{{&6951J diff --git a/src/Interpreter.cpp b/src/Interpreter.cpp index 0cfa023..5d8bf9d 100644 --- a/src/Interpreter.cpp +++ b/src/Interpreter.cpp @@ -239,6 +239,12 @@ void Interpreter::executeCode(vector tokens) { if (tokens.size() < i + 1) syntaxError.mathTooFewArgs(); if (tokens[i + 1].value.type != valtype::INT) syntaxError.mathTypeMismatch("Expected an int when subtracting from an int"); variables[varName].value = get(variables[varName].value) - get(tokens[i + 1].value.value); + } else if (tokens[i].keyword == keywords::SET) { + if (tokens.size() < i + 1) syntaxError.mathTooFewArgs(); + if (tokens[i + 1].value.type != valtype::INT) syntaxError.mathTypeMismatch("Expected an int when changing an int"); + variables[varName].value = get(tokens[i + 1].value.value); + } else { + syntaxError.mathCannotDoOperationOnType("unknown", "int"); } } else if (variables[varName].type == valtype::DEC) { if (tokens[i].keyword == keywords::INCREMENT) { @@ -253,6 +259,12 @@ void Interpreter::executeCode(vector tokens) { if (tokens.size() < i + 1) syntaxError.mathTooFewArgs(); if (tokens[i + 1].value.type != valtype::DEC) syntaxError.mathTypeMismatch("Expected an dec when subtracting from an dec"); variables[varName].value = get(variables[varName].value) - get(tokens[i + 1].value.value); + } else if (tokens[i].keyword == keywords::SET) { + if (tokens.size() < i + 1) syntaxError.mathTooFewArgs(); + if (tokens[i + 1].value.type != valtype::DEC) syntaxError.mathTypeMismatch("Expected a dec when changing a dec"); + variables[varName].value = get(tokens[i + 1].value.value); + } else { + syntaxError.mathCannotDoOperationOnType("unknown", "dec"); } } } else { diff --git a/src/Parser.cpp b/src/Parser.cpp index 54988d3..2b5666c 100644 --- a/src/Parser.cpp +++ b/src/Parser.cpp @@ -115,6 +115,7 @@ void Parser::processLines() { else if (ct == "-") token.keyword = keywords::SUBTRACT; else if (ct == "*") token.keyword = keywords::MULTIPLY; else if (ct == "/") token.keyword = keywords::DIVIDE; + else if (ct == "=") token.keyword = keywords::SET; else if (ct == "++") token.keyword = keywords::INCREMENT; else if (ct == "--") token.keyword = keywords::DECREMENT; else if (ct == "+=") token.keyword = keywords::ADDTO; diff --git a/src/SyntaxError.cpp b/src/SyntaxError.cpp index cb4aa49..2eb923f 100644 --- a/src/SyntaxError.cpp +++ b/src/SyntaxError.cpp @@ -30,7 +30,7 @@ void SyntaxError::unknownFn() { } void SyntaxError::mathTypeMismatch(string notes) { - cerr << "MathError: cannot add two different types together" << endl; + cerr << "MathError: cannot use two different types together" << endl; if (!notes.empty()) cerr << "Notes: " << notes << endl; exit(1); } diff --git a/src/common.h b/src/common.h index eb402d8..9da9965 100644 --- a/src/common.h +++ b/src/common.h @@ -16,7 +16,7 @@ enum class valtype { enum class keywords { IF, ELSE, WHILE, INT, DEC, STR, BOOL, FUN, RETURN, OPARE, CPARE, OBRAC, CBRAC, - ADDTO, SUBTRACTFROM, MULTIPLYTO, DIVIDEFROM, + SET, ADDTO, SUBTRACTFROM, MULTIPLYTO, DIVIDEFROM, ADD, SUBTRACT, MULTIPLY, DIVIDE, EQUAL, INEQUAL, LESS, GREATER, EQLESS, EQGREATER, INCREMENT, DECREMENT, diff --git a/test.mx b/test.mx index 116f4a7..d3c6c3b 100644 --- a/test.mx +++ b/test.mx @@ -2,4 +2,7 @@ print "dingusify"; let str bingus "heheheha its bingusing time"; print bingus; print 1 + 1; -let int myInt 3; \ No newline at end of file +let int myInt 3; +print myInt; +myInt = 5; +print myInt; \ No newline at end of file