summaryrefslogtreecommitdiff
path: root/source/DataFormatters/DataVisualization.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2015-12-30 11:55:28 +0000
committerDimitry Andric <dim@FreeBSD.org>2015-12-30 11:55:28 +0000
commite81d9d49145e432d917eea3a70d2ae74dcad1d89 (patch)
tree9ed5e1a91f242e2cb5911577356e487a55c01b78 /source/DataFormatters/DataVisualization.cpp
parent85d8ef8f1f0e0e063a8571944302be2d2026f823 (diff)
Notes
Diffstat (limited to 'source/DataFormatters/DataVisualization.cpp')
-rw-r--r--source/DataFormatters/DataVisualization.cpp34
1 files changed, 27 insertions, 7 deletions
diff --git a/source/DataFormatters/DataVisualization.cpp b/source/DataFormatters/DataVisualization.cpp
index 361254185b313..14cf13d2f185d 100644
--- a/source/DataFormatters/DataVisualization.cpp
+++ b/source/DataFormatters/DataVisualization.cpp
@@ -14,8 +14,6 @@
// Other libraries and framework includes
// Project includes
-#include "lldb/Core/Debugger.h"
-
using namespace lldb;
using namespace lldb_private;
@@ -133,6 +131,14 @@ DataVisualization::Categories::GetCategory (const ConstString &category, lldb::T
return (entry.get() != NULL);
}
+bool
+DataVisualization::Categories::GetCategory (lldb::LanguageType language, lldb::TypeCategoryImplSP &entry)
+{
+ if (LanguageCategory *lang_category = GetFormatManager().GetCategoryForLanguage(language))
+ entry = lang_category->GetCategory();
+ return (entry.get() != nullptr);
+}
+
void
DataVisualization::Categories::Add (const ConstString &category)
{
@@ -164,7 +170,14 @@ DataVisualization::Categories::Enable (const ConstString& category,
{
if (GetFormatManager().GetCategory(category)->IsEnabled())
GetFormatManager().DisableCategory(category);
- GetFormatManager().EnableCategory(category, pos);
+ GetFormatManager().EnableCategory(category, pos, std::initializer_list<lldb::LanguageType>());
+}
+
+void
+DataVisualization::Categories::Enable (lldb::LanguageType lang_type)
+{
+ if (LanguageCategory* lang_category = GetFormatManager().GetCategoryForLanguage(lang_type))
+ lang_category->Enable();
}
void
@@ -175,6 +188,13 @@ DataVisualization::Categories::Disable (const ConstString& category)
}
void
+DataVisualization::Categories::Disable (lldb::LanguageType lang_type)
+{
+ if (LanguageCategory* lang_category = GetFormatManager().GetCategoryForLanguage(lang_type))
+ lang_category->Disable();
+}
+
+void
DataVisualization::Categories::Enable (const lldb::TypeCategoryImplSP& category,
TypeCategoryMap::Position pos)
{
@@ -206,9 +226,9 @@ DataVisualization::Categories::DisableStar ()
}
void
-DataVisualization::Categories::LoopThrough (FormatManager::CategoryCallback callback, void* callback_baton)
+DataVisualization::Categories::ForEach (TypeCategoryMap::ForEachCallback callback)
{
- GetFormatManager().LoopThroughCategories(callback, callback_baton);
+ GetFormatManager().ForEachCategory(callback);
}
uint32_t
@@ -248,9 +268,9 @@ DataVisualization::NamedSummaryFormats::Clear ()
}
void
-DataVisualization::NamedSummaryFormats::LoopThrough (TypeSummaryImpl::SummaryCallback callback, void* callback_baton)
+DataVisualization::NamedSummaryFormats::ForEach (std::function<bool(ConstString, const lldb::TypeSummaryImplSP&)> callback)
{
- GetFormatManager().GetNamedSummaryContainer().LoopThrough(callback, callback_baton);
+ GetFormatManager().GetNamedSummaryContainer().ForEach(callback);
}
uint32_t