コード例 #1
0
ファイル: ASTGeneration.py プロジェクト: mazino2d/ppl-course
 def visitExpr1(self, ctx: MCParser.Expr1Context):
     if ctx.OR():
         op = ctx.OR().getText()
         left = self.visitExpr1(ctx.expr1())
         right = self.visitExpr2(ctx.expr2())
         return BinaryOp(op, left, right)
     else:
         return self.visitExpr2(ctx.expr2())
コード例 #2
0
ファイル: ASTGeneration.py プロジェクト: 147phuc23/PPL_ASS
 def visitExpr1(self, ctx: MCParser.Expr1Context):
     return self.visit(ctx.expr2()) if ctx.getChildCount() == 1 else BinaryOp(ctx.OR().getText(), self.visit(ctx.expr1()), self.visit(ctx.expr2()))
コード例 #3
0
ファイル: ASTGeneration.py プロジェクト: trungtinh961/ppl2
 def visitExpr1(self, ctx:MCParser.Expr1Context):
     # expr1 : expr1 OR expr2 | expr2;
     return BinaryOp(ctx.OR().getText(),self.visit(ctx.expr1()),self.visit(ctx.expr2())) if ctx.getChildCount() == 3 else self.visit(ctx.expr2())