Présentation
Documentation
L'équipe
Sérialisation
 
Programmes
Objets
Libs Utilitaires
Libs Internes
   
 
Editeur
Syntaxes
Windows
Versions
   

SCR/AL1 - TOME III. Les librairies utilitaires

4. Le groupe s_yy

4.6 YY_lex (file s_ylex.c:146)

Syntax

YY_lex(yy)
YYFILE *yy;

Description

Lit le prochain élément du texte. Le type est retourné et la valeur est sauvée dans la structure YYFILE. La liste suivante reprend les types possibles et l'élément de la structure YYFILE qui les contient.

Cette fonction appelle d'abord YY_read(). Trois types retournés par YY_read() sont traités par YY_lex().

Si le type retourné par YY_read() est YY_COMMENT, YY_lex() lit l'élément suivant sans retourner de valeur.

Si le type est YY_WORD, YY_lex() commence par mettre le mot en majuscule si YY_CASE_SENSITIVE vaut 1. Ensuite, YY_lex() compare le mot lu avec les mots définis dans la table de YYKEYS passées à l'ouverture du texte (voir YY_open()). Si le mot est trouvé, la valeur de l'entier correspondant à ce mot est retourné. Sinon, la valeur YY_WORD est retournée.

Enfin, si le type est YY_SPECIAL, YY_lex() tente de retrouver le caractère dans la table des YYKEYS et retourne le cas échéant la valeur de l'entier correspondant. Les suites de caractères spéciaux définis dans la table des YYKEYS sont traitées de la même façon : YY_lex() lit tant qu'il trouve un début de séquence correcte dans la table. Ainsi, "??" ou "{" peuvent être des mots-clés.

La table des mots-clés doit être classée par l'utilisateur par ordre alphabétique.

Valeur retournée

le type de l'élément suivant du texte ou la valeur de l'entier correspondant au mot-clé lu dans la table des YYKEYS.

Voir également

YY_read(), YY_unread(), YY_lex2()

4.6.1 File s_ylex.c

YY_lex(yy)
YY_lex2(yy, yykeys, nbkeys)

Copyright © 1998-2015 Jean-Marc Paul and Bernard PAUL - Envoyez vos remarques ou commentaires à bernard@xon.be