def visitExp5(self, ctx:MCParser.Exp5Context): if ctx.ADD(): return BinaryOp(ctx.ADD().getText(), self.visitExp5(ctx.exp5()), self.visitExp6(ctx.exp6())) elif ctx.SUB(): return BinaryOp(ctx.SUB().getText(), self.visitExp5(ctx.exp5()), self.visitExp6(ctx.exp6())) else: return self.visitExp6(ctx.exp6())
def visitExp5(self, ctx: MCParser.Exp5Context): # exp5: exp5 (ADD|SUB) exp6 | exp6; if (ctx.ADD()): return BinaryOp(ctx.ADD().getText(), self.visit(ctx.exp5()), self.visit(ctx.exp6())) elif (ctx.SUB()): return BinaryOp(ctx.SUB().getText(), self.visit(ctx.exp5()), self.visit(ctx.exp6())) else: return self.visit(ctx.exp6())
def visitExp5(self, ctx:MCParser.Exp5Context): if (ctx.getChildCount() == 1): return self.visit(ctx.exp6()) left = self.visit(ctx.exp5()) right = self.visit(ctx.exp6()) op = ctx.getChild(1).getText() return BinaryOp(op,left,right)
def visitExp5(self, ctx: MCParser.Exp5Context): if ctx.getChildCount() == 3: return BinaryOp( ctx.getChild(1).getText(), self.visit(ctx.exp5()), self.visit(ctx.exp6())) else: return self.visit(ctx.exp6())
def visitExp5(self, ctx:MCParser.Exp5Context): if (ctx.getChildCount() == 1): return self.visit(ctx.exp6()) else: op = ctx.getChild(1).getText() exp5 = self.visit(ctx.exp5()) exp6 = self.visit(ctx.exp6()) return BinaryOp(op,exp5,exp6)
def visitExp5(self, ctx: MCParser.Exp5Context): '''exp5: exp5 ( DIV | MUL | DIV_INT ) exp6 | exp6 ;''' if ctx.getChildCount() == 1: return self.visit(ctx.exp6()) else: left = self.visit(ctx.exp5()) right = self.visit(ctx.exp6()) if ctx.DIV(): op = ctx.DIV().getText() elif ctx.MUL(): op = ctx.MUL().getText() else: op = ctx.DIV_INT().getText() return BinaryOp(op, left, right)