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

/** <i>Basisklasse f&uuml;r alle Syntaxregel-Klassen</i> */
 
public abstract class SyntaxRegel 
{
   // Objektreferenzen
	 FormelParser parser;
   protected SyntaxRegel Produktion;
   protected Scanner scanner;
   
	 /** analysiert einen Teilausdruck und liefert bei Erfolg 
	     eine Referenz auf die Wurzel des Teilbaums zur&uuml;ck 
	  */
	 abstract Knoten parse();
   
	 /** M&oum;lichkeit eine Aktion auszuf&uuml;hren, wenn die Syntaxregel durchlaufen wird */
	 abstract void aktion();
   
	 /** Initialisierung der Regel */
	 abstract void initProduktion();
   
	 // Konstruktor
	 SyntaxRegel(FormelParser p) 
   { 
      parser = p; 
      scanner = p.scanner; 
   }
}
