davide created this revision.
davide added reviewers: teemperor, friss, jingham.
Herald added a project: LLDB.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D70989
Files:
lldb/include/lldb/DataFormatters/TypeCategory.h
lldb/source/DataFormatters/TypeCategory.cpp
Index: lldb/source/DataFormatters/TypeCategory.cpp
===================================================================
--- lldb/source/DataFormatters/TypeCategory.cpp
+++ lldb/source/DataFormatters/TypeCategory.cpp
@@ -22,54 +22,6 @@
m_validator_cont("validator", "regex-validator", clist), m_enabled(false),
m_change_listener(clist), m_mutex(), m_name(name), m_languages() {}
-static bool IsApplicable(lldb::LanguageType category_lang,
- lldb::LanguageType valobj_lang) {
- switch (category_lang) {
- // Unless we know better, allow only exact equality.
- default:
- return category_lang == valobj_lang;
-
- // the C family, we consider it as one
- case eLanguageTypeC89:
- case eLanguageTypeC:
- case eLanguageTypeC99:
- return valobj_lang == eLanguageTypeC89 || valobj_lang == eLanguageTypeC ||
- valobj_lang == eLanguageTypeC99;
-
- // ObjC knows about C and itself
- case eLanguageTypeObjC:
- return valobj_lang == eLanguageTypeC89 || valobj_lang == eLanguageTypeC ||
- valobj_lang == eLanguageTypeC99 || valobj_lang == eLanguageTypeObjC;
-
- // C++ knows about C and C++
- case eLanguageTypeC_plus_plus:
- return valobj_lang == eLanguageTypeC89 || valobj_lang == eLanguageTypeC ||
- valobj_lang == eLanguageTypeC99 ||
- valobj_lang == eLanguageTypeC_plus_plus;
-
- // ObjC++ knows about C,C++,ObjC and ObjC++
- case eLanguageTypeObjC_plus_plus:
- return valobj_lang == eLanguageTypeC89 || valobj_lang == eLanguageTypeC ||
- valobj_lang == eLanguageTypeC99 ||
- valobj_lang == eLanguageTypeC_plus_plus ||
- valobj_lang == eLanguageTypeObjC;
-
- // Categories with unspecified language match everything.
- case eLanguageTypeUnknown:
- return true;
- }
-}
-
-bool TypeCategoryImpl::IsApplicable(ValueObject &valobj) {
- lldb::LanguageType valobj_lang = valobj.GetObjectRuntimeLanguage();
- for (size_t idx = 0; idx < GetNumLanguages(); idx++) {
- const lldb::LanguageType category_lang = GetLanguageAtIndex(idx);
- if (::IsApplicable(category_lang, valobj_lang))
- return true;
- }
- return false;
-}
-
size_t TypeCategoryImpl::GetNumLanguages() {
if (m_languages.empty())
return 1;
@@ -86,16 +38,10 @@
m_languages.push_back(lang);
}
-bool TypeCategoryImpl::HasLanguage(lldb::LanguageType lang) {
- const auto iter = std::find(m_languages.begin(), m_languages.end(), lang),
- end = m_languages.end();
- return (iter != end);
-}
-
bool TypeCategoryImpl::Get(ValueObject &valobj,
const FormattersMatchVector &candidates,
lldb::TypeFormatImplSP &entry, uint32_t *reason) {
- if (!IsEnabled() || !IsApplicable(valobj))
+ if (!IsEnabled())
return false;
if (GetTypeFormatsContainer()->Get(candidates, entry, reason))
return true;
@@ -108,7 +54,7 @@
bool TypeCategoryImpl::Get(ValueObject &valobj,
const FormattersMatchVector &candidates,
lldb::TypeSummaryImplSP &entry, uint32_t *reason) {
- if (!IsEnabled() || !IsApplicable(valobj))
+ if (!IsEnabled())
return false;
if (GetTypeSummariesContainer()->Get(candidates, entry, reason))
return true;
@@ -121,7 +67,7 @@
bool TypeCategoryImpl::Get(ValueObject &valobj,
const FormattersMatchVector &candidates,
lldb::SyntheticChildrenSP &entry, uint32_t *reason) {
- if (!IsEnabled() || !IsApplicable(valobj))
+ if (!IsEnabled())
return false;
TypeFilterImpl::SharedPointer filter_sp;
uint32_t reason_filter = 0;
Index: lldb/include/lldb/DataFormatters/TypeCategory.h
===================================================================
--- lldb/include/lldb/DataFormatters/TypeCategory.h
+++ lldb/include/lldb/DataFormatters/TypeCategory.h
@@ -358,8 +358,6 @@
void AddLanguage(lldb::LanguageType lang);
- bool HasLanguage(lldb::LanguageType lang);
-
std::string GetDescription();
bool AnyMatches(ConstString type_name,
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits