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)
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())
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)
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)
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())
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())