文法内のトークンの行番号をどのように取得すればよいのでしょうか。次の文法があるとします。
S : expr MINUS expr { $$ = $1 -$3; }
;
MINUS トークンの行番号を取得するには? 私は jison 内でレクサーを使用していませんが、レクサーをオーバーライドして lex ファイルから渡します。
parser.lexer = {
lex: function() {
var token = "MINUS";
parser.lexer.yytext = "...";
parser.lexer.yylineno = xx;
return token;
}
}
呼び出すことができることに気付きyylineno
ましたが、文法内の異なるトークンに異なる行番号があり、jison ファイル内の特定のトークンの行番号のみが必要な場合はどうでしょうか。多分何かのような$1.yylineno
?どうもありがとうございました!