4.2 The Lexical Analyzer Function
The lexical analyzer function,
yylex, recognizes tokens from
the input stream and returns them to the parser. Bison does not create
this function automatically; you must write it so that
call it. The function is sometimes referred to as a lexical scanner.
In simple programs,
yylex is often defined at the end of the Bison
grammar file. If
yylex is defined in a separate source file, you
need to arrange for the token-type macro definitions to be available there.
To do this, use the `-d' option when you run Bison, so that it will
write these macro definitions into a separate header file
`name.tab.h' which you can include in the other source files
that need it. See section Invoking Bison.
(line number, etc.) of the token, if the
actions want that.