summaryrefslogtreecommitdiff
path: root/lldb/source/DataFormatters/ValueObjectPrinter.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2020-07-26 19:36:28 +0000
committerDimitry Andric <dim@FreeBSD.org>2020-07-26 19:36:28 +0000
commitcfca06d7963fa0909f90483b42a6d7d194d01e08 (patch)
tree209fb2a2d68f8f277793fc8df46c753d31bc853b /lldb/source/DataFormatters/ValueObjectPrinter.cpp
parent706b4fc47bbc608932d3b491ae19a3b9cde9497b (diff)
Notes
Diffstat (limited to 'lldb/source/DataFormatters/ValueObjectPrinter.cpp')
-rw-r--r--lldb/source/DataFormatters/ValueObjectPrinter.cpp35
1 files changed, 14 insertions, 21 deletions
diff --git a/lldb/source/DataFormatters/ValueObjectPrinter.cpp b/lldb/source/DataFormatters/ValueObjectPrinter.cpp
index 466cf398ec24..c8a306334cf5 100644
--- a/lldb/source/DataFormatters/ValueObjectPrinter.cpp
+++ b/lldb/source/DataFormatters/ValueObjectPrinter.cpp
@@ -1,4 +1,4 @@
-//===-- ValueObjectPrinter.cpp -----------------------------------*- C++-*-===//
+//===-- ValueObjectPrinter.cpp --------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
@@ -151,11 +151,11 @@ const char *ValueObjectPrinter::GetDescriptionForDisplay() {
return str;
}
-const char *ValueObjectPrinter::GetRootNameForDisplay(const char *if_fail) {
+const char *ValueObjectPrinter::GetRootNameForDisplay() {
const char *root_valobj_name = m_options.m_root_valobj_name.empty()
? m_valobj->GetName().AsCString()
: m_options.m_root_valobj_name.c_str();
- return root_valobj_name ? root_valobj_name : if_fail;
+ return root_valobj_name ? root_valobj_name : "";
}
bool ValueObjectPrinter::ShouldPrintValueObject() {
@@ -239,17 +239,14 @@ void ValueObjectPrinter::PrintDecl() {
// type if there is one to print
ConstString type_name;
if (m_compiler_type.IsValid()) {
- if (m_options.m_use_type_display_name)
- type_name = m_valobj->GetDisplayTypeName();
- else
- type_name = m_valobj->GetQualifiedTypeName();
+ type_name = m_options.m_use_type_display_name
+ ? m_valobj->GetDisplayTypeName()
+ : m_valobj->GetQualifiedTypeName();
} else {
// only show an invalid type name if the user explicitly triggered
// show_type
if (m_options.m_show_types)
type_name = ConstString("<invalid type>");
- else
- type_name.Clear();
}
if (type_name) {
@@ -260,21 +257,17 @@ void ValueObjectPrinter::PrintDecl() {
type_name_str.erase(iter, 2);
}
}
- typeName.Printf("%s", type_name_str.c_str());
+ typeName << type_name_str.c_str();
}
}
StreamString varName;
- if (m_options.m_flat_output) {
- // If we are showing types, also qualify the C++ base classes
- const bool qualify_cxx_base_classes = show_type;
- if (!m_options.m_hide_name) {
- m_valobj->GetExpressionPath(varName, qualify_cxx_base_classes);
- }
- } else if (!m_options.m_hide_name) {
- const char *name_cstr = GetRootNameForDisplay("");
- varName.Printf("%s", name_cstr);
+ if (!m_options.m_hide_name) {
+ if (m_options.m_flat_output)
+ m_valobj->GetExpressionPath(varName);
+ else
+ varName << GetRootNameForDisplay();
}
bool decl_printed = false;
@@ -450,9 +443,9 @@ bool ValueObjectPrinter::PrintObjectDescriptionIfNeeded(bool value_printed,
// If the description already ends with a \n don't add another one.
size_t object_end = strlen(object_desc) - 1;
if (object_desc[object_end] == '\n')
- m_stream->Printf("%s", object_desc);
+ m_stream->Printf("%s", object_desc);
else
- m_stream->Printf("%s\n", object_desc);
+ m_stream->Printf("%s\n", object_desc);
return true;
} else if (!value_printed && !summary_printed)
return true;