summaryrefslogtreecommitdiff
path: root/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp')
-rw-r--r--tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp859
1 files changed, 435 insertions, 424 deletions
diff --git a/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp b/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp
index d519875993fe..c9abdd1cf90c 100644
--- a/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp
+++ b/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp
@@ -8,15 +8,15 @@
//===----------------------------------------------------------------------===//
//++
-// File: MICmnLLDBDebugSessionInfoVarObj.cpp
+// File: MICmnLLDBDebugSessionInfoVarObj.cpp
//
-// Overview: CMICmnLLDBDebugSessionInfoVarObj implementation.
+// Overview: CMICmnLLDBDebugSessionInfoVarObj implementation.
//
-// Environment: Compilers: Visual C++ 12.
-// gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1
-// Libraries: See MIReadmetxt.
+// Environment: Compilers: Visual C++ 12.
+// gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1
+// Libraries: See MIReadmetxt.
//
-// Copyright: None.
+// Copyright: None.
//--
// In-house headers:
@@ -25,546 +25,557 @@
#include "MICmnLLDBUtilSBValue.h"
// Instantiations:
-const MIchar * CMICmnLLDBDebugSessionInfoVarObj::ms_aVarFormatStrings[] =
-{
- // CODETAG_SESSIONINFO_VARFORMAT_ENUM
- // *** Order is import here.
- "<Invalid var format>",
- "binary",
- "octal",
- "decimal",
- "hexadecimal",
- "natural"
-};
-const MIchar * CMICmnLLDBDebugSessionInfoVarObj::ms_aVarFormatChars[] =
-{
- // CODETAG_SESSIONINFO_VARFORMAT_ENUM
- // *** Order is import here.
- "<Invalid var format>",
- "t",
- "o",
- "d",
- "x",
- "N"
-};
-CMICmnLLDBDebugSessionInfoVarObj::MapKeyToVarObj_t CMICmnLLDBDebugSessionInfoVarObj::ms_mapVarIdToVarObj;
-MIuint CMICmnLLDBDebugSessionInfoVarObj::ms_nVarUniqueId = 0; // Index from 0
+const MIchar *CMICmnLLDBDebugSessionInfoVarObj::ms_aVarFormatStrings[] = {
+ // CODETAG_SESSIONINFO_VARFORMAT_ENUM
+ // *** Order is import here.
+ "<Invalid var format>", "binary", "octal", "decimal", "hexadecimal", "natural"};
+const MIchar *CMICmnLLDBDebugSessionInfoVarObj::ms_aVarFormatChars[] = {
+ // CODETAG_SESSIONINFO_VARFORMAT_ENUM
+ // *** Order is import here.
+ "<Invalid var format>", "t", "o", "d", "x", "N"};
+CMICmnLLDBDebugSessionInfoVarObj::MapKeyToVarObj_t CMICmnLLDBDebugSessionInfoVarObj::ms_mapVarIdToVarObj;
+MIuint CMICmnLLDBDebugSessionInfoVarObj::ms_nVarUniqueId = 0; // Index from 0
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj constructor.
-// Type: Method.
-// Args: None.
-// Return: None.
-// Throws: None.
-//--
-CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj( void )
-: m_eVarFormat( eVarFormat_Natural )
-, m_eVarType( eVarType_Internal )
+// Details: CMICmnLLDBDebugSessionInfoVarObj constructor.
+// Type: Method.
+// Args: None.
+// Return: None.
+// Throws: None.
+//--
+CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj(void)
+ : m_eVarFormat(eVarFormat_Natural)
+ , m_eVarType(eVarType_Internal)
{
- // Do not call UpdateValue() in here as not necessary
+ // Do not call UpdateValue() in here as not necessary
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj constructor.
-// Type: Method.
-// Args: vrStrNameReal - (R) The actual name of the variable, the expression.
-// vrStrName - (R) The name given for *this var object.
-// vrValue - (R) The LLDB SBValue object represented by *this object.
-// Return: None.
-// Throws: None.
-//--
-CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj( const CMIUtilString & vrStrNameReal, const CMIUtilString & vrStrName, const lldb::SBValue & vrValue )
-: m_eVarFormat( eVarFormat_Natural )
-, m_eVarType( eVarType_Internal )
-, m_strName( vrStrName )
-, m_SBValue( vrValue )
-, m_strNameReal( vrStrNameReal )
-{
- UpdateValue();
+// Details: CMICmnLLDBDebugSessionInfoVarObj constructor.
+// Type: Method.
+// Args: vrStrNameReal - (R) The actual name of the variable, the expression.
+// vrStrName - (R) The name given for *this var object.
+// vrValue - (R) The LLDB SBValue object represented by *this object.
+// Return: None.
+// Throws: None.
+//--
+CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj(const CMIUtilString &vrStrNameReal, const CMIUtilString &vrStrName,
+ const lldb::SBValue &vrValue)
+ : m_eVarFormat(eVarFormat_Natural)
+ , m_eVarType(eVarType_Internal)
+ , m_strName(vrStrName)
+ , m_SBValue(vrValue)
+ , m_strNameReal(vrStrNameReal)
+{
+ UpdateValue();
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj constructor.
-// Type: Method.
-// Args: vrStrNameReal - (R) The actual name of the variable, the expression.
-// vrStrName - (R) The name given for *this var object.
-// vrValue - (R) The LLDB SBValue object represented by *this object.
-// vrStrVarObjParentName - (R) The var object parent to *this var object (LLDB SBValue equivalent).
-// Return: None.
-// Throws: None.
-//--
-CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj( const CMIUtilString & vrStrNameReal, const CMIUtilString & vrStrName, const lldb::SBValue & vrValue, const CMIUtilString & vrStrVarObjParentName )
-: m_eVarFormat( eVarFormat_Natural )
-, m_eVarType( eVarType_Internal )
-, m_strName( vrStrName )
-, m_SBValue( vrValue )
-, m_strNameReal( vrStrNameReal )
-, m_strVarObjParentName( vrStrVarObjParentName )
-{
- UpdateValue();
+// Details: CMICmnLLDBDebugSessionInfoVarObj constructor.
+// Type: Method.
+// Args: vrStrNameReal - (R) The actual name of the variable, the expression.
+// vrStrName - (R) The name given for *this var object.
+// vrValue - (R) The LLDB SBValue object represented by *this object.
+// vrStrVarObjParentName - (R) The var object parent to *this var object (LLDB SBValue equivalent).
+// Return: None.
+// Throws: None.
+//--
+CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj(const CMIUtilString &vrStrNameReal, const CMIUtilString &vrStrName,
+ const lldb::SBValue &vrValue, const CMIUtilString &vrStrVarObjParentName)
+ : m_eVarFormat(eVarFormat_Natural)
+ , m_eVarType(eVarType_Internal)
+ , m_strName(vrStrName)
+ , m_SBValue(vrValue)
+ , m_strNameReal(vrStrNameReal)
+ , m_strVarObjParentName(vrStrVarObjParentName)
+{
+ UpdateValue();
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj copy constructor.
-// Type: Method.
-// Args: vrOther - (R) The object to copy from.
-// Return: None.
-// Throws: None.
+// Details: CMICmnLLDBDebugSessionInfoVarObj copy constructor.
+// Type: Method.
+// Args: vrOther - (R) The object to copy from.
+// Return: None.
+// Throws: None.
//--
-CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj( const CMICmnLLDBDebugSessionInfoVarObj & vrOther )
+CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj(const CMICmnLLDBDebugSessionInfoVarObj &vrOther)
{
- CopyOther( vrOther );
+ CopyOther(vrOther);
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj copy constructor.
-// Type: Method.
-// Args: vrOther - (R) The object to copy from.
-// Return: None.
-// Throws: None.
+// Details: CMICmnLLDBDebugSessionInfoVarObj copy constructor.
+// Type: Method.
+// Args: vrOther - (R) The object to copy from.
+// Return: None.
+// Throws: None.
//--
-CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj( CMICmnLLDBDebugSessionInfoVarObj & vrOther )
+CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj(CMICmnLLDBDebugSessionInfoVarObj &vrOther)
{
- CopyOther( vrOther );
+ CopyOther(vrOther);
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj move constructor.
-// Type: Method.
-// Args: vrwOther - (R) The object to copy from.
-// Return: None.
-// Throws: None.
+// Details: CMICmnLLDBDebugSessionInfoVarObj move constructor.
+// Type: Method.
+// Args: vrwOther - (R) The object to copy from.
+// Return: None.
+// Throws: None.
//--
-CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj( CMICmnLLDBDebugSessionInfoVarObj && vrwOther )
+CMICmnLLDBDebugSessionInfoVarObj::CMICmnLLDBDebugSessionInfoVarObj(CMICmnLLDBDebugSessionInfoVarObj &&vrwOther)
{
- MoveOther( vrwOther );
+ MoveOther(vrwOther);
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj assignment operator.
-// Type: Method.
-// Args: vrOther - (R) The object to copy from.
-// Return: CMICmnLLDBDebugSessionInfoVarObj & - Updated *this object.
-// Throws: None.
+// Details: CMICmnLLDBDebugSessionInfoVarObj assignment operator.
+// Type: Method.
+// Args: vrOther - (R) The object to copy from.
+// Return: CMICmnLLDBDebugSessionInfoVarObj & - Updated *this object.
+// Throws: None.
//--
-CMICmnLLDBDebugSessionInfoVarObj & CMICmnLLDBDebugSessionInfoVarObj::operator= ( const CMICmnLLDBDebugSessionInfoVarObj & vrOther )
+CMICmnLLDBDebugSessionInfoVarObj &CMICmnLLDBDebugSessionInfoVarObj::operator=(const CMICmnLLDBDebugSessionInfoVarObj &vrOther)
{
- CopyOther( vrOther );
+ CopyOther(vrOther);
- return *this;
+ return *this;
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj assignment operator.
-// Type: Method.
-// Args: vrwOther - (R) The object to copy from.
-// Return: CMICmnLLDBDebugSessionInfoVarObj & - Updated *this object.
-// Throws: None.
+// Details: CMICmnLLDBDebugSessionInfoVarObj assignment operator.
+// Type: Method.
+// Args: vrwOther - (R) The object to copy from.
+// Return: CMICmnLLDBDebugSessionInfoVarObj & - Updated *this object.
+// Throws: None.
//--
-CMICmnLLDBDebugSessionInfoVarObj & CMICmnLLDBDebugSessionInfoVarObj::operator= ( CMICmnLLDBDebugSessionInfoVarObj && vrwOther )
+CMICmnLLDBDebugSessionInfoVarObj &CMICmnLLDBDebugSessionInfoVarObj::operator=(CMICmnLLDBDebugSessionInfoVarObj &&vrwOther)
{
- MoveOther( vrwOther );
+ MoveOther(vrwOther);
- return *this;
+ return *this;
}
//++ ------------------------------------------------------------------------------------
-// Details: Copy the other instance of that object to *this object.
-// Type: Method.
-// Args: vrOther - (R) The object to copy from.
-// Return: MIstatus::success - Functional succeeded.
-// MIstatus::failure - Functional failed.
-// Throws: None.
-//--
-bool CMICmnLLDBDebugSessionInfoVarObj::CopyOther( const CMICmnLLDBDebugSessionInfoVarObj & vrOther )
-{
- // Check for self-assignment
- if( this == &vrOther )
- return MIstatus::success;
-
- m_eVarFormat = vrOther.m_eVarFormat;
- m_eVarType = vrOther.m_eVarType;
- m_strName = vrOther.m_strName;
- m_SBValue = vrOther.m_SBValue;
- m_strNameReal = vrOther.m_strNameReal;
- m_strFormattedValue = vrOther.m_strFormattedValue;
- m_strVarObjParentName = vrOther.m_strVarObjParentName;
-
- return MIstatus::success;
+// Details: Copy the other instance of that object to *this object.
+// Type: Method.
+// Args: vrOther - (R) The object to copy from.
+// Return: MIstatus::success - Functional succeeded.
+// MIstatus::failure - Functional failed.
+// Throws: None.
+//--
+bool
+CMICmnLLDBDebugSessionInfoVarObj::CopyOther(const CMICmnLLDBDebugSessionInfoVarObj &vrOther)
+{
+ // Check for self-assignment
+ if (this == &vrOther)
+ return MIstatus::success;
+
+ m_eVarFormat = vrOther.m_eVarFormat;
+ m_eVarType = vrOther.m_eVarType;
+ m_strName = vrOther.m_strName;
+ m_SBValue = vrOther.m_SBValue;
+ m_strNameReal = vrOther.m_strNameReal;
+ m_strFormattedValue = vrOther.m_strFormattedValue;
+ m_strVarObjParentName = vrOther.m_strVarObjParentName;
+
+ return MIstatus::success;
}
//++ ------------------------------------------------------------------------------------
-// Details: Move that object to *this object.
-// Type: Method.
-// Args: vrwOther - (RW) The object to copy from.
-// Return: MIstatus::success - Functional succeeded.
-// MIstatus::failure - Functional failed.
-// Throws: None.
-//--
-bool CMICmnLLDBDebugSessionInfoVarObj::MoveOther( CMICmnLLDBDebugSessionInfoVarObj & vrwOther )
-{
- // Check for self-assignment
- if( this == &vrwOther )
- return MIstatus::success;
-
- CopyOther( vrwOther );
- vrwOther.m_eVarFormat = eVarFormat_Natural;
- vrwOther.m_eVarType = eVarType_Internal;
- vrwOther.m_strName.clear();
- vrwOther.m_SBValue.Clear();
- vrwOther.m_strNameReal.clear();
- vrwOther.m_strFormattedValue.clear();
- vrwOther.m_strVarObjParentName.clear();
-
- return MIstatus::success;
+// Details: Move that object to *this object.
+// Type: Method.
+// Args: vrwOther - (RW) The object to copy from.
+// Return: MIstatus::success - Functional succeeded.
+// MIstatus::failure - Functional failed.
+// Throws: None.
+//--
+bool
+CMICmnLLDBDebugSessionInfoVarObj::MoveOther(CMICmnLLDBDebugSessionInfoVarObj &vrwOther)
+{
+ // Check for self-assignment
+ if (this == &vrwOther)
+ return MIstatus::success;
+
+ CopyOther(vrwOther);
+ vrwOther.m_eVarFormat = eVarFormat_Natural;
+ vrwOther.m_eVarType = eVarType_Internal;
+ vrwOther.m_strName.clear();
+ vrwOther.m_SBValue.Clear();
+ vrwOther.m_strNameReal.clear();
+ vrwOther.m_strFormattedValue.clear();
+ vrwOther.m_strVarObjParentName.clear();
+
+ return MIstatus::success;
}
//++ ------------------------------------------------------------------------------------
-// Details: CMICmnLLDBDebugSessionInfoVarObj destructor.
-// Type: Overridden.
-// Args: None.
-// Return: None.
-// Throws: None.
+// Details: CMICmnLLDBDebugSessionInfoVarObj destructor.
+// Type: Overridden.
+// Args: None.
+// Return: None.
+// Throws: None.
//--
-CMICmnLLDBDebugSessionInfoVarObj::~CMICmnLLDBDebugSessionInfoVarObj( void )
+CMICmnLLDBDebugSessionInfoVarObj::~CMICmnLLDBDebugSessionInfoVarObj(void)
{
}
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the var format enumeration for the specified string.
-// Type: Static method.
-// Args: vrStrFormat - (R) Text description of the var format.
-// Return: varFormat_e - Var format enumeration.
-// - No match found return eVarFormat_Invalid.
-// Throws: None.
-//--
-CMICmnLLDBDebugSessionInfoVarObj::varFormat_e CMICmnLLDBDebugSessionInfoVarObj::GetVarFormatForString( const CMIUtilString & vrStrFormat )
-{
- // CODETAG_SESSIONINFO_VARFORMAT_ENUM
- for( MIuint i = 0; i < eVarFormat_count; i++ )
- {
- const MIchar * pVarFormatString = ms_aVarFormatStrings[ i ];
- if( vrStrFormat == pVarFormatString )
- return static_cast< varFormat_e >( i );
- }
-
- return eVarFormat_Invalid;
+// Details: Retrieve the var format enumeration for the specified string.
+// Type: Static method.
+// Args: vrStrFormat - (R) Text description of the var format.
+// Return: varFormat_e - Var format enumeration.
+// - No match found return eVarFormat_Invalid.
+// Throws: None.
+//--
+CMICmnLLDBDebugSessionInfoVarObj::varFormat_e
+CMICmnLLDBDebugSessionInfoVarObj::GetVarFormatForString(const CMIUtilString &vrStrFormat)
+{
+ // CODETAG_SESSIONINFO_VARFORMAT_ENUM
+ for (MIuint i = 0; i < eVarFormat_count; i++)
+ {
+ const MIchar *pVarFormatString = ms_aVarFormatStrings[i];
+ if (vrStrFormat == pVarFormatString)
+ return static_cast<varFormat_e>(i);
+ }
+
+ return eVarFormat_Invalid;
}
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the var format enumeration for the specified character.
-// Type: Static method.
-// Args: vrcFormat - (R) Character representing the var format.
-// Return: varFormat_e - Var format enumeration.
-// - No match found return eVarFormat_Invalid.
-// Throws: None.
-//--
-CMICmnLLDBDebugSessionInfoVarObj::varFormat_e CMICmnLLDBDebugSessionInfoVarObj::GetVarFormatForChar( const MIchar & vrcFormat )
-{
- if( 'r' == vrcFormat )
- return eVarFormat_Hex;
-
- // CODETAG_SESSIONINFO_VARFORMAT_ENUM
- for( MIuint i = 0; i < eVarFormat_count; i++ )
- {
- const MIchar * pVarFormatChar = ms_aVarFormatChars[ i ];
- if( *pVarFormatChar == vrcFormat )
- return static_cast< varFormat_e >( i );
- }
-
- return eVarFormat_Invalid;
+// Details: Retrieve the var format enumeration for the specified character.
+// Type: Static method.
+// Args: vrcFormat - (R) Character representing the var format.
+// Return: varFormat_e - Var format enumeration.
+// - No match found return eVarFormat_Invalid.
+// Throws: None.
+//--
+CMICmnLLDBDebugSessionInfoVarObj::varFormat_e
+CMICmnLLDBDebugSessionInfoVarObj::GetVarFormatForChar(const MIchar &vrcFormat)
+{
+ if ('r' == vrcFormat)
+ return eVarFormat_Hex;
+
+ // CODETAG_SESSIONINFO_VARFORMAT_ENUM
+ for (MIuint i = 0; i < eVarFormat_count; i++)
+ {
+ const MIchar *pVarFormatChar = ms_aVarFormatChars[i];
+ if (*pVarFormatChar == vrcFormat)
+ return static_cast<varFormat_e>(i);
+ }
+
+ return eVarFormat_Invalid;
}
//++ ------------------------------------------------------------------------------------
-// Details: Return the equivalent var value formatted string for the given value type.
-// The SBValue vrValue parameter is checked by LLDB private code for valid
-// scalar type via MI Driver proxy function as the valued returned can also be
-// an error condition. The proxy function determines if the check was valid
-// otherwise return an error condition state by other means saying so.
-// Type: Static method.
-// Args: vrValue - (R) The var value object.
-// veVarFormat - (R) Var format enumeration.
-// Returns: CMIUtilString - Value formatted string.
-// Throws: None.
-//--
-CMIUtilString CMICmnLLDBDebugSessionInfoVarObj::GetValueStringFormatted( const lldb::SBValue & vrValue, const CMICmnLLDBDebugSessionInfoVarObj::varFormat_e veVarFormat )
-{
- CMIUtilString strFormattedValue;
-
- MIuint64 nValue = 0;
- if( CMICmnLLDBProxySBValue::GetValueAsUnsigned( vrValue, nValue ) == MIstatus::success )
- {
- lldb::SBValue & rValue = const_cast< lldb::SBValue & >( vrValue );
- strFormattedValue = GetStringFormatted( nValue, rValue.GetValue(), veVarFormat );
- }
- else
- {
- // Composite variable type i.e. struct
- strFormattedValue = "{...}";
- }
-
- return strFormattedValue;
+// Details: Return the equivalent var value formatted string for the given value type.
+// The SBValue vrValue parameter is checked by LLDB private code for valid
+// scalar type via MI Driver proxy function as the valued returned can also be
+// an error condition. The proxy function determines if the check was valid
+// otherwise return an error condition state by other means saying so.
+// Type: Static method.
+// Args: vrValue - (R) The var value object.
+// veVarFormat - (R) Var format enumeration.
+// Returns: CMIUtilString - Value formatted string.
+// Throws: None.
+//--
+CMIUtilString
+CMICmnLLDBDebugSessionInfoVarObj::GetValueStringFormatted(const lldb::SBValue &vrValue,
+ const CMICmnLLDBDebugSessionInfoVarObj::varFormat_e veVarFormat)
+{
+ CMIUtilString strFormattedValue;
+
+ MIuint64 nValue = 0;
+ if (CMICmnLLDBProxySBValue::GetValueAsUnsigned(vrValue, nValue) == MIstatus::success)
+ {
+ lldb::SBValue &rValue = const_cast<lldb::SBValue &>(vrValue);
+ strFormattedValue = GetStringFormatted(nValue, rValue.GetValue(), veVarFormat);
+ }
+ else
+ {
+ // Composite variable type i.e. struct
+ strFormattedValue = "{...}";
+ }
+
+ return strFormattedValue;
}
//++ ------------------------------------------------------------------------------------
-// Details: Return nuber formatted string according to the given value type.
-// Type: Static method.
-// Args: vnValue - (R) The number value to get formatted.
-// vpStrValueNatural - (R) The natural representation of the number value.
-// veVarFormat - (R) Var format enumeration.
-// Returns: CMIUtilString - Numerical formatted string.
-// Throws: None.
-//--
-CMIUtilString CMICmnLLDBDebugSessionInfoVarObj::GetStringFormatted( const MIuint64 vnValue, const MIchar * vpStrValueNatural, const CMICmnLLDBDebugSessionInfoVarObj::varFormat_e veVarFormat )
-{
- CMIUtilString strFormattedValue;
-
- switch( veVarFormat )
- {
- case eVarFormat_Binary:
- strFormattedValue = CMIUtilString::FormatBinary( vnValue );
- break;
- case eVarFormat_Octal:
- strFormattedValue = CMIUtilString::Format( "0%llo", vnValue );
- break;
- case eVarFormat_Decimal:
- strFormattedValue = CMIUtilString::Format( "%lld", vnValue );
- break;
- case eVarFormat_Hex:
- strFormattedValue = CMIUtilString::Format( "0x%llx", vnValue );
- break;
- case eVarFormat_Natural:
- default:
- {
- strFormattedValue = (vpStrValueNatural != nullptr) ? vpStrValueNatural : "";
- }
- }
-
- return strFormattedValue;
+// Details: Return nuber formatted string according to the given value type.
+// Type: Static method.
+// Args: vnValue - (R) The number value to get formatted.
+// vpStrValueNatural - (R) The natural representation of the number value.
+// veVarFormat - (R) Var format enumeration.
+// Returns: CMIUtilString - Numerical formatted string.
+// Throws: None.
+//--
+CMIUtilString
+CMICmnLLDBDebugSessionInfoVarObj::GetStringFormatted(const MIuint64 vnValue, const MIchar *vpStrValueNatural,
+ const CMICmnLLDBDebugSessionInfoVarObj::varFormat_e veVarFormat)
+{
+ CMIUtilString strFormattedValue;
+
+ switch (veVarFormat)
+ {
+ case eVarFormat_Binary:
+ strFormattedValue = CMIUtilString::FormatBinary(vnValue);
+ break;
+ case eVarFormat_Octal:
+ strFormattedValue = CMIUtilString::Format("0%llo", vnValue);
+ break;
+ case eVarFormat_Decimal:
+ strFormattedValue = CMIUtilString::Format("%lld", vnValue);
+ break;
+ case eVarFormat_Hex:
+ strFormattedValue = CMIUtilString::Format("0x%llx", vnValue);
+ break;
+ case eVarFormat_Natural:
+ default:
+ {
+ strFormattedValue = (vpStrValueNatural != nullptr) ? vpStrValueNatural : "";
+ }
+ }
+
+ return strFormattedValue;
}
//++ ------------------------------------------------------------------------------------
-// Details: Delete internal container contents.
-// Type: Static method.
-// Args: None.
-// Returns: None.
-// Throws: None.
+// Details: Delete internal container contents.
+// Type: Static method.
+// Args: None.
+// Returns: None.
+// Throws: None.
//--
-void CMICmnLLDBDebugSessionInfoVarObj::VarObjClear( void )
+void
+CMICmnLLDBDebugSessionInfoVarObj::VarObjClear(void)
{
- ms_mapVarIdToVarObj.clear();
+ ms_mapVarIdToVarObj.clear();
}
//++ ------------------------------------------------------------------------------------
-// Details: Add a var object to the internal container.
-// Type: Static method.
-// Args: vrVarObj - (R) The var value object.
-// Returns: None.
-// Throws: None.
-//--
-void CMICmnLLDBDebugSessionInfoVarObj::VarObjAdd( const CMICmnLLDBDebugSessionInfoVarObj & vrVarObj )
-{
- VarObjDelete( vrVarObj.GetName() );
- MapPairKeyToVarObj_t pr( vrVarObj.GetName(), vrVarObj );
- ms_mapVarIdToVarObj.insert( pr );
+// Details: Add a var object to the internal container.
+// Type: Static method.
+// Args: vrVarObj - (R) The var value object.
+// Returns: None.
+// Throws: None.
+//--
+void
+CMICmnLLDBDebugSessionInfoVarObj::VarObjAdd(const CMICmnLLDBDebugSessionInfoVarObj &vrVarObj)
+{
+ VarObjDelete(vrVarObj.GetName());
+ MapPairKeyToVarObj_t pr(vrVarObj.GetName(), vrVarObj);
+ ms_mapVarIdToVarObj.insert(pr);
}
-
+
//++ ------------------------------------------------------------------------------------
-// Details: Delete the var object from the internal container matching the specified name.
-// Type: Static method.
-// Args: vrVarName - (R) The var value name.
-// Returns: None.
-// Throws: None.
-//--
-void CMICmnLLDBDebugSessionInfoVarObj::VarObjDelete( const CMIUtilString & vrVarName )
-{
- const MapKeyToVarObj_t::const_iterator it = ms_mapVarIdToVarObj.find( vrVarName );
- if( it != ms_mapVarIdToVarObj.end() )
- {
- ms_mapVarIdToVarObj.erase( it );
- }
+// Details: Delete the var object from the internal container matching the specified name.
+// Type: Static method.
+// Args: vrVarName - (R) The var value name.
+// Returns: None.
+// Throws: None.
+//--
+void
+CMICmnLLDBDebugSessionInfoVarObj::VarObjDelete(const CMIUtilString &vrVarName)
+{
+ const MapKeyToVarObj_t::const_iterator it = ms_mapVarIdToVarObj.find(vrVarName);
+ if (it != ms_mapVarIdToVarObj.end())
+ {
+ ms_mapVarIdToVarObj.erase(it);
+ }
}
//++ ------------------------------------------------------------------------------------
-// Details: Update an existing var object in the internal container.
-// Type: Static method.
-// Args: vrVarObj - (R) The var value object.
-// Returns: None.
-// Throws: None.
+// Details: Update an existing var object in the internal container.
+// Type: Static method.
+// Args: vrVarObj - (R) The var value object.
+// Returns: None.
+// Throws: None.
//--
-void CMICmnLLDBDebugSessionInfoVarObj::VarObjUpdate( const CMICmnLLDBDebugSessionInfoVarObj & vrVarObj )
+void
+CMICmnLLDBDebugSessionInfoVarObj::VarObjUpdate(const CMICmnLLDBDebugSessionInfoVarObj &vrVarObj)
{
- VarObjAdd( vrVarObj );
+ VarObjAdd(vrVarObj);
}
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the var object matching the specified name.
-// Type: Static method.
-// Args: vrVarName - (R) The var value name.
-// vrwVarObj - (W) A var object.
-// Returns: bool - True = object found, false = object not found.
-// Throws: None.
-//--
-bool CMICmnLLDBDebugSessionInfoVarObj::VarObjGet( const CMIUtilString & vrVarName, CMICmnLLDBDebugSessionInfoVarObj & vrwVarObj )
-{
- const MapKeyToVarObj_t::const_iterator it = ms_mapVarIdToVarObj.find( vrVarName );
- if( it != ms_mapVarIdToVarObj.end() )
- {
- const CMICmnLLDBDebugSessionInfoVarObj & rVarObj = (*it).second;
- vrwVarObj = rVarObj;
- return true;
- }
-
- return false;
+// Details: Retrieve the var object matching the specified name.
+// Type: Static method.
+// Args: vrVarName - (R) The var value name.
+// vrwVarObj - (W) A var object.
+// Returns: bool - True = object found, false = object not found.
+// Throws: None.
+//--
+bool
+CMICmnLLDBDebugSessionInfoVarObj::VarObjGet(const CMIUtilString &vrVarName, CMICmnLLDBDebugSessionInfoVarObj &vrwVarObj)
+{
+ const MapKeyToVarObj_t::const_iterator it = ms_mapVarIdToVarObj.find(vrVarName);
+ if (it != ms_mapVarIdToVarObj.end())
+ {
+ const CMICmnLLDBDebugSessionInfoVarObj &rVarObj = (*it).second;
+ vrwVarObj = rVarObj;
+ return true;
+ }
+
+ return false;
}
//++ ------------------------------------------------------------------------------------
-// Details: A count is kept of the number of var value objects created. This is count is
-// used to ID the var value object. Reset the count to 0.
-// Type: Static method.
-// Args: None.
-// Returns: None.
-// Throws: None.
-//--
-void CMICmnLLDBDebugSessionInfoVarObj::VarObjIdResetToZero( void )
+// Details: A count is kept of the number of var value objects created. This is count is
+// used to ID the var value object. Reset the count to 0.
+// Type: Static method.
+// Args: None.
+// Returns: None.
+// Throws: None.
+//--
+void
+CMICmnLLDBDebugSessionInfoVarObj::VarObjIdResetToZero(void)
{
- ms_nVarUniqueId = 0;
+ ms_nVarUniqueId = 0;
}
//++ ------------------------------------------------------------------------------------
-// Details: A count is kept of the number of var value objects created. This is count is
-// used to ID the var value object. Increment the count by 1.
-// Type: Static method.
-// Args: None.
-// Returns: None.
-// Throws: None.
-//--
-void CMICmnLLDBDebugSessionInfoVarObj::VarObjIdInc( void )
+// Details: A count is kept of the number of var value objects created. This is count is
+// used to ID the var value object. Increment the count by 1.
+// Type: Static method.
+// Args: None.
+// Returns: None.
+// Throws: None.
+//--
+void
+CMICmnLLDBDebugSessionInfoVarObj::VarObjIdInc(void)
{
- ms_nVarUniqueId++;
+ ms_nVarUniqueId++;
}
//++ ------------------------------------------------------------------------------------
-// Details: A count is kept of the number of var value objects created. This is count is
-// used to ID the var value object. Retrieve ID.
-// Type: Static method.
-// Args: None.
-// Returns: None.
-// Throws: None.
-//--
-MIuint CMICmnLLDBDebugSessionInfoVarObj::VarObjIdGet( void )
+// Details: A count is kept of the number of var value objects created. This is count is
+// used to ID the var value object. Retrieve ID.
+// Type: Static method.
+// Args: None.
+// Returns: None.
+// Throws: None.
+//--
+MIuint
+CMICmnLLDBDebugSessionInfoVarObj::VarObjIdGet(void)
{
- return ms_nVarUniqueId;
+ return ms_nVarUniqueId;
}
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the value formatted object's name.
-// Type: Method.
-// Args: None.
-// Returns: CMIUtilString & - Value's var%u name text.
-// Throws: None.
+// Details: Retrieve the value formatted object's name.
+// Type: Method.
+// Args: None.
+// Returns: CMIUtilString & - Value's var%u name text.
+// Throws: None.
//--
-const CMIUtilString & CMICmnLLDBDebugSessionInfoVarObj::GetName( void ) const
+const CMIUtilString &
+CMICmnLLDBDebugSessionInfoVarObj::GetName(void) const
{
- return m_strName;
+ return m_strName;
}
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the value formatted object's variable name as given in the MI command
-// to create the var object.
-// Type: Method.
-// Args: None.
-// Returns: CMIUtilString & - Value's real name text.
-// Throws: None.
-//--
-const CMIUtilString & CMICmnLLDBDebugSessionInfoVarObj::GetNameReal( void ) const
+// Details: Retrieve the value formatted object's variable name as given in the MI command
+// to create the var object.
+// Type: Method.
+// Args: None.
+// Returns: CMIUtilString & - Value's real name text.
+// Throws: None.
+//--
+const CMIUtilString &
+CMICmnLLDBDebugSessionInfoVarObj::GetNameReal(void) const
{
- return m_strNameReal;
+ return m_strNameReal;
}
-
+
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the value formatted string.
-// Type: Method.
-// Args: None.
-// Returns: CMIUtilString & - Value formatted string.
-// Throws: None.
+// Details: Retrieve the value formatted string.
+// Type: Method.
+// Args: None.
+// Returns: CMIUtilString & - Value formatted string.
+// Throws: None.
//--
-const CMIUtilString & CMICmnLLDBDebugSessionInfoVarObj::GetValueFormatted( void ) const
+const CMIUtilString &
+CMICmnLLDBDebugSessionInfoVarObj::GetValueFormatted(void) const
{
- return m_strFormattedValue;
+ return m_strFormattedValue;
}
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the LLDB Value object.
-// Type: Method.
-// Args: None.
-// Returns: lldb::SBValue & - LLDB Value object.
-// Throws: None.
+// Details: Retrieve the LLDB Value object.
+// Type: Method.
+// Args: None.
+// Returns: lldb::SBValue & - LLDB Value object.
+// Throws: None.
//--
-const lldb::SBValue & CMICmnLLDBDebugSessionInfoVarObj::GetValue( void ) const
+const lldb::SBValue &
+CMICmnLLDBDebugSessionInfoVarObj::GetValue(void) const
{
- return m_SBValue;
+ return m_SBValue;
}
//++ ------------------------------------------------------------------------------------
-// Details: Set the var format type for *this object and upate the formatting.
-// Type: Method.
-// Args: None.
-// Return: MIstatus::success - Functional succeeded.
-// MIstatus::failure - Functional failed.
-// Throws: None.
-//--
-bool CMICmnLLDBDebugSessionInfoVarObj::SetVarFormat( const varFormat_e veVarFormat )
-{
- if( veVarFormat >= eVarFormat_count )
- return MIstatus::failure;
-
- m_eVarFormat = veVarFormat;
- UpdateValue();
- return MIstatus::success;
+// Details: Set the var format type for *this object and upate the formatting.
+// Type: Method.
+// Args: None.
+// Return: MIstatus::success - Functional succeeded.
+// MIstatus::failure - Functional failed.
+// Throws: None.
+//--
+bool
+CMICmnLLDBDebugSessionInfoVarObj::SetVarFormat(const varFormat_e veVarFormat)
+{
+ if (veVarFormat >= eVarFormat_count)
+ return MIstatus::failure;
+
+ m_eVarFormat = veVarFormat;
+ UpdateValue();
+ return MIstatus::success;
}
//++ ------------------------------------------------------------------------------------
-// Details: Update *this var obj. Update it's value and type.
-// Type: Method.
-// Args: None.
-// Returns: None.
-// Throws: None.
+// Details: Update *this var obj. Update it's value and type.
+// Type: Method.
+// Args: None.
+// Returns: None.
+// Throws: None.
//--
-void CMICmnLLDBDebugSessionInfoVarObj::UpdateValue( void )
+void
+CMICmnLLDBDebugSessionInfoVarObj::UpdateValue(void)
{
- m_strFormattedValue = CMICmnLLDBDebugSessionInfoVarObj::GetValueStringFormatted( m_SBValue, m_eVarFormat );
+ m_strFormattedValue = CMICmnLLDBDebugSessionInfoVarObj::GetValueStringFormatted(m_SBValue, m_eVarFormat);
- MIuint64 nValue = 0;
- if( CMICmnLLDBProxySBValue::GetValueAsUnsigned( m_SBValue, nValue ) == MIstatus::failure )
- m_eVarType = eVarType_Composite;
+ MIuint64 nValue = 0;
+ if (CMICmnLLDBProxySBValue::GetValueAsUnsigned(m_SBValue, nValue) == MIstatus::failure)
+ m_eVarType = eVarType_Composite;
- CMICmnLLDBDebugSessionInfoVarObj::VarObjUpdate( *this );
+ CMICmnLLDBDebugSessionInfoVarObj::VarObjUpdate(*this);
}
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the enumeration type of the var object.
-// Type: Method.
-// Args: None.
-// Returns: varType_e - Enumeration value.
-// Throws: None.
+// Details: Retrieve the enumeration type of the var object.
+// Type: Method.
+// Args: None.
+// Returns: varType_e - Enumeration value.
+// Throws: None.
//--
-CMICmnLLDBDebugSessionInfoVarObj::varType_e CMICmnLLDBDebugSessionInfoVarObj::GetType( void ) const
+CMICmnLLDBDebugSessionInfoVarObj::varType_e
+CMICmnLLDBDebugSessionInfoVarObj::GetType(void) const
{
- return m_eVarType;
+ return m_eVarType;
}
-
+
//++ ------------------------------------------------------------------------------------
-// Details: Retrieve the parent var object's name, the parent var object to *this var
-// object (if assigned). The parent is equivalent to LLDB SBValue variable's
-// parent.
-// Type: Method.
-// Args: None.
-// Returns: CMIUtilString & - Pointer to var object, NULL = no parent.
-// Throws: None.
-//--
-const CMIUtilString & CMICmnLLDBDebugSessionInfoVarObj::GetVarParentName( void ) const
-{
- return m_strVarObjParentName;
+// Details: Retrieve the parent var object's name, the parent var object to *this var
+// object (if assigned). The parent is equivalent to LLDB SBValue variable's
+// parent.
+// Type: Method.
+// Args: None.
+// Returns: CMIUtilString & - Pointer to var object, NULL = no parent.
+// Throws: None.
+//--
+const CMIUtilString &
+CMICmnLLDBDebugSessionInfoVarObj::GetVarParentName(void) const
+{
+ return m_strVarObjParentName;
}
- \ No newline at end of file