aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
diff options
context:
space:
mode:
authorDave Lee <davelee.com@gmail.com>2023-05-26 21:19:10 -0700
committerDave Lee <davelee.com@gmail.com>2023-05-31 08:08:40 -0700
commitcb463c34dd4c3ad2ac6c13f98edcf684a3fcbe38 (patch)
tree5cebbd261ee7e551288ae5b2abc5d5864d6c141b /lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
parente0df106818ccb90dc46c5296ed5ef2eda75564ff (diff)
downloadllvm-cb463c34dd4c3ad2ac6c13f98edcf684a3fcbe38.zip
llvm-cb463c34dd4c3ad2ac6c13f98edcf684a3fcbe38.tar.gz
llvm-cb463c34dd4c3ad2ac6c13f98edcf684a3fcbe38.tar.bz2
[lldb] Take StringRef name in GetChildMemberWithName (NFC)
`GetChildMemberWithName` does not need a `ConstString`. This change makes the function take a `StringRef` instead, which alleviates the need for callers to construct a `ConstString`. I don't expect this change to improve performance, only ergonomics. This is in support of Alex's effort to replace `ConstString` where appropriate. There are related `ValueObject` functions that can also be changed, if this is accepted. Differential Revision: https://reviews.llvm.org/D151615
Diffstat (limited to 'lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp')
-rw-r--r--lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp22
1 files changed, 7 insertions, 15 deletions
diff --git a/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp b/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
index 21dbd64..6a29abe 100644
--- a/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
+++ b/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
@@ -211,27 +211,23 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::
size_t lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::
CalculateNumChildren() {
- static ConstString g_pair3_("__pair3_");
- static ConstString g_first_("__first_");
- static ConstString g_value_("__value_");
-
if (m_count != UINT32_MAX)
return m_count;
if (m_tree == nullptr)
return 0;
- ValueObjectSP m_item(m_tree->GetChildMemberWithName(g_pair3_, true));
+ ValueObjectSP m_item(m_tree->GetChildMemberWithName("__pair3_", true));
if (!m_item)
return 0;
switch (m_item->GetCompilerType().GetNumDirectBaseClasses()) {
case 1:
// Assume a pre llvm r300140 __compressed_pair implementation:
- m_item = m_item->GetChildMemberWithName(g_first_, true);
+ m_item = m_item->GetChildMemberWithName("__first_", true);
break;
case 2: {
// Assume a post llvm r300140 __compressed_pair implementation:
ValueObjectSP first_elem_parent = m_item->GetChildAtIndex(0, true);
- m_item = first_elem_parent->GetChildMemberWithName(g_value_, true);
+ m_item = first_elem_parent->GetChildMemberWithName("__value_", true);
break;
}
default:
@@ -245,7 +241,6 @@ size_t lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::
}
bool lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::GetDataType() {
- static ConstString g_value_("__value_");
static ConstString g_tree_("__tree_");
static ConstString g_pair3("__pair3_");
@@ -257,7 +252,7 @@ bool lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::GetDataType() {
deref = m_root_node->Dereference(error);
if (!deref || error.Fail())
return false;
- deref = deref->GetChildMemberWithName(g_value_, true);
+ deref = deref->GetChildMemberWithName("__value_", true);
if (deref) {
m_element_type = deref->GetCompilerType();
return true;
@@ -329,7 +324,6 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::GetChildAtIndex(
size_t idx) {
static ConstString g_cc_("__cc_"), g_cc("__cc");
static ConstString g_nc("__nc");
- static ConstString g_value_("__value_");
if (idx >= CalculateNumChildren())
return lldb::ValueObjectSP();
@@ -364,7 +358,7 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::GetChildAtIndex(
return lldb::ValueObjectSP();
}
GetValueOffset(iterated_sp);
- auto child_sp = iterated_sp->GetChildMemberWithName(g_value_, true);
+ auto child_sp = iterated_sp->GetChildMemberWithName("__value_", true);
if (child_sp)
iterated_sp = child_sp;
else
@@ -425,15 +419,13 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::GetChildAtIndex(
}
bool lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd::Update() {
- static ConstString g_tree_("__tree_");
- static ConstString g_begin_node_("__begin_node_");
m_count = UINT32_MAX;
m_tree = m_root_node = nullptr;
m_iterators.clear();
- m_tree = m_backend.GetChildMemberWithName(g_tree_, true).get();
+ m_tree = m_backend.GetChildMemberWithName("__tree_", true).get();
if (!m_tree)
return false;
- m_root_node = m_tree->GetChildMemberWithName(g_begin_node_, true).get();
+ m_root_node = m_tree->GetChildMemberWithName("__begin_node_", true).get();
return false;
}