Add clang_CXXMethod_isVirtual() to libclang, from Erik Verbruggen!
llvm-svn: 131230
This commit is contained in:
parent
a4445d6a51
commit
9519d92ef6
|
@ -2266,6 +2266,13 @@ CINDEX_LINKAGE CXCursor clang_getCanonicalCursor(CXCursor);
|
|||
*/
|
||||
CINDEX_LINKAGE unsigned clang_CXXMethod_isStatic(CXCursor C);
|
||||
|
||||
/**
|
||||
* \brief Determine if a C++ member function or member function template is
|
||||
* explicitly declared 'virtual' or if it overrides a virtual method from
|
||||
* one of the base classes.
|
||||
*/
|
||||
CINDEX_LINKAGE unsigned clang_CXXMethod_isVirtual(CXCursor C);
|
||||
|
||||
/**
|
||||
* \brief Given a cursor that represents a template, determine
|
||||
* the cursor kind of the specializations would be generated by instantiating
|
||||
|
|
|
@ -5192,6 +5192,19 @@ unsigned clang_CXXMethod_isStatic(CXCursor C) {
|
|||
return (Method && Method->isStatic()) ? 1 : 0;
|
||||
}
|
||||
|
||||
unsigned clang_CXXMethod_isVirtual(CXCursor C) {
|
||||
if (!clang_isDeclaration(C.kind))
|
||||
return 0;
|
||||
|
||||
CXXMethodDecl *Method = 0;
|
||||
Decl *D = cxcursor::getCursorDecl(C);
|
||||
if (FunctionTemplateDecl *FunTmpl = dyn_cast_or_null<FunctionTemplateDecl>(D))
|
||||
Method = dyn_cast<CXXMethodDecl>(FunTmpl->getTemplatedDecl());
|
||||
else
|
||||
Method = dyn_cast_or_null<CXXMethodDecl>(D);
|
||||
return (Method && Method->isVirtual()) ? 1 : 0;
|
||||
}
|
||||
|
||||
} // end: extern "C"
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
_clang_CXCursorSet_contains
|
||||
_clang_CXCursorSet_insert
|
||||
_clang_CXXMethod_isStatic
|
||||
_clang_CXXMethod_isVirtual
|
||||
_clang_annotateTokens
|
||||
_clang_codeCompleteAt
|
||||
_clang_codeCompleteGetDiagnostic
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
clang_CXCursorSet_contains
|
||||
clang_CXCursorSet_insert
|
||||
clang_CXXMethod_isStatic
|
||||
clang_CXXMethod_isVirtual
|
||||
clang_annotateTokens
|
||||
clang_codeCompleteAt
|
||||
clang_codeCompleteGetDiagnostic
|
||||
|
|
Loading…
Reference in New Issue