def visitExpr(self, ctx:MPParser.ExprContext): if ctx.AND(): return BinaryOp("andthen", self.visit(ctx.expr()), self.visit(ctx.exp1())) elif ctx.OR(): return BinaryOp("orelse", self.visit(ctx.expr()), self.visit(ctx.exp1())) else: return self.visit(ctx.exp1())
def visitExpr(self, ctx: MPParser.ExprContext): if ctx.getChildCount() == 1: return self.visit(ctx.exp1()) if ctx.AND(): return BinaryOp('andthen', self.visit(ctx.expr()), self.visit(ctx.exp1())) if ctx.OR(): return BinaryOp('orelse', self.visit(ctx.expr()), self.visit(ctx.exp1()))