diff options
Diffstat (limited to 'lldb/tools/lldb-mi/MICmdArgValListOfN.cpp')
-rw-r--r-- | lldb/tools/lldb-mi/MICmdArgValListOfN.cpp | 203 |
1 files changed, 101 insertions, 102 deletions
diff --git a/lldb/tools/lldb-mi/MICmdArgValListOfN.cpp b/lldb/tools/lldb-mi/MICmdArgValListOfN.cpp index 78f5fdc65f4..103008e9881 100644 --- a/lldb/tools/lldb-mi/MICmdArgValListOfN.cpp +++ b/lldb/tools/lldb-mi/MICmdArgValListOfN.cpp @@ -17,46 +17,50 @@ #include "MICmdArgValString.h" #include "MICmdArgValThreadGrp.h" -//++ ------------------------------------------------------------------------------------ +//++ +//------------------------------------------------------------------------------------ // Details: CMICmdArgValListOfN constructor. // Type: Method. // Args: None. // Return: None. // Throws: None. //-- -CMICmdArgValListOfN::CMICmdArgValListOfN() -{ -} +CMICmdArgValListOfN::CMICmdArgValListOfN() {} -//++ ------------------------------------------------------------------------------------ +//++ +//------------------------------------------------------------------------------------ // Details: CMICmdArgValListOfN 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. -// veType - (R) The type of argument to look for and create argument object of a certain type. +// vbMandatory - (R) True = Yes must be present, false = optional +// argument. +// vbHandleByCmd - (R) True = Command processes *this option, false = +// not handled. +// veType - (R) The type of argument to look for and create +// argument object of a certain type. // Return: None. // Throws: None. //-- -CMICmdArgValListOfN::CMICmdArgValListOfN(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd, +CMICmdArgValListOfN::CMICmdArgValListOfN(const CMIUtilString &vrArgName, + const bool vbMandatory, + const bool vbHandleByCmd, const ArgValType_e veType) - : CMICmdArgValListBase(vrArgName, vbMandatory, vbHandleByCmd, veType) -{ -} + : CMICmdArgValListBase(vrArgName, vbMandatory, vbHandleByCmd, veType) {} -//++ ------------------------------------------------------------------------------------ +//++ +//------------------------------------------------------------------------------------ // Details: CMICmdArgValListOfN destructor. // Type: Overridden. // Args: None. // Return: None. // Throws: None. //-- -CMICmdArgValListOfN::~CMICmdArgValListOfN() -{ -} +CMICmdArgValListOfN::~CMICmdArgValListOfN() {} -//++ ------------------------------------------------------------------------------------ -// Details: Parse the command's argument options string and try to extract the list of +//++ +//------------------------------------------------------------------------------------ +// Details: Parse the command's argument options string and try to extract the +// list of // arguments based on the argument object type to look for. // Type: Overridden. // Args: vwArgContext - (RW) The command's argument options string. @@ -64,105 +68,101 @@ CMICmdArgValListOfN::~CMICmdArgValListOfN() // MIstatus::failure - Functional failed. // Throws: None. //-- -bool -CMICmdArgValListOfN::Validate(CMICmdArgContext &vwArgContext) -{ - if (m_eArgType >= eArgValType_count) - { - m_eArgType = eArgValType_invalid; - return MIstatus::failure; - } - - if (vwArgContext.IsEmpty()) - return m_bMandatory ? MIstatus::failure : MIstatus::success; - - const CMIUtilString &rArg(vwArgContext.GetArgsLeftToParse()); - if (IsListOfN(rArg) && CreateList(rArg)) - { - m_bFound = true; - m_bValid = true; - vwArgContext.RemoveArg(rArg); - return MIstatus::success; - } - else - return MIstatus::failure; +bool CMICmdArgValListOfN::Validate(CMICmdArgContext &vwArgContext) { + if (m_eArgType >= eArgValType_count) { + m_eArgType = eArgValType_invalid; + return MIstatus::failure; + } + + if (vwArgContext.IsEmpty()) + return m_bMandatory ? MIstatus::failure : MIstatus::success; + + const CMIUtilString &rArg(vwArgContext.GetArgsLeftToParse()); + if (IsListOfN(rArg) && CreateList(rArg)) { + m_bFound = true; + m_bValid = true; + vwArgContext.RemoveArg(rArg); + return MIstatus::success; + } else + return MIstatus::failure; } -//++ ------------------------------------------------------------------------------------ -// Details: Create list of argument objects each holding a value extract from the command +//++ +//------------------------------------------------------------------------------------ +// Details: Create list of argument objects each holding a value extract from +// the command // options line. // Type: Method. // Args: vrTxt - (R) Some options text. // Return: bool - True = yes valid arg, false = no. // Throws: None. //-- -bool -CMICmdArgValListOfN::CreateList(const CMIUtilString &vrTxt) -{ - CMIUtilString::VecString_t vecOptions; - if ((m_eArgType == eArgValType_StringQuoted) || (m_eArgType == eArgValType_StringQuotedNumber) || - (m_eArgType == eArgValType_StringQuotedNumberPath) || (m_eArgType == eArgValType_StringAnything)) - { - if (vrTxt.SplitConsiderQuotes(" ", vecOptions) == 0) - return MIstatus::failure; - } - else if (vrTxt.Split(" ", vecOptions) == 0) - return MIstatus::failure; - - CMIUtilString::VecString_t::const_iterator it = vecOptions.begin(); - while (it != vecOptions.end()) - { - const CMIUtilString &rOption = *it; - CMICmdArgValBase *pOption = CreationObj(rOption, m_eArgType); - if (pOption != nullptr) - m_argValue.push_back(pOption); - else - return MIstatus::failure; - - // Next - ++it; - } +bool CMICmdArgValListOfN::CreateList(const CMIUtilString &vrTxt) { + CMIUtilString::VecString_t vecOptions; + if ((m_eArgType == eArgValType_StringQuoted) || + (m_eArgType == eArgValType_StringQuotedNumber) || + (m_eArgType == eArgValType_StringQuotedNumberPath) || + (m_eArgType == eArgValType_StringAnything)) { + if (vrTxt.SplitConsiderQuotes(" ", vecOptions) == 0) + return MIstatus::failure; + } else if (vrTxt.Split(" ", vecOptions) == 0) + return MIstatus::failure; + + CMIUtilString::VecString_t::const_iterator it = vecOptions.begin(); + while (it != vecOptions.end()) { + const CMIUtilString &rOption = *it; + CMICmdArgValBase *pOption = CreationObj(rOption, m_eArgType); + if (pOption != nullptr) + m_argValue.push_back(pOption); + else + return MIstatus::failure; - return MIstatus::success; + // Next + ++it; + } + + return MIstatus::success; } -//++ ------------------------------------------------------------------------------------ -// 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 -CMICmdArgValListOfN::IsListOfN(const CMIUtilString &vrTxt) const -{ - CMIUtilString::VecString_t vecOptions; - if ((m_eArgType == eArgValType_StringQuoted) || (m_eArgType == eArgValType_StringQuotedNumber) || - (m_eArgType == eArgValType_StringQuotedNumberPath) || (m_eArgType == eArgValType_StringAnything)) - { - if (vrTxt.SplitConsiderQuotes(" ", vecOptions) == 0) - return false; - } - else if (vrTxt.Split(" ", vecOptions) == 0) - return false; - - CMIUtilString::VecString_t::const_iterator it = vecOptions.begin(); - while (it != vecOptions.end()) - { - const CMIUtilString &rOption = *it; - if (!IsExpectedCorrectType(rOption, m_eArgType)) - break; - - // Next - ++it; - } - - return true; +bool CMICmdArgValListOfN::IsListOfN(const CMIUtilString &vrTxt) const { + CMIUtilString::VecString_t vecOptions; + if ((m_eArgType == eArgValType_StringQuoted) || + (m_eArgType == eArgValType_StringQuotedNumber) || + (m_eArgType == eArgValType_StringQuotedNumberPath) || + (m_eArgType == eArgValType_StringAnything)) { + if (vrTxt.SplitConsiderQuotes(" ", vecOptions) == 0) + return false; + } else if (vrTxt.Split(" ", vecOptions) == 0) + return false; + + CMIUtilString::VecString_t::const_iterator it = vecOptions.begin(); + while (it != vecOptions.end()) { + const CMIUtilString &rOption = *it; + if (!IsExpectedCorrectType(rOption, m_eArgType)) + break; + + // Next + ++it; + } + + return true; } -//++ ------------------------------------------------------------------------------------ -// Details: Retrieve the list of CMICmdArgValBase derived option objects found following -// *this long option argument. For example "list-thread-groups [ --recurse 1 ]" +//++ +//------------------------------------------------------------------------------------ +// Details: Retrieve the list of CMICmdArgValBase derived option objects found +// following +// *this long option argument. For example "list-thread-groups [ +// --recurse 1 ]" // where 1 is the list of expected option to follow. // Type: Method. // Args: None. @@ -170,7 +170,6 @@ CMICmdArgValListOfN::IsListOfN(const CMIUtilString &vrTxt) const // Throws: None. //-- const CMICmdArgValListBase::VecArgObjPtr_t & -CMICmdArgValListOfN::GetExpectedOptions() const -{ - return m_argValue; +CMICmdArgValListOfN::GetExpectedOptions() const { + return m_argValue; } |