假设我有一些带有非类型参数的模板类。
template <int hi, int wid>
class SomeThing {
...
}
我需要创建一个工具来使用给定的值来减少这个来源hi
,wid
例如hi=2; wid=3
。依次,可能有一些代码变成了死代码,工具也需要将它们截断掉。所以,最后我希望看到一个简化的源代码作为工具的输出。有什么已知的方法可以做到这一点吗?一种更难的方法可能是创建我自己的 c++ 解析器……即使是简化的也听起来很糟糕。
我知道有像 gcc-xml 和 clang 这样的工具可以解析它并提供一个易于解析的中间文件。但是,看起来我无法从中重新生成 c++ 源文件。
[编辑] 一个整体是创建一个从源代码生成源代码的工具,具有变量替换和死代码截断。