def visitExpr(self, ctx: MPParser.ExprContext): if ctx.getChildCount() == 1: return self.visit(ctx.expr1()) if ctx.AND() and ctx.THEN(): return BinaryOp("andthen", self.visit(ctx.expr()), self.visit(ctx.expr1())) elif ctx.OR() and ctx.ELSE(): return BinaryOp("orelse", self.visit(ctx.expr()), self.visit(ctx.expr1()))
def visitExpr(self, ctx: MPParser.ExprContext): if ctx.getChildCount() == 1: return self.visit(ctx.expr1()) else: if ctx.ANDTHEN(): return BinaryOp('andthen', self.visit(ctx.expr()), self.visit(ctx.expr1())) else: return BinaryOp('orelse', self.visit(ctx.expr()), self.visit(ctx.expr1()))
def visitExpr(self, ctx: MPParser.ExprContext): if ctx.getChildCount() == 1: return self.visit(ctx.expr1()) else: if ctx.AND() and ctx.THEN(): op = "andthen" else: op = "orelse" return BinaryOp(op, self.visit(ctx.expr()), self.visit(ctx.expr1()))