Recursive Descent Parsing III

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

Expr.om
PROCEDURE Constant() : BOOLEAN;
   (* Constant = "0" | "1" | ... | "9" . *)
BEGIN
   IF (sy >= "0") & (sy <= "9") THEN
      GetSy;
      RETURN TRUE
   ELSE
      RETURN FALSE
   END;
END Constant;

*Immer an die konstante Vorausschau von einem Terminal-Symbol denken:

*Zu Beginn jeder Prozedur, die ein Nonterminal repräsentiert, liegt das erste Terminal-Symbol bereits in sy vor.
 
*Bevor die Prozedur für ein anderes Nonterminal aufgerufen wird, muß darauf geachtet werden, ob dafür das erste Terminal-Symbol bereits eingelesen worden ist oder nicht.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1999, 2004 Andreas F. Borchert, in HTML konvertiert am 28.01.2005