Working on #48 : Working

This commit is contained in:
2021-03-09 09:33:50 +01:00
parent a799ab2bbd
commit 07f0d3670d
6 changed files with 94 additions and 26 deletions
+22 -9
View File
@@ -13,7 +13,8 @@ from parsers.BaseNodeParser import UnrecognizedTokensNode, SourceCodeNode, RuleN
from parsers.FunctionParser import FunctionNode
from parsers.PythonParser import PythonNode
from parsers.SyaNodeParser import SyaConceptParserHelper
from parsers.expressions import NameExprNode, AndNode, OrNode, NotNode, VariableNode, ComparisonNode, ComparisonType
from parsers.expressions import NameExprNode, AndNode, OrNode, NotNode, VariableNode, ComparisonNode, ComparisonType, \
ParenthesisNode
from sheerkarete.common import V
from sheerkarete.conditions import Condition, AndConditions
@@ -66,56 +67,62 @@ class VAR:
class EQ:
left: object
right: object
source = None
source: str = None
@dataclass
class NEQ:
left: object
right: object
source = None
source: str = None
@dataclass
class GT:
left: object
right: object
source = None
source: str = None
@dataclass
class GTE:
left: object
right: object
source = None
source: str = None
@dataclass
class LT:
left: object
right: object
source = None
source: str = None
@dataclass
class LTE:
left: object
right: object
source = None
source: str = None
@dataclass
class IN:
left: object
right: object
source = None
source: str = None
@dataclass
class NIN: # for NOT INT
left: object
right: object
source = None
source: str = None
@dataclass
class PAREN: # for parenthesis node
node: object
source: str = None
class CC:
@@ -1010,6 +1017,12 @@ def get_expr_node_from_test_node(full_text, test_node):
return ComparisonNode(start, end, full_text_as_tokens[start: end + 1],
node_type, left_node, right_node)
if isinstance(node, PAREN):
value_as_tokens = list(Tokenizer(node.source, yield_eof=False))
start = tokens_index(full_text_as_tokens, value_as_tokens, 0)
end = start + len(value_as_tokens) - 1
return ParenthesisNode(start, end, value_as_tokens, get_expr_node(node.node))
return get_expr_node(test_node)