Explorar o código

Added possibility to overrite 'construct_function'.

Taddeus Kroes %!s(int64=14) %!d(string=hai) anos
pai
achega
775db0cb2c
Modificáronse 1 ficheiros con 10 adicións e 1 borrados
  1. 10 1
      line.py

+ 10 - 1
line.py

@@ -203,7 +203,16 @@ def generate_line(root):
                 else:
                     content[node] = construct_nary(node)
             else:
-                content[node] = construct_function(node)
+                result = None
+
+                if hasattr(node, 'construct_function'):
+                    children = [content[c] for c in node]
+                    result = node.construct_function(children)
+
+                if result == None:
+                    result = construct_function(node)
+
+                content[node] = result
 
             # Add negations
             content[node] = '-' * node.negated + content[node]