diff options
Diffstat (limited to 'tools/lldb-mi/MICmdArgValListBase.h')
-rw-r--r-- | tools/lldb-mi/MICmdArgValListBase.h | 137 |
1 files changed, 69 insertions, 68 deletions
diff --git a/tools/lldb-mi/MICmdArgValListBase.h b/tools/lldb-mi/MICmdArgValListBase.h index 2798efa19a48..0e56f6dac021 100644 --- a/tools/lldb-mi/MICmdArgValListBase.h +++ b/tools/lldb-mi/MICmdArgValListBase.h @@ -8,15 +8,15 @@ //===----------------------------------------------------------------------===// //++ -// File: MICmdArgValListBase.h +// File: MICmdArgValListBase.h // -// Overview: CMICmdArgValListBase interface. +// Overview: CMICmdArgValListBase interface. // -// 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. //-- #pragma once @@ -31,73 +31,74 @@ class CMICmdArgContext; //++ ============================================================================ -// Details: MI common code class. Command argument with addition options class. -// For example --recurse 1 2 4 [group ...]. Arguments object that -// require a list of options associated with them derive from the -// CMICmdArgValListBase class. Additional options are also extracted from -// the command arguments text string. -// An argument knows what type of argument it is and how it is to -// interpret the options (context) string to find and validate a matching -// options and so extract a values from it . -// The CMICmdArgValBase objects are added to the derived argument class's -// container. The option arguments belong to that derived class and will -// be deleted that object goes out of scope. -// Based on the Interpreter pattern. -// Gotchas: None. -// Authors: Illya Rudkin 16/04/2014. -// Changes: None. +// Details: MI common code class. Command argument with addition options class. +// For example --recurse 1 2 4 [group ...]. Arguments object that +// require a list of options associated with them derive from the +// CMICmdArgValListBase class. Additional options are also extracted from +// the command arguments text string. +// An argument knows what type of argument it is and how it is to +// interpret the options (context) string to find and validate a matching +// options and so extract a values from it . +// The CMICmdArgValBase objects are added to the derived argument class's +// container. The option arguments belong to that derived class and will +// be deleted that object goes out of scope. +// Based on the Interpreter pattern. +// Gotchas: None. +// Authors: Illya Rudkin 16/04/2014. +// Changes: None. //-- -class CMICmdArgValListBase : public CMICmdArgValBaseTemplate< std::vector< CMICmdArgValBase * > > +class CMICmdArgValListBase : public CMICmdArgValBaseTemplate<std::vector<CMICmdArgValBase *>> { -// Typedef: -public: - typedef std::vector< CMICmdArgValBase * > VecArgObjPtr_t; + // Typedef: + public: + typedef std::vector<CMICmdArgValBase *> VecArgObjPtr_t; -// Enums: -public: - //++ --------------------------------------------------------------------------------- - // Details: CMICmdArgValListBase needs to know what type of argument to look for in - // the command options text. It also needs to create argument objects of - // a specific type. - //-- - enum ArgValType_e - { - eArgValType_File = 0, - eArgValType_Consume, - eArgValType_Number, - eArgValType_OptionLong, - eArgValType_OptionShort, - eArgValType_String, - eArgValType_StringQuoted, - eArgValType_StringQuotedNumber, - eArgValType_StringQuotedNumberPath, - eArgValType_StringAnything, // Accept any words for a string 'type' even if they look like --longOptions for example - eArgValType_ThreadGrp, - eArgValType_count, // Always the last one - eArgValType_invalid - }; + // Enums: + public: + //++ --------------------------------------------------------------------------------- + // Details: CMICmdArgValListBase needs to know what type of argument to look for in + // the command options text. It also needs to create argument objects of + // a specific type. + //-- + enum ArgValType_e + { + eArgValType_File = 0, + eArgValType_Consume, + eArgValType_Number, + eArgValType_OptionLong, + eArgValType_OptionShort, + eArgValType_String, + eArgValType_StringQuoted, + eArgValType_StringQuotedNumber, + eArgValType_StringQuotedNumberPath, + eArgValType_StringAnything, // Accept any words for a string 'type' even if they look like --longOptions for example + eArgValType_ThreadGrp, + eArgValType_count, // Always the last one + eArgValType_invalid + }; -// Methods: -public: - /* ctor */ CMICmdArgValListBase( void ); - /* ctor */ CMICmdArgValListBase( const CMIUtilString & vrArgName, const bool vbMandatory, const bool vbHandleByCmd ); - /* ctor */ CMICmdArgValListBase( const CMIUtilString & vrArgName, const bool vbMandatory, const bool vbHandleByCmd, const ArgValType_e veType ); + // Methods: + public: + /* ctor */ CMICmdArgValListBase(void); + /* ctor */ CMICmdArgValListBase(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd); + /* ctor */ CMICmdArgValListBase(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd, + const ArgValType_e veType); -// Overridden: -public: - // From CMICmdArgValBase - /* dtor */ virtual ~CMICmdArgValListBase( void ); + // Overridden: + public: + // From CMICmdArgValBase + /* dtor */ virtual ~CMICmdArgValListBase(void); -// Methods: -protected: - bool IsExpectedCorrectType( const CMIUtilString & vrTxt, const ArgValType_e veType ) const; - CMICmdArgValBase * CreationObj( const CMIUtilString & vrTxt, const ArgValType_e veType ) const; - -// Attributes: -protected: - ArgValType_e m_eArgType; + // Methods: + protected: + bool IsExpectedCorrectType(const CMIUtilString &vrTxt, const ArgValType_e veType) const; + CMICmdArgValBase *CreationObj(const CMIUtilString &vrTxt, const ArgValType_e veType) const; -// Methods: -private: - void Destroy( void ); + // Attributes: + protected: + ArgValType_e m_eArgType; + + // Methods: + private: + void Destroy(void); }; |