Added first version of DebugManager. Implemented draft of the rule engine

This commit is contained in:
2020-11-20 13:41:45 +01:00
parent cd066881b4
commit 315f8ea09b
156 changed files with 8388 additions and 2852 deletions
@@ -28,6 +28,9 @@ class UpdateFunctionsParametersEvaluator(OneReturnValueEvaluator):
super().__init__(self.NAME, [BuiltinConcepts.AFTER_EVALUATION], 79)
self.enabled = False
def reset(self):
self.enabled = False
def matches(self, context, return_value):
"""
True if the return value is the successful result of PythonEvaluator
@@ -88,14 +91,14 @@ class UpdateFunctionsParametersEvaluator(OneReturnValueEvaluator):
@staticmethod
def get_function(node):
if len(node.children) == 2 and \
isinstance(node.children[0], Name) and \
isinstance(node.children[1], PythonNode) and \
node.children[1].type == "trailer" and \
len(node.children[1].children) >= 2 and \
isinstance(node.children[1].children[0], Operator) and \
node.children[1].children[0].value == "(" and \
isinstance(node.children[1].children[-1], Operator) and \
node.children[1].children[-1].value == ")":
isinstance(node.children[0], Name) and \
isinstance(node.children[1], PythonNode) and \
node.children[1].type == "trailer" and \
len(node.children[1].children) >= 2 and \
isinstance(node.children[1].children[0], Operator) and \
node.children[1].children[0].value == "(" and \
isinstance(node.children[1].children[-1], Operator) and \
node.children[1].children[-1].value == ")":
name = node.children[0].value
if len(node.children[1].children) == 2:
params = []