예제 #1
0
 static int Parse(Testgen.Parser.Exp.Op val)
 {
     switch (val.Item1)
     {
         case ":":
         case "+":
             return EvaluatePlus(val);
         default:
             return 0;
     }
 }
예제 #2
0
 static int Parse(Testgen.Parser.Exp val)
 {
     var idval = val as Testgen.Parser.Exp.IDVal;
     if (idval != null)
     {
         return Parse(idval);
     }
     var opval = val as Testgen.Parser.Exp.Op;
     if (opval != null)
     {
         return Parse(opval);
     }
     return 12;
 }
예제 #3
0
 static int Parse(Testgen.Parser.Exp.IDVal val)
 {
     return symbolTable[val.Item];
 }
예제 #4
0
 static int EvaluatePlus(Testgen.Parser.Exp.Op val)
 {
     return Parse(val.Item2) + Parse(val.Item3);
     //return Parse(val.Item2) + Parse(val.Item3);
 }