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.22 YYKEYS

Cette structure contient un des mots-clés reconnus par YY_lex() et YY_lex2() lors de l'analyse d'un texte. Un tableau de structures de ce type est passé à YY_open().

typedef struct _yykeys {
char *yk_word; /* keyword */
int yk_def; /* define */
} YYKEYS;

Exemple

    /* Table des mots-clés */
YYKEYS MY_KEYWS[] = {
"ADRESSE", 1,
"CHAFF", 2,
"CODEPOST", 3,
"NOM", 4,
"PRENOM", 5
};

...

yy = YY_open(filename, MY_KEYWS,
sizeof(MY_KEYWS) / sizeof(YYKEYS), YY_FILE);

La table des mots-clés ne peut pas se terminer par un 0, l'utilisateur doit en fournir la taille (voir dans l'exemple). De plus, cette table doit être présentée par l'utilisateur dans l'ordre alphabétique. Ceci peut être aisément effectué par exemple par l'instruction suivante :

    qsort(MY_KEYWS, sizeof(MY_KEYWS) / sizeof(YYKEYS),
sizeof(YYKEYS), YY_strcmp);

où YY_strcmp() est une fonction de comparaison adéquate définie dans s_yy.h

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