Ejemplo n.º 1
0
 def visitExp6(self, ctx:MCParser.Exp6Context):
     if (ctx.getChildCount() == 1):
         return self.visit(ctx.exp7())
     left = self.visit(ctx.exp6())
     right = self.visit(ctx.exp7())
     op = ctx.getChild(1).getText()
     return BinaryOp(op,left,right)
Ejemplo n.º 2
0
 def visitExp6(self, ctx: MCParser.Exp6Context):
     if ctx.getChildCount() == 3:
         return BinaryOp(
             ctx.getChild(1).getText(), self.visit(ctx.exp6()),
             self.visit(ctx.exp7()))
     else:
         return self.visit(ctx.exp7())
Ejemplo n.º 3
0
 def visitExp6(self, ctx:MCParser.Exp6Context):
     if (ctx.getChildCount() == 1):
         return self.visit(ctx.exp7())
     else:
         op = ctx.getChild(1).getText()
         exp6 = self.visit(ctx.exp6())
         exp7 = self.visit(ctx.exp7()) 
         return BinaryOp(op,exp6,exp7)
Ejemplo n.º 4
0
 def visitExp6(self, ctx: MCParser.Exp6Context):
     '''exp6: ( SUB | NOT ) exp6 | exp7 ;'''
     if ctx.getChildCount() == 1:
         return self.visit(ctx.exp7())
     else:
         right = self.visit(ctx.exp6())
         op = ctx.SUB().getText() if ctx.SUB() else ctx.NOT().getText()
         return UnaryOp(op, right)
Ejemplo n.º 5
0
 def visitExp6(self, ctx: MCParser.Exp6Context):
     #exp6: exp6 (DIV|MUL|MOD) exp7 | exp7;
     if ctx.getChildCount() == 3:
         if ctx.DIV():
             return BinaryOp(ctx.DIV().getText(), self.visit(ctx.exp6()),
                             self.visit(ctx.exp7()))
         if ctx.MUL():
             return BinaryOp(ctx.MUL().getText(), self.visit(ctx.exp6()),
                             self.visit(ctx.exp7()))
         if ctx.MOD():
             return BinaryOp(ctx.MOD().getText(), self.visit(ctx.exp6()),
                             self.visit(ctx.exp7()))
     else:
         return self.visit(ctx.exp7())
Ejemplo n.º 6
0
 def visitExp6(self, ctx: MCParser.Exp6Context):
     return BinaryOp(self.visit(ctx.op6()), self.visit(ctx.exp6()),self.visit(ctx.exp7())) if ctx.getChildCount() == 3 \
         else self.visit(ctx.exp7())