我有一个从spirit::lex和spirit::qi构建的简单配置文件解析器。当词法分析器达到模式include "path"时,我希望包含文件的文本。lexer::iterator_type for the current token我的想法是有一个堆栈来存储以结构表示的词法分析器状态:{ const char*
我知道在lex中可以拒绝令牌,如下所示: .* {
//Reject the entire line but get its value在拒绝整行之后,该行中的令牌将与其他lex规则相匹配,并期望被解析并匹配.y中的解析规则。(或者我错了?)保留被拒绝的行的一种方法是将它赋给一个全局变量,这个变量当然不优雅,而且由于其他原因也不正确(这是一个可重入的解析器/词法分析器)。 有什么建议吗?