diff options
Diffstat (limited to 'lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp')
-rw-r--r-- | lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp | 182 |
1 files changed, 85 insertions, 97 deletions
diff --git a/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp b/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp index 43e9c72..613ad0d 100644 --- a/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp +++ b/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp @@ -11,46 +11,48 @@ #include "MICmdArgValThreadGrp.h" #include "MICmdArgContext.h" -//++ ------------------------------------------------------------------------------------ +//++ +//------------------------------------------------------------------------------------ // Details: CMICmdArgValThreadGrp constructor. // Type: Method. // Args: None. // Return: None. // Throws: None. //-- -CMICmdArgValThreadGrp::CMICmdArgValThreadGrp() - : m_nThreadGrp(0) -{ -} +CMICmdArgValThreadGrp::CMICmdArgValThreadGrp() : m_nThreadGrp(0) {} -//++ ------------------------------------------------------------------------------------ +//++ +//------------------------------------------------------------------------------------ // Details: CMICmdArgValThreadGrp constructor. // Type: Method. // Args: vrArgName - (R) Argument's name to search by. -// vbMandatory - (R) True = Yes must be present, false = optional argument. -// vbHandleByCmd - (R) True = Command processes *this option, false = not handled. +// vbMandatory - (R) True = Yes must be present, false = optional +// argument. +// vbHandleByCmd - (R) True = Command processes *this option, false = +// not handled. // Return: None. // Throws: None. //-- -CMICmdArgValThreadGrp::CMICmdArgValThreadGrp(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd) - : CMICmdArgValBaseTemplate(vrArgName, vbMandatory, vbHandleByCmd) - , m_nThreadGrp(0) -{ -} - -//++ ------------------------------------------------------------------------------------ +CMICmdArgValThreadGrp::CMICmdArgValThreadGrp(const CMIUtilString &vrArgName, + const bool vbMandatory, + const bool vbHandleByCmd) + : CMICmdArgValBaseTemplate(vrArgName, vbMandatory, vbHandleByCmd), + m_nThreadGrp(0) {} + +//++ +//------------------------------------------------------------------------------------ // Details: CMICmdArgValThreadGrp destructor. // Type: Overridden. // Args: None. // Return: None. // Throws: None. //-- -CMICmdArgValThreadGrp::~CMICmdArgValThreadGrp() -{ -} +CMICmdArgValThreadGrp::~CMICmdArgValThreadGrp() {} -//++ ------------------------------------------------------------------------------------ -// Details: Parse the command's argument options string and try to extract the value *this +//++ +//------------------------------------------------------------------------------------ +// Details: Parse the command's argument options string and try to extract the +// value *this // argument is looking for. // Type: Overridden. // Args: vwArgContext - (RW) The command's argument options string. @@ -58,77 +60,69 @@ CMICmdArgValThreadGrp::~CMICmdArgValThreadGrp() // MIstatus::failure - Functional failed. // Throws: None. //-- -bool -CMICmdArgValThreadGrp::Validate(CMICmdArgContext &vwArgContext) -{ - if (vwArgContext.IsEmpty()) - return m_bMandatory ? MIstatus::failure : MIstatus::success; - - if (vwArgContext.GetNumberArgsPresent() == 1) - { - const CMIUtilString &rArg(vwArgContext.GetArgsLeftToParse()); - if (IsArgThreadGrp(rArg) && ExtractNumber(rArg)) - { - m_bFound = true; - m_bValid = true; - m_argValue = GetNumber(); - vwArgContext.RemoveArg(rArg); - return MIstatus::success; - } - else - return MIstatus::failure; +bool CMICmdArgValThreadGrp::Validate(CMICmdArgContext &vwArgContext) { + if (vwArgContext.IsEmpty()) + return m_bMandatory ? MIstatus::failure : MIstatus::success; + + if (vwArgContext.GetNumberArgsPresent() == 1) { + const CMIUtilString &rArg(vwArgContext.GetArgsLeftToParse()); + if (IsArgThreadGrp(rArg) && ExtractNumber(rArg)) { + m_bFound = true; + m_bValid = true; + m_argValue = GetNumber(); + vwArgContext.RemoveArg(rArg); + return MIstatus::success; + } else + return MIstatus::failure; + } + + // More than one option... + const CMIUtilString::VecString_t vecOptions(vwArgContext.GetArgs()); + CMIUtilString::VecString_t::const_iterator it = vecOptions.begin(); + while (it != vecOptions.end()) { + const CMIUtilString &rArg(*it); + if (IsArgThreadGrp(rArg) && ExtractNumber(rArg)) { + m_bFound = true; + + if (vwArgContext.RemoveArg(rArg)) { + m_bValid = true; + m_argValue = GetNumber(); + return MIstatus::success; + } else + return MIstatus::failure; } - // More than one option... - const CMIUtilString::VecString_t vecOptions(vwArgContext.GetArgs()); - CMIUtilString::VecString_t::const_iterator it = vecOptions.begin(); - while (it != vecOptions.end()) - { - const CMIUtilString &rArg(*it); - if (IsArgThreadGrp(rArg) && ExtractNumber(rArg)) - { - m_bFound = true; - - if (vwArgContext.RemoveArg(rArg)) - { - m_bValid = true; - m_argValue = GetNumber(); - return MIstatus::success; - } - else - return MIstatus::failure; - } - - // Next - ++it; - } + // Next + ++it; + } - return MIstatus::failure; + return MIstatus::failure; } -//++ ------------------------------------------------------------------------------------ -// Details: Examine the string and determine if it is a valid string type argument. +//++ +//------------------------------------------------------------------------------------ +// Details: Examine the string and determine if it is a valid string type +// argument. // Type: Method. // Args: vrTxt - (R) Some text. // Return: bool - True = yes valid arg, false = no. // Throws: None. //-- -bool -CMICmdArgValThreadGrp::IsArgThreadGrp(const CMIUtilString &vrTxt) const -{ - // Look for i1 i2 i3.... - const MIint nPos = vrTxt.find('i'); - if (nPos != 0) - return false; - - const CMIUtilString strNum = vrTxt.substr(1); - if (!strNum.IsNumber()) - return false; - - return true; +bool CMICmdArgValThreadGrp::IsArgThreadGrp(const CMIUtilString &vrTxt) const { + // Look for i1 i2 i3.... + const MIint nPos = vrTxt.find('i'); + if (nPos != 0) + return false; + + const CMIUtilString strNum = vrTxt.substr(1); + if (!strNum.IsNumber()) + return false; + + return true; } -//++ ------------------------------------------------------------------------------------ +//++ +//------------------------------------------------------------------------------------ // Details: Extract the thread group number from the thread group argument. // Type: Method. // Args: vrTxt - (R) Some text. @@ -136,29 +130,23 @@ CMICmdArgValThreadGrp::IsArgThreadGrp(const CMIUtilString &vrTxt) const // MIstatus::failure - Functional failed. // Throws: None. //-- -bool -CMICmdArgValThreadGrp::ExtractNumber(const CMIUtilString &vrTxt) -{ - const CMIUtilString strNum = vrTxt.substr(1); - MIint64 nNumber = 0; - bool bOk = strNum.ExtractNumber(nNumber); - if (bOk) - { - m_nThreadGrp = static_cast<MIuint>(nNumber); - } - - return bOk; +bool CMICmdArgValThreadGrp::ExtractNumber(const CMIUtilString &vrTxt) { + const CMIUtilString strNum = vrTxt.substr(1); + MIint64 nNumber = 0; + bool bOk = strNum.ExtractNumber(nNumber); + if (bOk) { + m_nThreadGrp = static_cast<MIuint>(nNumber); + } + + return bOk; } -//++ ------------------------------------------------------------------------------------ +//++ +//------------------------------------------------------------------------------------ // Details: Retrieve the thread group ID found in the argument. // Type: Method. // Args: None. // Return: MIuint - Thread group ID. // Throws: None. //-- -MIuint -CMICmdArgValThreadGrp::GetNumber() const -{ - return m_nThreadGrp; -} +MIuint CMICmdArgValThreadGrp::GetNumber() const { return m_nThreadGrp; } |