Check it after removing nesting
This commit is contained in:
parent
e5f7b1745c
commit
0df6a263e5
@ -273,17 +273,17 @@ class Unary(Node):
|
|||||||
def parse_tokens(expression: List[Union[list, str]]) -> Node:
|
def parse_tokens(expression: List[Union[list, str]]) -> Node:
|
||||||
'''Generates the tree from the tokenized expression
|
'''Generates the tree from the tokenized expression
|
||||||
If no expression is specified then it will create an empty node'''
|
If no expression is specified then it will create an empty node'''
|
||||||
if len(expression) == 0:
|
|
||||||
raise ParserException('Failed to parse empty expression')
|
|
||||||
|
|
||||||
# If the list contains only a list, it will consider the lower level list.
|
# If the list contains only a list, it will consider the lower level list.
|
||||||
# This will allow things like ((((((a))))) to work
|
# This will allow things like ((((((a))))) to work
|
||||||
while len(expression) == 1 and isinstance(expression[0], list):
|
while len(expression) == 1 and isinstance(expression[0], list):
|
||||||
expression = expression[0]
|
expression = expression[0]
|
||||||
|
|
||||||
|
if len(expression) == 0:
|
||||||
|
raise ParserException('Failed to parse empty expression')
|
||||||
|
|
||||||
# The list contains only 1 string. Means it is the name of a relation
|
# The list contains only 1 string. Means it is the name of a relation
|
||||||
if len(expression) == 1:
|
if len(expression) == 1:
|
||||||
|
|
||||||
if not rtypes.is_valid_relation_name(expression[0]):
|
if not rtypes.is_valid_relation_name(expression[0]):
|
||||||
raise ParserException(
|
raise ParserException(
|
||||||
u"'%s' is not a valid relation name" % expression[0])
|
u"'%s' is not a valid relation name" % expression[0])
|
||||||
|
Loading…
Reference in New Issue
Block a user