From 60dbabbaa706c4fffb879ce71a6e023670490c2c Mon Sep 17 00:00:00 2001 From: Jim Ingham Date: Thu, 8 Dec 2011 19:44:08 +0000 Subject: Add SBValue::GetDynamicValue and SBValue::GetStaticValue API's. llvm-svn: 146173 --- lldb/source/API/SBValue.cpp | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'lldb/source/API/SBValue.cpp') diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp index 6ef4c387258..c7ab54999ca 100644 --- a/lldb/source/API/SBValue.cpp +++ b/lldb/source/API/SBValue.cpp @@ -596,6 +596,50 @@ SBValue::GetChildMemberWithName (const char *name, lldb::DynamicValueType use_dy return sb_value; } +lldb::SBValue +SBValue::GetDynamicValue (lldb::DynamicValueType use_dynamic) +{ + if (m_opaque_sp) + { + if (m_opaque_sp->GetUpdatePoint().GetTargetSP()) + { + Mutex::Locker api_locker (m_opaque_sp->GetUpdatePoint().GetTargetSP()->GetAPIMutex()); + return SBValue (m_opaque_sp->GetDynamicValue(use_dynamic)); + } + } + + return SBValue(); +} + +lldb::SBValue +SBValue::GetStaticValue () +{ + if (m_opaque_sp) + { + if (m_opaque_sp->GetUpdatePoint().GetTargetSP()) + { + Mutex::Locker api_locker (m_opaque_sp->GetUpdatePoint().GetTargetSP()->GetAPIMutex()); + return SBValue(m_opaque_sp->GetStaticValue()); + } + } + + return SBValue(); +} + +bool +SBValue::IsDynamic() +{ + if (m_opaque_sp) + { + if (m_opaque_sp->GetUpdatePoint().GetTargetSP()) + { + Mutex::Locker api_locker (m_opaque_sp->GetUpdatePoint().GetTargetSP()->GetAPIMutex()); + return m_opaque_sp->IsDynamic(); + } + } + return false; +} + lldb::SBValue SBValue::GetValueForExpressionPath(const char* expr_path) { -- cgit v1.2.3