Working on #48 : Added BaseExprParser and BaseNodeParser.py

This commit is contained in:
2021-03-10 21:09:09 +01:00
parent 998ea160be
commit 9c4991923e
18 changed files with 317 additions and 198 deletions
+6 -1
View File
@@ -33,6 +33,7 @@ class BnfDefinitionParser(BaseParser):
self.context = None
self.source = ""
self.sheerka = None
self.error_sink = []
def __eq__(self, other):
if not isinstance(other, BnfDefinitionParser):
@@ -60,6 +61,10 @@ class BnfDefinitionParser(BaseParser):
self.next_token()
return error
@property
def has_error(self):
return len(self.error_sink) > 0
def get_token(self) -> Token:
return self._current
@@ -123,7 +128,7 @@ class BnfDefinitionParser(BaseParser):
False,
context.sheerka.new(BuiltinConcepts.ERROR, body=[e]))
value = self.get_return_value_body(context.sheerka, self.source, tree, tree)
value = self.get_return_value_body(context.sheerka, self.source, tree, tree, self.error_sink)
ret = self.sheerka.ret(
self.name,