summaryrefslogtreecommitdiffstats
path: root/lldb/source/Core/CXXFormatterFunctions.cpp
diff options
context:
space:
mode:
authorEnrico Granata <egranata@apple.com>2012-09-05 20:41:26 +0000
committerEnrico Granata <egranata@apple.com>2012-09-05 20:41:26 +0000
commitd4439aa9ed02cd7445d2edff4e30a5472bc379c1 (patch)
tree426849abc4056cc71b8f1553c1ee0a11a8816dc6 /lldb/source/Core/CXXFormatterFunctions.cpp
parentd0855e180ded62d29faea57635063e8de8687011 (diff)
downloadbcm5719-llvm-d4439aa9ed02cd7445d2edff4e30a5472bc379c1.tar.gz
bcm5719-llvm-d4439aa9ed02cd7445d2edff4e30a5472bc379c1.zip
Implementing an Options class for EvaluateExpression() in order to make the signature more compact and make it easy to 'just run an expression'
llvm-svn: 163239
Diffstat (limited to 'lldb/source/Core/CXXFormatterFunctions.cpp')
-rw-r--r--lldb/source/Core/CXXFormatterFunctions.cpp30
1 files changed, 18 insertions, 12 deletions
diff --git a/lldb/source/Core/CXXFormatterFunctions.cpp b/lldb/source/Core/CXXFormatterFunctions.cpp
index e022d742123..4646a09758a 100644
--- a/lldb/source/Core/CXXFormatterFunctions.cpp
+++ b/lldb/source/Core/CXXFormatterFunctions.cpp
@@ -42,14 +42,17 @@ lldb_private::formatters::CodeRunning_Fetcher (ValueObject &valobj,
StackFrame* stack_frame = exe_ctx.GetFramePtr();
if (!target || !stack_frame)
return false;
+
+ Target::EvaluateExpressionOptions options;
+ options.SetCoerceToId(false)
+ .SetUnwindOnError(true)
+ .SetKeepInMemory(true)
+ .SetUseDynamic(lldb::eDynamicCanRunTarget);
+
target->EvaluateExpression(expr.GetData(),
stack_frame,
- eExecutionPolicyOnlyWhenNeeded,
- false,
- true,
- true,
- lldb::eDynamicCanRunTarget,
- result_sp);
+ result_sp,
+ options);
if (!result_sp)
return false;
value = result_sp->GetValueAsUnsigned(0);
@@ -364,14 +367,17 @@ lldb_private::formatters::NSNumber_SummaryProvider (ValueObject& valobj, Stream&
StackFrame* stack_frame = exe_ctx.GetFramePtr();
if (!target || !stack_frame)
return false;
+
+ Target::EvaluateExpressionOptions options;
+ options.SetCoerceToId(false)
+ .SetUnwindOnError(true)
+ .SetKeepInMemory(true)
+ .SetUseDynamic(lldb::eDynamicCanRunTarget);
+
target->EvaluateExpression(expr.GetData(),
stack_frame,
- eExecutionPolicyOnlyWhenNeeded,
- false,
- true,
- true,
- lldb::eDynamicCanRunTarget,
- result_sp);
+ result_sp,
+ options);
if (!result_sp)
return false;
stream.Printf("%s",result_sp->GetSummaryAsCString());
OpenPOWER on IntegriCloud