Working on #48 : Renamed ExpressionParser.py into LogicalOperatorParser.py

This commit is contained in:
2021-03-08 20:06:17 +01:00
parent 031bd0274e
commit a799ab2bbd
6 changed files with 24 additions and 22 deletions
@@ -12,7 +12,7 @@ from core.sheerka.services.sheerka_service import BaseService
from core.tokenizer import Tokenizer
from core.utils import unstr_concept
from parsers.BaseNodeParser import ConceptNode
from parsers.ExpressionParser import ExpressionParser
from parsers.LogicalOperatorParser import LogicalOperatorParser
from parsers.expressions import TrueifyVisitor
CONCEPT_EVALUATION_STEPS = [
@@ -137,7 +137,7 @@ class SheerkaEvaluateConcept(BaseService):
if concept.get_metadata().where is None or concept.get_metadata().where.strip() == "":
return None
ret = ExpressionParser().parse(context, ParserInput(concept.get_metadata().where))
ret = LogicalOperatorParser().parse(context, ParserInput(concept.get_metadata().where))
if not ret.status:
# TODO: manage invalid where clause
return None
+2 -2
View File
@@ -781,6 +781,6 @@ class SheerkaExecute(BaseService):
desc = desc or f"Parsing expression '{source}'"
with context.push(BuiltinConcepts.PARSE_CODE, source, desc) as sub_context:
parser_input = context.sheerka.services[SheerkaExecute.NAME].get_parser_input(source)
from parsers.ExpressionParser import ExpressionParser
expr_parser = ExpressionParser()
from parsers.LogicalOperatorParser import LogicalOperatorParser
expr_parser = LogicalOperatorParser()
return expr_parser.parse(sub_context, parser_input)
@@ -18,8 +18,9 @@ from core.utils import index_tokens, COLORS, get_text_from_tokens
from evaluators.ConceptEvaluator import ConceptEvaluator
from evaluators.PythonEvaluator import PythonEvaluator, Expando
from parsers.BaseNodeParser import SourceCodeWithConceptNode, ConceptNode, SourceCodeNode
from parsers.ExpressionParser import AndNode, ExpressionParser
from parsers.LogicalOperatorParser import LogicalOperatorParser
from parsers.PythonParser import PythonNode
from parsers.expressions import AndNode
from sheerkarete.conditions import AndConditions
CONCEPTS_ONLY_PARSERS = ["ExactConcept", "Bnf", "Sya", "Sequence"]
@@ -649,7 +650,7 @@ class SheerkaRuleManager(BaseService):
super().__init__(sheerka, order=12)
self._format_rules = None # sorted by priority
self._exec_rules = None # sorted by priority
self.expression_parser = ExpressionParser()
self.expression_parser = LogicalOperatorParser()
def initialize(self):
self.sheerka.bind_service_method(self.create_new_rule, True, visible=False)