Added first version of DebugManager. Implemented draft of the rule engine
This commit is contained in:
@@ -8,7 +8,7 @@ from parsers.BaseParser import UnexpectedTokenErrorNode
|
||||
from parsers.BnfNodeParser import StrMatch, Optional, ZeroOrMore, OrderedChoice, Sequence, \
|
||||
OneOrMore, ConceptExpression
|
||||
from parsers.BnfNodeParser import BnfNodeParser
|
||||
from parsers.BnfParser import BnfParser, UnexpectedEndOfFileError
|
||||
from parsers.BnfDefinitionParser import BnfDefinitionParser, UnexpectedEndOfFileError
|
||||
|
||||
from tests.TestUsingMemoryBasedSheerka import TestUsingMemoryBasedSheerka
|
||||
|
||||
@@ -27,7 +27,7 @@ def update_concepts_ids(sheerka, parsing_expression):
|
||||
if isinstance(parsing_expression, ConceptExpression):
|
||||
if not parsing_expression.concept.id:
|
||||
concept = sheerka.get_by_key(parsing_expression.concept.key)
|
||||
parsing_expression.concept.metadata.id = concept.id
|
||||
parsing_expression.concept.get_metadata().id = concept.id
|
||||
|
||||
for pe in parsing_expression.elements:
|
||||
update_concepts_ids(sheerka, pe)
|
||||
@@ -40,7 +40,7 @@ class TestBnfParser(TestUsingMemoryBasedSheerka):
|
||||
|
||||
def init_parser(self, *concepts):
|
||||
sheerka, context, *updated = self.init_concepts(*concepts, singleton=True)
|
||||
parser = BnfParser()
|
||||
parser = BnfDefinitionParser()
|
||||
|
||||
return sheerka, context, parser, *updated
|
||||
|
||||
@@ -177,10 +177,10 @@ class TestBnfParser(TestUsingMemoryBasedSheerka):
|
||||
sheerka, context, regex_parser, foo, bar = self.init_parser("foo", "bar")
|
||||
|
||||
for concept in [foo, bar]:
|
||||
concept.metadata.definition_type = DEFINITION_TYPE_BNF
|
||||
concept.get_metadata().definition_type = DEFINITION_TYPE_BNF
|
||||
|
||||
foo.bnf = regex_parser.parse(context, "'twenty' | 'thirty'").value.value
|
||||
bar.bnf = regex_parser.parse(context, "foo ('one' | 'two')").value.value
|
||||
foo.set_bnf(regex_parser.parse(context, "'twenty' | 'thirty'").value.value)
|
||||
bar.set_bnf(regex_parser.parse(context, "foo ('one' | 'two')").value.value)
|
||||
|
||||
bnf_parser = BnfNodeParser()
|
||||
bnf_parser.init_from_concepts(context, [foo, bar])
|
||||
|
||||
Reference in New Issue
Block a user