I can manage infinite recursion when building concept
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
from core.sheerka.Sheerka import ExecutionContext
|
||||
from core.sheerka_logger import get_logger
|
||||
|
||||
|
||||
class BaseEvaluator:
|
||||
@@ -14,7 +13,7 @@ class BaseEvaluator:
|
||||
# self.init_log = get_logger("init." + self.PREFIX + self.__class__.__name__)
|
||||
# self.verbose_log = get_logger("verbose." + self.PREFIX + self.__class__.__name__)
|
||||
|
||||
self.name = self.PREFIX + name
|
||||
self.name = BaseEvaluator.get_name(name)
|
||||
self.short_name = name
|
||||
self.steps = steps
|
||||
self.priority = priority
|
||||
@@ -23,9 +22,25 @@ class BaseEvaluator:
|
||||
def __repr__(self):
|
||||
return f"{self.name} ({self.priority})"
|
||||
|
||||
def __eq__(self, other):
|
||||
if not isinstance(other, BaseEvaluator):
|
||||
return False
|
||||
|
||||
return self.name == other.name and \
|
||||
self.priority == other.priority and \
|
||||
self.steps == other.steps and \
|
||||
self.enabled == other.enabled
|
||||
|
||||
def __hash__(self):
|
||||
return hash((self.name, self.priority, self.steps, self.enabled))
|
||||
|
||||
def reset(self):
|
||||
pass
|
||||
|
||||
@staticmethod
|
||||
def get_name(name):
|
||||
return BaseEvaluator.PREFIX + name
|
||||
|
||||
|
||||
class OneReturnValueEvaluator(BaseEvaluator):
|
||||
"""
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from core.builtin_concepts import BuiltinConcepts, BuiltinOutConcepts
|
||||
from core.builtin_concepts_ids import BuiltinConcepts, BuiltinOutConcepts
|
||||
from evaluators.BaseEvaluator import AllReturnValuesEvaluator
|
||||
from parsers.BaseParser import BaseParser
|
||||
|
||||
|
||||
Reference in New Issue
Block a user