tclap
1.2.1
|
The base class that manages the command line definition and passes along the parsing to the appropriate Arg classes. More...
#include <CmdLine.h>
Public Member Functions | |
CmdLine (const std::string &message, const char delimiter=' ', const std::string &version="none", bool helpAndVersion=true) | |
Command line constructor. More... | |
virtual | ~CmdLine () |
Deletes any resources allocated by a CmdLine object. More... | |
void | add (Arg &a) |
Adds an argument to the list of arguments to be parsed. More... | |
void | add (Arg *a) |
An alternative add. More... | |
void | xorAdd (Arg &a, Arg &b) |
Add two Args that will be xor'd. More... | |
void | xorAdd (std::vector< Arg * > &xors) |
Add a list of Args that will be xor'd. More... | |
void | parse (int argc, const char *const *argv) |
Parses the command line. More... | |
void | parse (std::vector< std::string > &args) |
Parses the command line. More... | |
CmdLineOutput * | getOutput () |
Returns the CmdLineOutput object. More... | |
void | setOutput (CmdLineOutput *co) |
std::string & | getVersion () |
Returns the version string. More... | |
std::string & | getProgramName () |
Returns the program name string. More... | |
std::list< Arg * > & | getArgList () |
Returns the argList. More... | |
XorHandler & | getXorHandler () |
Returns the XorHandler. More... | |
char | getDelimiter () |
Returns the delimiter string. More... | |
std::string & | getMessage () |
Returns the message string. More... | |
bool | hasHelpAndVersion () |
Indicates whether or not the help and version switches were created automatically. More... | |
void | setExceptionHandling (const bool state) |
Disables or enables CmdLine's internal parsing exception handling. More... | |
bool | getExceptionHandling () const |
Returns the current state of the internal exception handling. More... | |
void | reset () |
Allows the CmdLine object to be reused. More... | |
![]() | |
virtual | ~CmdLineInterface () |
Destructor. More... | |
void | parse (std::vector< std::string > &args) |
Parses the command line. More... | |
Protected Member Functions | |
void | missingArgsException () |
Throws an exception listing the missing args. More... | |
bool | _emptyCombined (const std::string &s) |
Checks whether a name/flag string matches entirely matches the Arg::blankChar. More... | |
void | deleteOnExit (Arg *ptr) |
Perform a delete ptr; operation on ptr when this object is deleted. More... | |
void | deleteOnExit (Visitor *ptr) |
Perform a delete ptr; operation on ptr when this object is deleted. More... | |
Protected Attributes | |
std::list< Arg * > | _argList |
The list of arguments that will be tested against the command line. More... | |
std::string | _progName |
The name of the program. More... | |
std::string | _message |
A message used to describe the program. More... | |
std::string | _version |
The version to be displayed with the –version switch. More... | |
int | _numRequired |
The number of arguments that are required to be present on the command line. More... | |
char | _delimiter |
The character that is used to separate the argument flag/name from the value. More... | |
XorHandler | _xorHandler |
The handler that manages xoring lists of args. More... | |
std::list< Arg * > | _argDeleteOnExitList |
A list of Args to be explicitly deleted when the destructor is called. More... | |
std::list< Visitor * > | _visitorDeleteOnExitList |
A list of Visitors to be explicitly deleted when the destructor is called. More... | |
CmdLineOutput * | _output |
Object that handles all output for the CmdLine. More... | |
bool | _handleExceptions |
Should CmdLine handle parsing exceptions internally? More... | |
The base class that manages the command line definition and passes along the parsing to the appropriate Arg classes.
|
inline |
Command line constructor.
Defines how the arguments will be parsed.
message | - The message to be used in the usage output. |
delimiter | - The character that is used to separate the argument flag/name from the value. Defaults to ' ' (space). |
version | - The version number to be used in the –version switch. |
helpAndVersion | - Whether or not to create the Help and Version switches. Defaults to true. |
|
inlinevirtual |
|
inlineprotected |
Checks whether a name/flag string matches entirely matches the Arg::blankChar.
Used when multiple switches are combined into a single argument.
s | - The message to be used in the usage. |
|
inlinevirtual |
Adds an argument to the list of arguments to be parsed.
a | - Argument to be added. |
Implements TCLAP::CmdLineInterface.
Definition at line 432 of file CmdLine.h.
Referenced by xorAdd(), and ~CmdLine().
|
inlinevirtual |
An alternative add.
Functionally identical.
a | - Argument to be added. |
Implements TCLAP::CmdLineInterface.
|
inlineprotected |
Perform a delete ptr; operation on ptr when this object is deleted.
Definition at line 569 of file CmdLine.h.
Referenced by ~CmdLine().
|
inlineprotected |
|
inlinevirtual |
|
inlinevirtual |
Returns the delimiter string.
Implements TCLAP::CmdLineInterface.
Definition at line 612 of file CmdLine.h.
References _handleExceptions.
|
inline |
|
inlinevirtual |
Returns the message string.
Implements TCLAP::CmdLineInterface.
Definition at line 617 of file CmdLine.h.
References _argList.
|
inlinevirtual |
Returns the CmdLineOutput object.
Implements TCLAP::CmdLineInterface.
Definition at line 579 of file CmdLine.h.
References _progName.
|
inlinevirtual |
Returns the program name string.
Implements TCLAP::CmdLineInterface.
Definition at line 597 of file CmdLine.h.
References _message.
|
inlinevirtual |
Returns the version string.
Implements TCLAP::CmdLineInterface.
Definition at line 592 of file CmdLine.h.
References _delimiter.
|
inlinevirtual |
Returns the XorHandler.
Implements TCLAP::CmdLineInterface.
Definition at line 607 of file CmdLine.h.
References _handleExceptions.
|
inlinevirtual |
Indicates whether or not the help and version switches were created automatically.
Implements TCLAP::CmdLineInterface.
|
inlineprotected |
|
inlinevirtual |
Parses the command line.
argc | - Number of arguments. |
argv | - Array of arguments. |
Implements TCLAP::CmdLineInterface.
Definition at line 452 of file CmdLine.h.
References _argList, _xorHandler, and TCLAP::XorHandler::check().
|
inline |
|
inlinevirtual |
Allows the CmdLine object to be reused.
Implements TCLAP::CmdLineInterface.
|
inline |
|
inlinevirtual |
co | - CmdLineOutput object that we want to use instead. |
Implements TCLAP::CmdLineInterface.
Definition at line 584 of file CmdLine.h.
References _argList.
Add two Args that will be xor'd.
If this method is used, add does not need to be called.
a | - Argument to be added and xor'd. |
b | - Argument to be added and xor'd. |
Implements TCLAP::CmdLineInterface.
|
inlinevirtual |
Add a list of Args that will be xor'd.
If this method is used, add does not need to be called.
xors | - List of Args to be added and xor'd. |
Implements TCLAP::CmdLineInterface.
Definition at line 412 of file CmdLine.h.
References add().
|
protected |
|
protected |
The list of arguments that will be tested against the command line.
Definition at line 97 of file CmdLine.h.
Referenced by getMessage(), parse(), and setOutput().
|
protected |
The character that is used to separate the argument flag/name from the value.
Defaults to ' ' (space).
Definition at line 125 of file CmdLine.h.
Referenced by getVersion().
|
protected |
Should CmdLine handle parsing exceptions internally?
Definition at line 154 of file CmdLine.h.
Referenced by getDelimiter(), and getXorHandler().
|
protected |
A message used to describe the program.
Used in the usage output.
Definition at line 107 of file CmdLine.h.
Referenced by getProgramName().
|
protected |
|
protected |
Object that handles all output for the CmdLine.
Definition at line 149 of file CmdLine.h.
Referenced by ~CmdLine().
|
protected |
The name of the program.
Set to argv[0].
Definition at line 102 of file CmdLine.h.
Referenced by getOutput().
|
protected |
The version to be displayed with the –version switch.
Definition at line 112 of file CmdLine.h.
Referenced by deleteOnExit().
|
protected |
|
protected |