![]() ![]() ![]() |
|
Previous: Ecriture des spécifications lexico-syntaxiques
Les descriptions lexicales se trouvent dans le fichier simproc.lecl, listé ci-dessous :
Classes SPACE = SP + HT + NL + FF ; Tokens Comments = -{ SPACE | "%" "%" {^EOL}* EOL }+ ; Context All but Comments ; %ID = LETTER {["_"] (LETTER | DIGIT)}* ; Context All But %ID, %INT; %INT = {DIGIT}+ ; Context All But %ID;
Dans la partie Classes, on définit une classe de caractères SPACE. Elle regroupe les caractères SP (espace), HT (tabulation horizontale), NL (ligne suivante) et FF (saut de page). Cette classe permet de simplifier l'écriture de Comments, dans la partie Tokens.
Dans la partie Tokens, on définit les commentaires et les unités lexicales génériques. Le mot clé Comments est associé à une expression régulière permettant de reconnaître un commentaire. Le - devant l'expression régulière, indique que les commentaires ne seront pas gardés dans l'arbre syntaxique. Les deux terminaux génériques (%ID et %INT), permettent de reconnaître, respectivement, les identificateurs et les entiers.