From 7ab079b6d0cc80f0ce765307ea2cebad8a6bfec6 Mon Sep 17 00:00:00 2001 From: Jim Ingham Date: Fri, 8 Aug 2014 21:45:36 +0000 Subject: [PATCH] Add an option to suppress the persistent result variable when running EvaluateExpression from Python. If you don't need to refer to the result in another expression, there's no need to bloat the persistent variable table with them since you already have the result SBValue to work with. llvm-svn: 215244 --- lldb/include/lldb/API/SBExpressionOptions.h | 6 ++++++ lldb/scripts/Python/interface/SBExpressionOptions.i | 9 +++++++++ lldb/source/API/SBExpressionOptions.cpp | 13 +++++++++++++ 3 files changed, 28 insertions(+) diff --git a/lldb/include/lldb/API/SBExpressionOptions.h b/lldb/include/lldb/API/SBExpressionOptions.h index 3241c1571cf9..c3592880c46a 100644 --- a/lldb/include/lldb/API/SBExpressionOptions.h +++ b/lldb/include/lldb/API/SBExpressionOptions.h @@ -98,6 +98,12 @@ public: void SetGenerateDebugInfo (bool b = true); + + bool + GetSuppressPersistentResult (); + + void + SetSuppressPersistentResult (bool b = false); protected: diff --git a/lldb/scripts/Python/interface/SBExpressionOptions.i b/lldb/scripts/Python/interface/SBExpressionOptions.i index d172f35c638c..6ee3e3b64faf 100644 --- a/lldb/scripts/Python/interface/SBExpressionOptions.i +++ b/lldb/scripts/Python/interface/SBExpressionOptions.i @@ -102,6 +102,15 @@ public: %feature("docstring", "Sets whether to generate debug information for the expression and also controls if a SBModule is generated.") SetGenerateDebugInfo; void SetGenerateDebugInfo (bool b = true); + + bool + GetSuppressPersistentResult (); + + %feature("docstring", "Sets whether to produce a persistent result that can be used in future expressions.") SetSuppressPersistentResult; + void + SetSuppressPersistentResult (bool b = false); + + protected: diff --git a/lldb/source/API/SBExpressionOptions.cpp b/lldb/source/API/SBExpressionOptions.cpp index 0a55b614c7cb..448ff4cf6dd6 100644 --- a/lldb/source/API/SBExpressionOptions.cpp +++ b/lldb/source/API/SBExpressionOptions.cpp @@ -173,6 +173,19 @@ SBExpressionOptions::SetGenerateDebugInfo (bool b) return m_opaque_ap->SetGenerateDebugInfo(b); } +bool +SBExpressionOptions::GetSuppressPersistentResult () +{ + return m_opaque_ap->GetResultIsInternal (); +} + +void +SBExpressionOptions::SetSuppressPersistentResult (bool b) +{ + return m_opaque_ap->SetResultIsInternal (b); +} + + EvaluateExpressionOptions * SBExpressionOptions::get() const {