Esempio n. 1
0
        public override int VisitMulDiv([NotNull] ExprParser.MulDivContext context)
        {
            int left  = Visit(context.expr(0));
            int right = Visit(context.expr(1));

            if (context.op.Type == ExprParser.MUL)
            {
                return(left * right);
            }
            else
            {
                Debug.Assert(context.op.Type == ExprParser.DIV);
                return(left / right);
            }
        }
Esempio n. 2
0
 public override Expr VisitMulDiv([NotNull] ExprParser.MulDivContext context)
 {
     return(new FunctionExpr(context.op.Type == ExprParser.MUL ? "*" : "/")
     {
         Arguments = context.expr().Select(Visit).ToArray()
     });
 }