DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(flex.info.gz) Yacc

Info Catalog (flex.info.gz) User Values (flex.info.gz) Top (flex.info.gz) Scanner Options
 
 15 Interfacing with Yacc
 ************************
 
 One of the main uses of `flex' is as a companion to the `yacc'
 parser-generator.  `yacc' parsers expect to call a routine named
 `yylex()' to find the next input token.  The routine is supposed to
 return the type of the next token as well as putting any associated
 value in the global `yylval'.  To use `flex' with `yacc', one specifies
 the `-d' option to `yacc' to instruct it to generate the file `y.tab.h'
 containing definitions of all the `%tokens' appearing in the `yacc'
 input.  This file is then included in the `flex' scanner.  For example,
 if one of the tokens is `TOK_NUMBER', part of the scanner might look
 like:
 
 
          %{
          #include "y.tab.h"
          %}
 
          %%
 
          [0-9]+        yylval = atoi( yytext ); return TOK_NUMBER;
 
Info Catalog (flex.info.gz) User Values (flex.info.gz) Top (flex.info.gz) Scanner Options
automatically generated byinfo2html