![]() |
Qt 6.x
The Qt SDK
|
The QCommandLineOption class defines a possible command-line option. \inmodule QtCore. More...
#include <qcommandlineoption.h>
Public Types | |
enum | Flag { HiddenFromHelp = 0x1 , ShortOptionStyle = 0x2 } |
\value HiddenFromHelp Hide this option in the user-visible help output. More... | |
Public Member Functions | |
QCommandLineOption (const QString &name) | |
Constructs a command line option object with the name name. | |
QCommandLineOption (const QStringList &names) | |
Constructs a command line option object with the names names. | |
QCommandLineOption (const QString &name, const QString &description, const QString &valueName=QString(), const QString &defaultValue=QString()) | |
Constructs a command line option object with the given arguments. | |
QCommandLineOption (const QStringList &names, const QString &description, const QString &valueName=QString(), const QString &defaultValue=QString()) | |
Constructs a command line option object with the given arguments. | |
QCommandLineOption (const QCommandLineOption &other) | |
Constructs a QCommandLineOption object that is a copy of the QCommandLineOption object other. | |
~QCommandLineOption () | |
Destroys the command line option object. | |
QCommandLineOption & | operator= (const QCommandLineOption &other) |
Move-assigns other to this QCommandLineOption instance. | |
void | swap (QCommandLineOption &other) noexcept |
Swaps option other with this option. | |
QStringList | names () const |
Returns the names set for this option. | |
void | setValueName (const QString &name) |
Sets the name of the expected value, for the documentation, to valueName. | |
QString | valueName () const |
Returns the name of the expected value. | |
void | setDescription (const QString &description) |
Sets the description used for this option to description. | |
QString | description () const |
Returns the description set for this option. | |
void | setDefaultValue (const QString &defaultValue) |
Sets the default value used for this option to defaultValue. | |
void | setDefaultValues (const QStringList &defaultValues) |
Sets the list of default values used for this option to defaultValues. | |
QStringList | defaultValues () const |
Returns the default values set for this option. | |
Flags | flags () const |
Returns a set of flags that affect this command-line option. | |
void | setFlags (Flags aflags) |
Set the set of flags that affect this command-line option to flags. | |
The QCommandLineOption class defines a possible command-line option. \inmodule QtCore.
This class is used to describe an option on the command line. It allows different ways of defining the same option with multiple aliases possible. It is also used to describe how the option is used - it may be a flag (e.g. {-v}) or take a value (e.g.
{-o file}).
Examples:
Definition at line 17 of file qcommandlineoption.h.
\value HiddenFromHelp Hide this option in the user-visible help output.
All options are visible by default. Setting this flag for a particular option makes it internal, i.e. not listed in the help output.
\value ShortOptionStyle The option will always be understood as a short option, regardless of what was set by QCommandLineParser::setSingleDashWordOptionMode. This allows flags such as {-DDEFINE=VALUE} or
{-I/include/path} to be interpreted as short flags even when the parser is in QCommandLineParser::ParseAsLongOptions mode.
Enumerator | |
---|---|
HiddenFromHelp | |
ShortOptionStyle |
Definition at line 20 of file qcommandlineoption.h.
|
explicit |
Constructs a command line option object with the name name.
The name can be either short or long. If the name is one character in length, it is considered a short name. Option names must not be empty, must not start with a dash or a slash character, must not contain a {=} and cannot be repeated.
Definition at line 80 of file qcommandlineoption.cpp.
|
explicit |
Constructs a command line option object with the names names.
This overload allows to set multiple names for the option, for instance {o} and
{output}.
The names can be either short or long. Any name in the list that is one character in length is a short name. Option names must not be empty, must not start with a dash or a slash character, must not contain a {=} and cannot be repeated.
Definition at line 98 of file qcommandlineoption.cpp.
QCommandLineOption::QCommandLineOption | ( | const QString & | name, |
const QString & | description, | ||
const QString & | valueName = QString() , |
||
const QString & | defaultValue = QString() |
||
) |
Constructs a command line option object with the given arguments.
The name of the option is set to name. The name can be either short or long. If the name is one character in length, it is considered a short name. Option names must not be empty, must not start with a dash or a slash character, must not contain a {=} and cannot be repeated.
The description is set to description. It is customary to add a "." at the end of the description.
In addition, the valueName needs to be set if the option expects a value. The default value for the option is set to defaultValue.
In Qt versions before 5.4, this constructor was explicit
. In Qt 5.4 and later, it no longer is and can be used for C++11-style uniform initialization:
Definition at line 126 of file qcommandlineoption.cpp.
References description(), setDefaultValue(), setDescription(), setValueName(), and valueName().
QCommandLineOption::QCommandLineOption | ( | const QStringList & | names, |
const QString & | description, | ||
const QString & | valueName = QString() , |
||
const QString & | defaultValue = QString() |
||
) |
Constructs a command line option object with the given arguments.
This overload allows to set multiple names for the option, for instance {o} and
{output}.
The names of the option are set to names. The names can be either short or long. Any name in the list that is one character in length is a short name. Option names must not be empty, must not start with a dash or a slash character, must not contain a {=} and cannot be repeated.
The description is set to description. It is customary to add a "." at the end of the description.
In addition, the valueName needs to be set if the option expects a value. The default value for the option is set to defaultValue.
In Qt versions before 5.4, this constructor was explicit
. In Qt 5.4 and later, it no longer is and can be used for C++11-style uniform initialization:
Definition at line 162 of file qcommandlineoption.cpp.
References description(), setDefaultValue(), setDescription(), setValueName(), and valueName().
QCommandLineOption::QCommandLineOption | ( | const QCommandLineOption & | other | ) |
Constructs a QCommandLineOption object that is a copy of the QCommandLineOption object other.
Definition at line 178 of file qcommandlineoption.cpp.
QCommandLineOption::~QCommandLineOption | ( | ) |
Destroys the command line option object.
Definition at line 186 of file qcommandlineoption.cpp.
QStringList QCommandLineOption::defaultValues | ( | ) | const |
Returns the default values set for this option.
Definition at line 353 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::defaultValues.
Referenced by setDefaultValues(), and QCommandLineParser::values().
QString QCommandLineOption::description | ( | ) | const |
Returns the description set for this option.
Definition at line 309 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::description.
Referenced by QCommandLineOption(), QCommandLineOption(), and setDescription().
QCommandLineOption::Flags QCommandLineOption::flags | ( | ) | const |
Returns a set of flags that affect this command-line option.
Definition at line 364 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::flags.
Referenced by setFlags().
QStringList QCommandLineOption::names | ( | ) | const |
Returns the names set for this option.
Definition at line 210 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::names.
Referenced by QCommandLineParserPrivate::aliases(), parseArguments(), and parseExclusiveOptions().
QCommandLineOption & QCommandLineOption::operator= | ( | const QCommandLineOption & | other | ) |
Move-assigns other to this QCommandLineOption instance.
Makes a copy of the other object and assigns it to this QCommandLineOption object.
Definition at line 194 of file qcommandlineoption.cpp.
References other().
Sets the default value used for this option to defaultValue.
The default value is used if the user of the application does not specify the option on the command line.
If defaultValue is empty, the option has no default values.
Definition at line 324 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::defaultValues, and QString::isEmpty().
Referenced by QCommandLineOption(), QCommandLineOption(), and main().
void QCommandLineOption::setDefaultValues | ( | const QStringList & | defaultValues | ) |
Sets the list of default values used for this option to defaultValues.
The default values are used if the user of the application does not specify the option on the command line.
Definition at line 343 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::defaultValues, and defaultValues().
Sets the description used for this option to description.
It is customary to add a "." at the end of the description.
The description is used by QCommandLineParser::showHelp().
Definition at line 299 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::description, and description().
Referenced by QCommandLineOption(), QCommandLineOption(), runMoc(), runRcc(), and runUic().
Set the set of flags that affect this command-line option to flags.
Definition at line 375 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::flags, and flags().
Referenced by main(), parseArguments(), and runMoc().
Sets the name of the expected value, for the documentation, to valueName.
Options without a value assigned have a boolean-like behavior: either the user specifies –option or they don't.
Options with a value assigned need to set a name for the expected value, for the documentation of the option in the help output. An option with names {o} and
{output}, and a value name of
{file} will appear as
{-o, –output <file>}.
Call QCommandLineParser::value() if you expect the option to be present only once, and QCommandLineParser::values() if you expect that option to be present multiple times.
Definition at line 273 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::valueName, and valueName().
Referenced by QCommandLineOption(), QCommandLineOption(), runMoc(), runRcc(), and runUic().
|
inlinenoexcept |
Swaps option other with this option.
This operation is very fast and never fails.
Definition at line 41 of file qcommandlineoption.h.
QString QCommandLineOption::valueName | ( | ) | const |
Returns the name of the expected value.
If empty, the option doesn't take a value.
Definition at line 285 of file qcommandlineoption.cpp.
References QCommandLineOptionPrivate::valueName.
Referenced by QCommandLineOption(), QCommandLineOption(), QCommandLineParserPrivate::parse(), QCommandLineParserPrivate::parseOptionValue(), and setValueName().