Exemple #1
0
 void Expression()
 {
     Exp();
     if (StartOf((int)TokenEnum.True))
     {
         Operators op;
         if (la.kind == (int)TokenEnum.Greater)
         {
             Get();
             op = Operators.Greater;
         }
         else if (la.kind == (int)TokenEnum.Lesser)
         {
             Get();
             op = Operators.Lesser;
         }
         else if (la.kind == (int)TokenEnum.Unequal)
         {
             Get();
             op = Operators.Unequal;
         }
         else if (la.kind == (int)TokenEnum.Equals)
         {
             Get();
             op = Operators.Equal;
         }
         else if (la.kind == (int)TokenEnum.Concatenation)
         {
             Get();
             op = Operators.Concatenation;
         }
         else
         {
             op = Operators.InvalidOperator;
             SynErr((int)TokenEnum.InvalidOperator);
         }
         Quadruple.operatorStack.Push(op);
         Exp();
         Quadruple.CreateRelationalQuadruple();
     }
 }