A class which deals with the command-line interface to the process, both input and output. More...
#include <commandline.h>
Public Member Functions | |
CommandLine (Main::Output &output, const G::Arg &arg, const std::string &spec, const std::string &version, const std::string &capabilities) | |
Constructor. More... | |
~CommandLine () | |
Destructor. More... | |
Configuration | cfg () const |
Returns a Configuration object. More... | |
bool | contains (const std::string &switch_) const |
Returns true if the command line contained the give switch. More... | |
bool | contains (const char *switch_) const |
Returns true if the command line contained the give switch. More... | |
std::string | value (const std::string &switch_) const |
Returns the given switch's string value. More... | |
std::string | value (const char *switch_) const |
Returns the given switch's string value. More... | |
unsigned int | value (const std::string &switch_, unsigned int default_) const |
Returns the given switch's integer value. More... | |
unsigned int | value (const char *switch_, unsigned int default_) const |
Returns the given switch's integer value. More... | |
G::Strings | value (const std::string &switch_, const std::string &separators) const |
Returns the given switch's list-of-string value. More... | |
G::Strings | value (const char *switch_, const char *separators) const |
Returns the given switch's list-of-string value. More... | |
G::Arg::size_type | argc () const |
Returns the number of non-switch arguments on the command line. More... | |
bool | hasUsageErrors () const |
Returns true if the command line has usage errors (eg. invalid switch). More... | |
bool | hasSemanticError () const |
Returns true if the command line has logical errors (eg. conflicting switches). More... | |
void | showHelp (bool error_stream=false) const |
Writes help text. More... | |
void | showUsageErrors (bool error_stream=true) const |
Writes the usage errors. More... | |
void | showSemanticError (bool error_stream=true) const |
Writes the logic errors. More... | |
void | logSemanticWarnings () const |
Emits warnings about conflicting switches. More... | |
void | showArgcError (bool error_stream=true) const |
Writes a too-many-arguments error message. More... | |
void | showNoop (bool error_stream=false) const |
Writes a nothing-to-do message. More... | |
void | showError (const std::string &reason, bool error_stream=true) const |
Writes a failed message. More... | |
void | showVersion (bool error_stream=false) const |
Writes the version number. More... | |
void | showBanner (bool error_stream=false, const std::string &=std::string()) const |
Writes a startup banner. More... | |
void | showCopyright (bool error_stream=false, const std::string &=std::string()) const |
Writes a copyright message. More... | |
void | showCapabilities (bool error_stream=false, const std::string &=std::string()) const |
Writes a capability line. More... | |
Static Public Member Functions | |
static std::string | switchSpec (bool is_windows) |
Returns an o/s-specific G::GetOpt switch specification string. More... | |
A class which deals with the command-line interface to the process, both input and output.
The input side is mostly done by providing a Configuration object via the cfg() method.
Definition at line 44 of file commandline.h.
Main::CommandLine::CommandLine | ( | Main::Output & | output, |
const G::Arg & | arg, | ||
const std::string & | spec, | ||
const std::string & | version, | ||
const std::string & | capabilities | ||
) |
Constructor.
Definition at line 609 of file commandline_full.cpp.
Main::CommandLine::~CommandLine | ( | ) |
Destructor.
Definition at line 615 of file commandline_full.cpp.
G::Arg::size_type Main::CommandLine::argc | ( | ) | const |
Returns the number of non-switch arguments on the command line.
Definition at line 635 of file commandline_full.cpp.
Main::Configuration Main::CommandLine::cfg | ( | ) | const |
Returns a Configuration object.
Definition at line 620 of file commandline_full.cpp.
bool Main::CommandLine::contains | ( | const std::string & | switch_ | ) | const |
Returns true if the command line contained the give switch.
Definition at line 625 of file commandline_full.cpp.
bool Main::CommandLine::contains | ( | const char * | switch_ | ) | const |
Returns true if the command line contained the give switch.
Definition at line 720 of file commandline_full.cpp.
bool Main::CommandLine::hasSemanticError | ( | ) | const |
Returns true if the command line has logical errors (eg. conflicting switches).
Definition at line 645 of file commandline_full.cpp.
bool Main::CommandLine::hasUsageErrors | ( | ) | const |
Returns true if the command line has usage errors (eg. invalid switch).
Definition at line 640 of file commandline_full.cpp.
void Main::CommandLine::logSemanticWarnings | ( | ) | const |
Emits warnings about conflicting switches.
Definition at line 665 of file commandline_full.cpp.
void Main::CommandLine::showArgcError | ( | bool | error_stream = true | ) | const |
Writes a too-many-arguments error message.
Definition at line 670 of file commandline_full.cpp.
void Main::CommandLine::showBanner | ( | bool | error_stream = false , |
const std::string & | s = std::string() |
||
) | const |
Writes a startup banner.
Definition at line 690 of file commandline_full.cpp.
void Main::CommandLine::showCapabilities | ( | bool | error_stream = false , |
const std::string & | s = std::string() |
||
) | const |
Writes a capability line.
Definition at line 700 of file commandline_full.cpp.
void Main::CommandLine::showCopyright | ( | bool | error_stream = false , |
const std::string & | s = std::string() |
||
) | const |
Writes a copyright message.
Definition at line 695 of file commandline_full.cpp.
void Main::CommandLine::showError | ( | const std::string & | reason, |
bool | error_stream = true |
||
) | const |
Writes a failed message.
Definition at line 680 of file commandline_full.cpp.
void Main::CommandLine::showHelp | ( | bool | error_stream = false | ) | const |
Writes help text.
Definition at line 650 of file commandline_full.cpp.
void Main::CommandLine::showNoop | ( | bool | error_stream = false | ) | const |
Writes a nothing-to-do message.
Definition at line 675 of file commandline_full.cpp.
void Main::CommandLine::showSemanticError | ( | bool | error_stream = true | ) | const |
Writes the logic errors.
Definition at line 660 of file commandline_full.cpp.
void Main::CommandLine::showUsageErrors | ( | bool | error_stream = true | ) | const |
Writes the usage errors.
Definition at line 655 of file commandline_full.cpp.
void Main::CommandLine::showVersion | ( | bool | error_stream = false | ) | const |
Writes the version number.
Definition at line 685 of file commandline_full.cpp.
|
static |
Returns an o/s-specific G::GetOpt switch specification string.
Definition at line 604 of file commandline_full.cpp.
References Main::CommandLineImp::switchSpec().
Referenced by main().
std::string Main::CommandLine::value | ( | const std::string & | switch_ | ) | const |
Returns the given switch's string value.
Definition at line 630 of file commandline_full.cpp.
std::string Main::CommandLine::value | ( | const char * | switch_ | ) | const |
Returns the given switch's string value.
Definition at line 725 of file commandline_full.cpp.
unsigned int Main::CommandLine::value | ( | const std::string & | switch_, |
unsigned int | default_ | ||
) | const |
Returns the given switch's integer value.
Definition at line 705 of file commandline_full.cpp.
References G::Str::toUInt().
unsigned int Main::CommandLine::value | ( | const char * | switch_, |
unsigned int | default_ | ||
) | const |
Returns the given switch's integer value.
Definition at line 730 of file commandline_full.cpp.
G::Strings Main::CommandLine::value | ( | const std::string & | switch_, |
const std::string & | separators | ||
) | const |
Returns the given switch's list-of-string value.
Definition at line 710 of file commandline_full.cpp.
References G::Str::splitIntoFields().
G::Strings Main::CommandLine::value | ( | const char * | switch_, |
const char * | separators | ||
) | const |
Returns the given switch's list-of-string value.
Definition at line 735 of file commandline_full.cpp.