MCPcopy Create free account
hub / github.com/RetiredWizard/PyDOS / __logexpr

Method __logexpr

PyBasic/basicparser.py:1385–1402  ·  view source on GitHub ↗

Parses a logical expression

(self)

Source from the content-addressed store, hash-verified

1383 self.__operand_stack.append(left >= right) # Push True or False
1384
1385 def __logexpr(self):
1386 """Parses a logical expression
1387 """
1388 self.__notexpr()
1389
1390 while self.__token.category in [Token.OR, Token.AND]:
1391 savecat = self.__token.category
1392 self.__advance()
1393 self.__notexpr()
1394
1395 right = self.__operand_stack.pop()
1396 left = self.__operand_stack.pop()
1397
1398 if savecat == Token.OR:
1399 self.__operand_stack.append(left or right) # Push True or False
1400
1401 elif savecat == Token.AND:
1402 self.__operand_stack.append(left and right) # Push True or False
1403
1404 def __notexpr(self):
1405 """Parses a logical not expression

Callers 7

__printstmtMethod · 0.95
__assignmentstmtMethod · 0.95
__arrayassignmentstmtMethod · 0.95
__openstmtMethod · 0.95
__inputstmtMethod · 0.95
__factorMethod · 0.95
__ifstmtMethod · 0.95

Calls 2

__notexprMethod · 0.95
__advanceMethod · 0.95

Tested by

no test coverage detected