yylex
字句解析器(lexical analyzer)関数yylex
は、
入力からトークンを認識し、構文解析器に返します。
Bisonはこの関数を自動的に生成しないので、
yyparse
から呼び出されるようにyylex
を書く必要があります。
関数yylex
は“lexical scanner”と呼ばれることもあります。
単純なプログラムでは、よく文法ファイルの最後でyylex
を
定義します。yylex
が別のソースファイルの中で定義する場合は、
そこでトークン型マクロ定義を使えるように準備する必要があります。
そのためには、‘-d’オプションを指定してBisonを実行してください。
すると、マクロ定義がヘッダファイルname.tab.hに
書き込まれ、それを必要とするソースファイルにインクルードできます。
See Invoking Bison。