【发布时间】:2014-07-03 23:02:19
【问题描述】:
我想定义一个函数,该函数将使用 Clang LibTooling 库返回指向最后定义的公共方法的指针。
目前我有一个CXXRecordDecl 指针*decl 和以下行来获取第一个方法的源位置。
const SourceLocation method_begin_location = decl->method_begin()->getLocation();
理想情况下,如果没有如下方法,我想将其替换为获取最后定义的公共方法的位置或公共声明开头的位置的函数。
const SourceLocation last_public_method_location = get_last_public_method_loc(decl);
对编写这个函数有什么见解吗? method_end() 指向方法定义的末尾,所以它没有我希望的那么有用。
【问题讨论】:
-
这个级别的编译时反射(目前)不被支持。运行时类型信息更少。
标签: c++ clang llvm-clang