List of command-line option descriptions. More...
#include <fcommandline.h>
Public Member Functions | |
Descriptions & | addOptions (const std::string &caption="") |
Sets the command-line tool caption and starts adding Descriptions. | |
bool | parse (int ac, char *av[], VariablesMap &result, FilesVector *files=0) const |
Parse the command-line. | |
void | print (std::ostream &os) const |
Print a brief description for the command-line tool into the stream os . | |
Descriptions & | operator() (const std::string &name, const std::string &help) |
Add a new switch. Only. | |
template<typename Type > | |
Descriptions & | operator() (const std::string &name, const Type &inType, std::string help) |
Add a new option of type inType . Currently only std::string is supported. | |
template<> | |
Descriptions & | operator() (const std::string &name, const std::string &inType, std::string help) |
Add a new option with a string as parameter. |
List of command-line option descriptions.
Use addOptions(const std::string&) to add Descriptions.
Descriptions & addOptions | ( | const std::string & | caption = "" |
) |
Sets the command-line tool caption and starts adding Descriptions.
Usage example:
CommandLine::Descriptions desc; desc.addOptions ("myTool") // Set caption to "myTool" ("help", "produce help message") // add switch -help ("opt1", string(), "option 1") // add string option -opt1 ("opt2", string(), "option 2") // add string option -opt2 ;
[in] | caption | the caption of the command-line tool. |
bool parse | ( | int | ac, | |
char * | av[], | |||
VariablesMap & | result, | |||
FilesVector * | files = 0 | |||
) | const |
Parse the command-line.
[in] | ac | count of command-line parameters |
[in] | av | command-line as array of strings |
[out] | result | the parsing result |
[out] | files | optional list of elements on the command line that are not handled by options parsing |
void print | ( | std::ostream & | os | ) | const |
Print a brief description for the command-line tool into the stream os
.
The description includes the help strings for all options.
Descriptions & operator() | ( | const std::string & | name, | |
const std::string & | help | |||
) |
Add a new switch. Only.
Returning a reverence to *this, enables chaining of calls to operator()(const std::string&, const std::string&).
[in] | name | of the added option. |
[in] | help | a help description for this option. |
[out] | result | a reverence to *this. |
Descriptions& operator() | ( | const std::string & | name, | |
const Type & | inType, | |||
std::string | help | |||
) | [inline] |
Add a new option of type inType
. Currently only std::string is supported.
Descriptions& operator() | ( | const std::string & | name, | |
const std::string & | inType, | |||
std::string | help | |||
) | [inline] |
Add a new option with a string as parameter.