From 3c591385edc52f8d54cd927b0f4ead3d4da4a6b2 Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Mon, 17 Mar 2014 00:14:36 +0200 Subject: Comparisons work. --- interpreter.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'interpreter.py') diff --git a/interpreter.py b/interpreter.py index 54a92d7..1123d2a 100644 --- a/interpreter.py +++ b/interpreter.py @@ -725,7 +725,7 @@ class Interpreter(): return self.evaluate_if(cur) elif isinstance(cur, mparser2.IdNode): return self.get_variable(cur.value) - elif isinstance(cur, mparser2.EqualNode): # FIXME, should be comparison + elif isinstance(cur, mparser2.ComparisonNode): return self.evaluate_comparison(cur) elif isinstance(cur, mparser2.ArrayNode): return self.evaluate_arraystatement(cur) @@ -1310,8 +1310,8 @@ class Interpreter(): return False def evaluate_comparison(self, node): - v1 = self.evaluate_statement(node.get_first()) - v2 = self.evaluate_statement(node.get_second()) + v1 = self.evaluate_statement(node.left) + v2 = self.evaluate_statement(node.right) if self.is_elementary_type(v1): val1 = v1 else: @@ -1323,9 +1323,9 @@ class Interpreter(): if type(val1) != type(val2): raise InterpreterException('Comparison of different types %s and %s.' % (str(type(val1)), str(type(val2)))) - if node.get_ctype() == '==': + if node.ctype == '==': return val1 == val2 - elif node.get_ctype() == '!=': + elif node.ctype == '!=': return val1 != val2 else: raise InvalidCode('You broke me.') -- cgit v1.1