我在词法分析器中定义了不同的状态,这些状态不是依赖于令牌,而是依赖于一系列令牌(类似于模板引擎的工作方式)。我可以定义更长的标记,但我更喜欢这种方法。有没有办法从野牛更改弹性启动状态?
2
A
回答
3
您可以在使用BEGIN宏的.l文件的第三部分粘贴一个函数,然后从您的bison动作(或其他任何地方)调用该函数。在减少规则(运行它的动作)之前,你需要小心这样一个事实,即野牛可能会读取一个令牌,因此在正确的时刻设置正确的状态可能会非常棘手。
0
您可以将一个参数添加到yylex()中,然后每次调用该参数时都会显式设置该状态。然后你在yacc中有一个参数在你的动作中更新,然后传递给yylex()。这不需要是全局参数。
这里讨论了实际的技术,虽然它可能需要适应野牛和/或sourceforge flex:http://my.opera.com/myrkraverk/blog/2012/01/04/passing-parameters-to-yacc-and-flex
相关问题
- 1. 有没有办法在暂停状态下启动进程?
- 2. 有没有办法阻止UIImagePickerController更改状态栏样式?
- 3. 有没有办法来动态更改jqGrid的单元格值?
- 4. 有没有办法启动一个PHP脚本并获取状态?
- 5. 有没有办法在400/500状态码上更改HttpWebRequest行为?
- 6. 有没有办法让移动Safari WebApp“忘记”它的状态?
- 7. 有没有办法安排html更改?
- 8. 有没有办法倾听Animatable.isRunning更改?
- 9. 有没有办法从Espresso Recorder启动特定的活动?
- 10. 有没有办法让@ModelAttribute动态?
- 11. 动态更改性状
- 12. 有没有办法监听flash.display.DisplayObjectContainer numChildren属性中的更改?
- 13. 直接从冷启动弹出状态
- 14. PHP动态对象属性有没有办法让它工作?
- 15. 有没有办法用RequireJS动态地改变Marionette ItemView模板?
- 16. 有没有办法动态改变一个按钮的CSS类?
- 17. 有没有办法动态改变Flutter TextField的maxLines?
- 18. 有没有办法动态改变图标的颜色?
- 19. 有没有办法在python中动态创建/修改函数
- 20. 有没有办法知道一个状态是否处于活动状态而没有捕获ContextNotActiveException?
- 21. 有没有办法动态更新目的地?
- 22. 为什么%prec在这个野牛语法中没有效果?
- 23. 野牛 - 语法中没有用的非终结者
- 24. 有没有办法从Eclipse启动/停止/重新启动REMOTE Tomcat服务器?
- 25. 有没有什么办法用弹簧
- 26. Keras:有没有办法“弹出()”顶层?
- 27. 有没有办法在Django中动态更改UpdateView中使用的模型?
- 28. 有没有办法在运行时动态更改Docker容器的CPU数量?
- 29. 有没有办法动态更改首选项屏幕字体颜色?
- 30. 有没有办法在iOS中动态更改应用程序图标?