32 lines
816 B
Python
32 lines
816 B
Python
from smnp.ast.node.access import AccessNode
|
|
from smnp.ast.node.literal import LiteralNode
|
|
from smnp.ast.node.relation import RelationOperatorNode
|
|
from smnp.ast.parser import Parser
|
|
from smnp.token.type import TokenType
|
|
|
|
|
|
class BoolLiteralNode(LiteralNode, AccessNode, RelationOperatorNode):
|
|
def __init__(self, pos):
|
|
super().__init__(pos)
|
|
del self.children[1]
|
|
|
|
@classmethod
|
|
def _getTokenType(cls):
|
|
return TokenType.BOOL
|
|
|
|
@classmethod
|
|
def _parse(cls, input):
|
|
x = Parser.oneOf(
|
|
cls.accessParser(),
|
|
cls.relationParser(),
|
|
cls.literalParser()
|
|
)(input)
|
|
return x
|
|
|
|
@classmethod
|
|
def _accessLhs(cls):
|
|
return cls.literalParser()
|
|
|
|
@classmethod
|
|
def _relationLhs(cls):
|
|
return cls.literalParser() |