System-wide summaries:

- Summaries for char*, const char* and char[] are loaded at startup as
   system-wide summaries. This means you cannot delete them unless you use
   the -a option to type summary delete/clear
 - You can add your own system-wide summaries by using the -w option to type
   summary add
Several code improvements for the Python summaries feature

llvm-svn: 135326
This commit is contained in:
Enrico Granata
2011-07-15 23:30:15 +00:00
parent 6b917bb9b5
commit 9dd75c8886
13 changed files with 1167 additions and 610 deletions

View File

@@ -1797,6 +1797,48 @@ Debugger::SummaryFormats::GetCount()
return GetFormatManager().Summary().GetCount();
}
bool
Debugger::SystemSummaryFormats::Get(ValueObject& vobj, SummaryFormat::SharedPointer &entry)
{
return GetFormatManager().SystemSummary().Get(vobj,entry);
}
void
Debugger::SystemSummaryFormats::Add(const ConstString &type, const SummaryFormat::SharedPointer &entry)
{
GetFormatManager().SystemSummary().Add(type.AsCString(),entry);
}
bool
Debugger::SystemSummaryFormats::Delete(const ConstString &type)
{
return GetFormatManager().SystemSummary().Delete(type.AsCString());
}
void
Debugger::SystemSummaryFormats::Clear()
{
GetFormatManager().SystemSummary().Clear();
}
void
Debugger::SystemSummaryFormats::LoopThrough(SummaryFormat::SummaryCallback callback, void* callback_baton)
{
GetFormatManager().SystemSummary().LoopThrough(callback, callback_baton);
}
uint32_t
Debugger::SystemSummaryFormats::GetCurrentRevision()
{
return GetFormatManager().GetCurrentRevision();
}
uint32_t
Debugger::SystemSummaryFormats::GetCount()
{
return GetFormatManager().SystemSummary().GetCount();
}
bool
Debugger::RegexSummaryFormats::Get(ValueObject& vobj, SummaryFormat::SharedPointer &entry)
{
@@ -1839,6 +1881,48 @@ Debugger::RegexSummaryFormats::GetCount()
return GetFormatManager().RegexSummary().GetCount();
}
bool
Debugger::SystemRegexSummaryFormats::Get(ValueObject& vobj, SummaryFormat::SharedPointer &entry)
{
return GetFormatManager().SystemRegexSummary().Get(vobj,entry);
}
void
Debugger::SystemRegexSummaryFormats::Add(const lldb::RegularExpressionSP &type, const SummaryFormat::SharedPointer &entry)
{
GetFormatManager().SystemRegexSummary().Add(type,entry);
}
bool
Debugger::SystemRegexSummaryFormats::Delete(const ConstString &type)
{
return GetFormatManager().SystemRegexSummary().Delete(type.AsCString());
}
void
Debugger::SystemRegexSummaryFormats::Clear()
{
GetFormatManager().SystemRegexSummary().Clear();
}
void
Debugger::SystemRegexSummaryFormats::LoopThrough(SummaryFormat::RegexSummaryCallback callback, void* callback_baton)
{
GetFormatManager().SystemRegexSummary().LoopThrough(callback, callback_baton);
}
uint32_t
Debugger::SystemRegexSummaryFormats::GetCurrentRevision()
{
return GetFormatManager().GetCurrentRevision();
}
uint32_t
Debugger::SystemRegexSummaryFormats::GetCount()
{
return GetFormatManager().SystemRegexSummary().GetCount();
}
bool
Debugger::NamedSummaryFormats::Get(const ConstString &type, SummaryFormat::SharedPointer &entry)
{