例如,我yy::parser::symbol_type
通过以下方式返回 flex 规则:
[a-zA-Z][a-zA-Z0-9_]* return yy::parser::make_ID(yytext);
我在野牛中定义的令牌在哪里ID
,它将生成yy::parser::token
结构。
现在我想为 flex 做一些单元测试token.l
,当我调用该yy::parser::symbol_type yylex()
函数时,我没有yy::parser::token
在Bison c++ 变体手册yy::parser::symbol_type
中看到任何 API 。
顺便说一句,在野牛手册中,建议yy::parser::symbol_type
通过yy::parser::make_XXX
flex 规则中的 API 返回。
还是没有这样的 API 来完成这项工作?我需要使用symbol_type.kind()
API 来获得类似的东西yy::parser::symbol_type_kind::S_T_ID
?