C迭代器源上的re2c扫描仪

我试图使用re2c与使用迭代器对定义的输入而不是空终止字符串.

来自手册:

YYCURSOR
[...] 
On entry, YYCURSOR is assumed to point to the first character of the current token.
On exit, YYCURSOR will point to the first character of the following token.

最后一点意味着它正在尝试迭代结束.

是否有一个让re2c与迭代器一起工作的技巧? (除了不使用已检查的迭代器.)

解决方法:

您是否在拉模型中使用re2c,它调用YYFILL(n)或通过传递-f推送模型?

在pull模型中,声明YYFILL(n)在迭代器耗尽时调用return.

在push模型中,你的迭代器循环将决定输入何时完成,你不会再次调用解析器.

上一篇:谁能推荐一种使用C#执行以下字符串操作的方法


下一篇:使用Python解析.h文件以便评论的简单方法?