コード例 #1
0
std::string libclang_vim::stringize_cursor_extra_info(CXCursor const& cursor) {
    std::string result;

    if (clang_isCursorDefinition(cursor)) {
        result += "'is_definition':1,";
    }
    if (clang_Cursor_isDynamicCall(cursor)) {
        result += "'is_dynamic_call':1,";
    }
    if (clang_Cursor_isVariadic(cursor)) {
        result += "'is_variadic':1,";
    }
    if (clang_CXXMethod_isVirtual(cursor)) {
        result += "'is_virtual_member_function':1,";
    }
    if (clang_CXXMethod_isPureVirtual(cursor)) {
        result += "'is_pure_virtual_member_function':1,";
    }
    if (clang_CXXMethod_isStatic(cursor)) {
        result += "'is_static_member_function':1,";
    }

    auto const access_specifier = clang_getCXXAccessSpecifier(cursor);
    switch (access_specifier) {
    case CX_CXXPublic:
        result += "'access_specifier':'public',";
        break;
    case CX_CXXPrivate:
        result += "'access_specifier':'private',";
        break;
    case CX_CXXProtected:
        result += "'access_specifier':'protected',";
        break;
    case CX_CXXInvalidAccessSpecifier:
        break;
    }

    return result;
}
コード例 #2
0
ファイル: clang++.cpp プロジェクト: mythagel/cxxide
//CXComment cursor::getParsedComment()
//{
//    return clang_Cursor_getParsedComment(cur);
//}
bool cursor::isPureVirtual()
{
    return clang_CXXMethod_isPureVirtual(cur);
}
コード例 #3
0
ファイル: cursor.cpp プロジェクト: KeeganRen/qt-creator
bool Cursor::isPureVirtualMethod() const
{
    return clang_CXXMethod_isPureVirtual(cxCursor);
}