This section summarizes the various values available to the user in the rule actions.
yytextis instead declared `char yytext[YYLMAX]', where
YYLMAXis a macro definition that you can redefine in the first section if you don't like the default value (generally 8KB). Using `%array' results in somewhat slower scanners, but the value of
yytextbecomes immune to calls to `input()' and `unput()', which potentially destroy its value when
yytextis a character pointer. The opposite of `%array' is `%pointer', which is the default. You cannot use `%array' when generating C++ scanner classes (the `-+' flag).
flexreads from. It may be redefined but doing so only makes sense before scanning begins or after an EOF has been encountered. Changing it in the midst of scanning will have unexpected results since
flexbuffers its input; use `yyrestart()' instead. Once scanning terminates because an end-of-file has been seen, you can assign
yyinat the new input file and then call the scanner again to continue scanning.
yyinat the new input file. The switch-over to the new file is immediate (any previously buffered-up input is lost). Note that calling `yyrestart()' with
yyinas an argument thus throws away the current input buffer and continues scanning the same input file.
YY_BUFFER_STATEhandle to the current buffer.
YY_STARTreturns an integer value corresponding to the current start condition. You can subsequently use this value with
BEGINto return to that start condition.