Beispiel #1
0
 def parse_exp7(lexer):
     exp = ExpParser.parse_exp6(lexer)
     while lexer.look_ahead() == TokenKind.OP_BAND:
         line, op, _ = lexer.get_next_token()
         bor = lua_exp.BinopExp(line, op, exp, ExpParser.parse_exp8(lexer))
         exp = Optimizer.optimize_bitwise_binary_op(bor)
     return exp
Beispiel #2
0
 def parse_exp6(lexer):
     exp = ExpParser.parse_exp5(lexer)
     if lexer.look_ahead() in (TokenKind.OP_SHL, TokenKind.OP_SHR):
         line, op, _ = lexer.get_next_token()
         shx = lua_exp.BinopExp(line, op, exp, ExpParser.parse_exp5(lexer))
         exp = Optimizer.optimize_bitwise_binary_op(shx)
     else:
         return exp
     return exp