From 0eb84afebf14b0c56c9f8800aed86249c7f9c0f8 Mon Sep 17 00:00:00 2001 From: augustin64 Date: Tue, 14 Nov 2023 19:48:24 +0100 Subject: [PATCH] Added ++, -- to the interpreter --- src/interpreter.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/interpreter.cpp b/src/interpreter.cpp index d41ff18..7b246a5 100644 --- a/src/interpreter.cpp +++ b/src/interpreter.cpp @@ -82,6 +82,20 @@ EvalResult eval(Node &ast) { return expr; } break; + case NodeType::LIncr: + case NodeType::RIncr: { + Token identifierTok = get(node.children[0]); + string identifier = get(identifierTok.data); + + return node.type == NodeType::LIncr ? ++memory[identifier] : memory[identifier]++; + } + case NodeType::LDecr: + case NodeType::RDecr: { + Token identifierTok = get(node.children[0]); + string identifier = get(identifierTok.data); + + return node.type == NodeType::LDecr ? --memory[identifier] : memory[identifier]--; + } } } else {