[lldb-dev] Search C++ "virtual" objects

Greg Clayton via lldb-dev lldb-dev at lists.llvm.org
Tue Aug 16 11:42:48 PDT 2016


> On Aug 15, 2016, at 4:59 PM, Lei Kong <leikong at msn.com> wrote:
> 
> Should I use lldb::SBTarget::GetModuleAtIndex() to get all modules and then lldb::SBModule::GetSymbolAtIndex() to go through all symbols?
> Thanks.

This is the only way right now as we don't have a SBModule::FindSymbols that takes a regular expression. We only currently have:

    lldb::SBSymbolContextList
    FindSymbols (const char *name,
                 lldb::SymbolType type = eSymbolTypeAny);


If you want to, you can add a:


    lldb::SBSymbolContextList
    FindSymbolsByRegex (const char *regex, lldb::SymbolType type = eSymbolTypeAny);


Then you could call this:


SBModule module = ...;
lldb::SBSymbolContextList symbols = module.FindSymbolsByRegex("^vtable for ");


You can then also add this to SBTarget. Let me know if you are interested in adding this and I can help you do it.

Greg Clayton




More information about the lldb-dev mailing list