/*
 * SyntaxFaktor.java	01.07.99
 *
 *
 * Beilage zum Buch "Software-Entwurf mit UML"
 * von J.Seemann & J. Wolff von Gudenberg,
 * Springer-Verlag, 1999
 * 
 */

/** <i>Syntaxregel f&uuml;r Faktoren (Details siehe Klasses SyntaxRegel)</i> */

public class SyntaxFaktor extends SyntaxRegel 
{
   public SyntaxFaktor(FormelParser p)  
   {
      super(p);
      Produktion = new SyntaxOperand(p);
   }

   public void initProduktion()  {Produktion.initProduktion(); }

   public Knoten parse() 
   {
      Knoten k = null;

      if (scanner.Symbol == scanner.TT_MINUS)
      {
         // Aktion  
         Knoten k2 = new Konstante(-1);
         Operator k3 = new MultOperator();
         k3.Op1 = k2;         
         scanner.nextSymbol();
         k3.Op2 = Produktion.parse();
         k = k3;
      }
      else k = Produktion.parse();

      return k;
   }

   void aktion() {}
}