是否有某种类型的C++库,其中包含表示C++源代码的类? 它当然应该能够将源代码输出到流中。 我正在寻找支持大多数C++ 11功能的东西,并且还能够生成模板化构造。C++ 11源代码生成
当我为此谷歌,我没有得到我想要的结果。我确定,但有一些可用的东西。也许我只是使用错误的条款。
是否有某种类型的C++库,其中包含表示C++源代码的类? 它当然应该能够将源代码输出到流中。 我正在寻找支持大多数C++ 11功能的东西,并且还能够生成模板化构造。C++ 11源代码生成
当我为此谷歌,我没有得到我想要的结果。我确定,但有一些可用的东西。也许我只是使用错误的条款。
查看Clang编译器,它使用library-based architecture来支持实现IDE和其他需要处理AST的工具。 Clang完全支持所有C++ 11功能(以及一些C++ 1y功能)
更多信息可在Clang documentation中找到。或者在this blog中描述使用clang::Rewriter
的基本源到源转换。
这仍然处于一个非常实验阶段,但在我们的实验室中,我们正在开发一个工具(Clava),它基于Clang并使用Javascript类语言来查询和转换给定的C/C++代码。它将在2017年8月底开放。
例如,演示网站中当前的默认示例读取C/C++代码中的所有类和结构,并创建一个包含HDF5包装器的C++/H对对于这些类(但是,代码生成是AST和字符串文字的混合)。
检出libclang。 –