Я имею дело с грамматикой PHP и хочу передать моей функции номер строки
У меня есть что-то вроде:
internal_functions_in_yacc:
T_ISSET '(' isset_variables ')'
| T_EMPTY '(' variable ')'
| T_INCLUDE expr { observers.IncludeFound($2); }
| T_INCLUDE_ONCE expr { observers.IncludeFound($2); }
| T_EVAL '(' expr ')'
| T_REQUIRE expr { observers.IncludeFound($2); }
| T_REQUIRE_ONCE expr { observers.IncludeFound($2); }
;
Теперь я хочу передать номер строки, что-то вроде
T_REQUIRE_ONCE expr { observers.IncludeFound($2,$line_number_here); }
Есть ли способ узнать номер строки токена, который анализирует бизон? Или это нужно делать в лексинге?
EDIT
Я обнаружил, что лексирование выполняется с использованием rec2c, а не lex.