Je suis en train de programmer un lexer en C et j'ai lu quelque part au sujet du fichier d'en-tête tokens.h
. C'est ici? Si oui, quelle est son utilisation?à quoi sert tokens.h quand je programme une lexer?
0
A
Répondre
1
tokens.h
est un fichier généré par ou bison
qui contient une liste de jetons dans votre grammaire.
Votre fichier d'entrée yacc
/bison
peut contenir des déclarations symboliques comme:
%token INTEGER
%token ID
%token STRING
%token SPACE
L'exécution de ce fichier par yacc
/bison
se traduira par un fichier tokens.h
qui contient les définitions de préprocesseur pour ces jetons:
/* Something like this... */
#define INTEGER (1)
#define ID (2)
#define STRING (3)
0
Probablement, tokens.h
est un fichier généré par le générateur d'analyseur syntaxique (Yacc/Bison) contenant des définitions de jeton de sorte que vous pouvez retourner tok ens du lexer à l'analyseur.
Avec Lex/Flex et Yacc/Bison, il fonctionne comme ceci:
parser.y
:
%token FOO
%token BAR
%%
start: FOO BAR;
%%
lexer.l
:
%{
#include "tokens.h"
%}
%%
foo {return FOO;}
bar {return BAR;}
%%
Questions connexes
- 1. À quoi sert __gxx_personality_v0?
- 2. À quoi sert MyAssembly.XmlSerializers.dll?
- 3. System.Web.Abstractions: à quoi sert-il?
- 4. à quoi sert un manifeste?
- 5. À quoi sert l'opérateur de substitution Perl?
- 6. À quoi sert la propriété AppDomainSetup.SandboxInterop?
- 7. $$ dans jQuery, à quoi cela sert-il?
- 8. À quoi sert la variable d'environnement XDG_SESSION_COOKIE?
- 9. À quoi sert le dossier obj?
- 10. À quoi sert Reflection dans .NET?
- 11. À quoi sert le paramètre Neutral Language?
- 12. À quoi sert "strip" (application GCC)?
- 13. À quoi sert l'expression régulière/^ \ s * $/do?
- 14. Dans Active Directory, à quoi sert mailNickname?
- 15. À quoi sert l'observation variable dans une classe Java?
- 16. A quoi sert vraiment EditorReuseAttribute?
- 17. À quoi sert la collection TempData dans asp.net MVC?
- 18. A quoi sert l'indirection multiple en C++?
- 19. À quoi sert d'utiliser un cadre de journalisation?
- 20. à quoi sert le sel jeton anti-falsification?
- 21. À quoi sert le dernier élément d'une liste dans Scheme?
- 22. À quoi sert la directive du compilateur @package dans Cocoa?
- 23. ASP.NET MVC, À quoi sert le dossier Modèles?
- 24. À quoi sert le paramètre de chemin HHOJSID URI?
- 25. À quoi sert ModelState.IsValid dans ASP.NET MVC dans NerdDinner?
- 26. À quoi sert le message WM_REFLECT de l'API WIN32?
- 27. Officiellement, à quoi sert le nom de fichier?
- 28. SQL Server et le compte Invité - à quoi sert-il?
- 29. À quoi sert "string [] args" dans la classe Main?
- 30. À quoi sert le fichier .cs sous MyDataContext.dbml?
alors comment suis-je censé l'utiliser .. Avez-vous des liens? – Hick
Utilisez-vous flex? –
non je ne suis pas. Je programme ma propre lex. pouvez-vous recommander des livres à ce sujet? – Hick