Esempio n. 1
0
        Expr parseFunc(EXPR_TYPE t)
        {
            skipOrError("(");
            var e = parse();

            skipOrError(")");
            return(new Expr(e, null, t));
        }
Esempio n. 2
0
 public Expr(Expr e1, Expr e2, EXPR_TYPE v)
 {
     Children = new List <Expr>();
     Children.Add(e1);
     if (e2 != null)
     {
         Children.Add(e2);
     }
     type = v;
 }
Esempio n. 3
0
        Expr parseFuncMulti(EXPR_TYPE t, int minArgs, int maxArgs)
        {
            int args = 1;

            skipOrError("(");
            var e1 = parse();
            var e  = new Expr(e1, null, t);

            while (skip(","))
            {
                var enext = parse();
                e.Children.Add(enext);
                args++;
            }
            skipOrError(")");
            if (args < minArgs || args > maxArgs)
            {
                err = true;
            }
            return(e);
        }
Esempio n. 4
0
 public Expr(EXPR_TYPE v)
 {
     type = v;
 }
Esempio n. 5
0
 public Expr(EXPR_TYPE v, double vv)
 {
     type  = v;
     value = vv;
 }