llvm::Type 结构的字符串表示形式
llvm::Type
2.9 及更早版本使用 getDescription
方法来检索类型的字符串表示形式。这个方法在llvm 3.0中不再存在。
我不确定这是否已被弃用,以支持 Type::print(raw_ostream&)
,但无论如何我对这个 API 很好奇。有哪些关于如何使用它的示例?如何转储到 string
或 const char*
?
特别是,我想将字符串传递给 Boost::Format
,它是现代 C++ sprintf
。
llvm::Type
2.9 and earlier used to have getDescription
method to retrieve a string representation of the type. This method does not exist anymore in llvm 3.0.
I'm not sure if this is deprecated in favor of Type::print(raw_ostream&)
, but in any case I'm curious of this API. What examples are there about how to use it? How can I dump to a string
or const char*
?
In particular, I want to pass the string to Boost::Format
which is a modern c++ sprintf
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我想,您需要创建 llvm::raw_string_ostream 的实例并将 std::string 传递到它的构造函数中。现在您可以将其用作
llvm::raw_ostream
,完成后只需调用.str()
即可获取字符串。类似这样的事情:
LLVM 已经改变了它的接口,所以现在以下内容可以工作:
I suppose, you need to create an instance of
llvm::raw_string_ostream
and pass your std::string into it's construtor. Now you can use it asllvm::raw_ostream
and when you are done just call.str()
to get your string.Something like that:
LLVM has changed its interface, so now the following will work: