summaryrefslogtreecommitdiffstats
path: root/lldb/source/API/SBValue.cpp
diff options
context:
space:
mode:
authorEnrico Granata <granata.enrico@gmail.com>2011-07-22 00:16:08 +0000
committerEnrico Granata <granata.enrico@gmail.com>2011-07-22 00:16:08 +0000
commitd55546b27a90ecc088316a706446c2a293ad94b0 (patch)
treeecf0e9d8c2f243dae418cc779c708a62958b56b3 /lldb/source/API/SBValue.cpp
parent1872173841e85dd061b99b85ad2f1fb24cb23609 (diff)
downloadbcm5719-llvm-d55546b27a90ecc088316a706446c2a293ad94b0.tar.gz
bcm5719-llvm-d55546b27a90ecc088316a706446c2a293ad94b0.zip
when typing a summary string you can use the %S symbol to explicitly indicate that you want the summary to be used to print the target object
(e.g. ${var%S}). this might already be the default if your variable is of an aggregate type new feature: synthetic filters. you can restrict the number of children for your variables to only a meaningful subset - the restricted list of children obeys the typical rules (e.g. summaries prevail over children) - one-line summaries show only the filtered (synthetic) children, if you type an expanded summary string, or you use Python scripts, all the real children are accessible - to provide a synthetic children list use the "type synth add" command, as in: type synth add foo_type --child varA --child varB[0] --child varC->packet->flags[1-4] (you can use ., ->, single-item array operator [N] and bitfield operator [N-M]; array slice access is not supported, giving simplified names to expression paths is not supported) - a new -S option to frame variable and target variable lets you override synthetic children and instead show real ones llvm-svn: 135731
Diffstat (limited to 'lldb/source/API/SBValue.cpp')
-rw-r--r--lldb/source/API/SBValue.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp
index 26eaaf32209..2528f4c361f 100644
--- a/lldb/source/API/SBValue.cpp
+++ b/lldb/source/API/SBValue.cpp
@@ -648,6 +648,8 @@ SBValue::GetDescription (SBStream &description)
lldb::DynamicValueType use_dynamic = eNoDynamicValues;
bool scope_already_checked = false;
bool flat_output = false;
+ bool use_synthetic = true;
+ uint32_t no_summary_depth = 0;
ValueObject::DumpValueObject (description.ref(),
m_opaque_sp.get(),
m_opaque_sp->GetName().GetCString(),
@@ -656,10 +658,11 @@ SBValue::GetDescription (SBStream &description)
max_depth,
show_types, show_location,
use_objc,
- use_dynamic,
+ use_dynamic,
+ use_synthetic,
scope_already_checked,
flat_output,
- 0);
+ no_summary_depth);
}
else
description.Printf ("No value");
OpenPOWER on IntegriCloud