From e871e86448b5ae3773dade56287cf47ce82f8258 Mon Sep 17 00:00:00 2001
From: Stephan Seitz <stephan.seitz@fau.de>
Date: Tue, 24 Sep 2019 14:12:25 +0200
Subject: [PATCH] Add __hash__ and __eq__ to CustomCodeNode

---
 pystencils/backends/cbackend.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/pystencils/backends/cbackend.py b/pystencils/backends/cbackend.py
index 4e19fd67b..e46e89562 100644
--- a/pystencils/backends/cbackend.py
+++ b/pystencils/backends/cbackend.py
@@ -132,6 +132,12 @@ class CustomCodeNode(Node):
     def undefined_symbols(self):
         return self._symbols_read - self._symbols_defined
 
+    def __eq___(self, other):
+        return self._code == other._code
+
+    def __hash__(self):
+        return hash(self._code)
+
 
 class PrintNode(CustomCodeNode):
     # noinspection SpellCheckingInspection
@@ -434,6 +440,7 @@ class CustomSympyPrinter(CCodePrinter):
             condition=self._print(var) + ' <= ' + self._print(end)  # if start < end else '>='
         )
         return code
+
     _print_Max = C89CodePrinter._print_Max
     _print_Min = C89CodePrinter._print_Min
 
-- 
GitLab