译者也可能处于 boost::spirit 状态。我在互联网上找不到任何信息。也许我应该做一个?
从精神介绍上看:
表达式模板允许我们完全用 C++ 近似扩展巴科斯范式 (EBNF) 的语法。
所以你几乎可以编写简单的 EBNF,不需要翻译器。
我对 Spirit 不太熟悉,不知道语法到底有何不同,但如果Spirit C++ EBNF和真正的 EBNF的差异很小,一个简单的sed脚本就足够了。
如果不是,您是对的,您可以编写一个理解 EBNF 的精神解析器,然后使用 AST 创建 C++ 代码,该代码是该 AST 的精神表示。
| 归档时间: |
|
| 查看次数: |
1339 次 |
| 最近记录: |