如何获取 llvm::MemoryBuffer 的内容作为 std::string

How do I get the contents of an llvm::MemoryBuffer as an std::string?

本文关键字:string std MemoryBuffer 获取 llvm 何获取      更新时间:2023-10-16

我正在使用Clang FileManager来处理一些C++源代码。对于调试和转换,我想以字符串形式获取文件的内容。

我可以使用FileManager::getBufferForFile获得llvm::MemoryBuffer.

如何将整个llvm::MemoryBuffer读成std::string


这个问题与 Convert std::string to llvm::MemoryBuffer 相反。

给定 API 参考,这似乎很容易: std::string str (mb.getBufferStart(), getBufferEnd());

StringRef并使用str()从中获取字符串。