def visitExp2(self, ctx: MPParser.Exp2Context): op = "" if ctx.ADDOP(): op = ctx.ADDOP().getText() elif ctx.SUBOP(): op = ctx.SUBOP().getText() elif ctx.OR(): op = ctx.OR().getText() else: return self.visit(ctx.exp3()) return BinaryOp(op, self.visit(ctx.exp2()), self.visit(ctx.exp3()))
def visitExp2(self, ctx: MPParser.Exp2Context): if ctx.exp2(): if ctx.ADD(): return BinaryOp(ctx.ADD().getText(), self.visit(ctx.exp2()), self.visit(ctx.exp3())) elif ctx.SUB(): return BinaryOp(ctx.SUB().getText(), self.visit(ctx.exp2()), self.visit(ctx.exp3())) elif ctx.OR(): return BinaryOp(ctx.OR().getText(), self.visit(ctx.exp2()), self.visit(ctx.exp3())) else: return self.visit(ctx.exp3())