Ejemplo n.º 1
0
 def visitExp1(self, ctx: MPParser.Exp1Context):
     if ctx.getChildCount() == 1:
         return self.visit(ctx.getChild(0))
     else:
         return BinaryOp(
             ctx.getChild(1).getText(), self.visit(ctx.exp2(0)),
             self.visit(ctx.exp2(1)))
Ejemplo n.º 2
0
 def visitExp1(self, ctx: MPParser.Exp1Context):
     if ctx.getChildCount() == 1:  # exp2
         return self.visit(ctx.exp2(0))
     left = self.visit(ctx.exp2(0))
     right = self.visit(ctx.exp2(1))
     op = ctx.getChild(1).getText()
     return BinaryOp(op, left, right)
 def visitExp1(self, ctx: MPParser.Exp1Context):
     '''exp1: exp2 EQUAL exp2 | exp2 NOTEQUAL exp2 | exp2 LESSTHAN exp2 | exp2 GREATERTHAN exp2 | exp2 LESSEQUAL exp2 | exp2 GREATEREQUAL exp2 | exp2;'''
     return BinaryOp(
         ctx.getChild(1).getText(), self.visit(ctx.exp2(0)),
         self.visit(
             ctx.exp2(1))) if ctx.getChildCount() == 3 else self.visit(
                 ctx.exp2(0))
Ejemplo n.º 4
0
    def visitExp1(self, ctx: MPParser.Exp1Context):
        if ctx.getChildCount() == 1:
            return self.visit(ctx.exp2(0))

        op = ctx.getChild(1).getText()
        exp2_1 = self.visit(ctx.exp2(0))
        exp2_2 = self.visit(ctx.exp2(1))
        return BinaryOp(op, exp2_1, exp2_2)