A declaration for a cli::Command.
Construction is done by passing a custom enum element of an enum type equipped with ALib Enum Records of type ERCommandDecl.
When bootstrapping ALib CLI, method CommandLine::DefineCommands has to be invoked for (each) enum type.
Definition at line 461 of file arguments.hpp.
#include <arguments.hpp>
Public Field Index: | |
CommandLine & | CmdLine |
The command line instance we belong to. | |
List< MonoAllocator, ParameterDecl * > | Parameters |
Command parameters. | |
Public Method Index: | |
template<typename TEnum > | |
CommandDecl (TEnum element, CommandLine &cmdLine) | |
const Enum & | Element () const |
ALIB_API ParameterDecl * | GetParameterDecl (const String &name) |
const String & | HelpTextLong () |
const String & | HelpTextShort () |
const String & | Identifier () |
int | MinimumRecognitionLength () |
Protected Field Index: | |
Enum | declElement |
The enumeration element given with construction. | |
ERCommandDecl | record |
A copy (!) of the enum record. | |
ResourceInfo | resourceInfo |
The resource information of the enumeration type given with construction. | |
Protected Method Index: | |
ALIB_API void | addParamDecls () |
CommandLine& CmdLine |
The command line instance we belong to.
Definition at line 475 of file arguments.hpp.
|
protected |
The enumeration element given with construction.
Definition at line 465 of file arguments.hpp.
List<MonoAllocator, ParameterDecl*> Parameters |
Command parameters.
Definition at line 478 of file arguments.hpp.
|
protected |
A copy (!) of the enum record.
Definition at line 468 of file arguments.hpp.
|
protected |
The resource information of the enumeration type given with construction.
Definition at line 471 of file arguments.hpp.
|
inline |
Templated constructor which takes an enum element of a custom type equipped with ALib Enum Records of type ERCommandDecl.
Field Parameters is filled as specified in the enum record.
TEnum | C++ enum type equipped with corresponding ALib Enum Records. |
element | The enum element |
cmdLine | The command line object. Will be stored. |
Definition at line 559 of file commandline.hpp.
|
protected |
Called from the constructor. Parses field ERCommandDecl::parameters of the enum record, and loads the corresponding parameters.
Definition at line 28 of file arguments.cpp.
|
inline |
Returns the type and integral value of the enumeration element used with construction.
Definition at line 494 of file arguments.hpp.
ParameterDecl * GetParameterDecl | ( | const String & | name | ) |
Searches in Parameters for the declaration of parameter name.
name | The declaration name of the parameter. |
nullptr
if parameter was not declared. Definition at line 49 of file arguments.cpp.
|
inline |
Returns the long version of the help text. Loads the string from resourceInfo using resource name "THlpCmdLngNN"
, where NN
is the enum element's integral value.
Definition at line 526 of file arguments.hpp.
|
inline |
Returns the short version of the help text. Loads the string from resourceInfo using resource name "THlpCmdShtNN"
, where NN
is the enum element's integral value.
Definition at line 517 of file arguments.hpp.
|
inline |
Returns the identifier (name) of the command
Definition at line 501 of file arguments.hpp.
|
inline |
Returns the minimum parse length of the identifier.
Definition at line 508 of file arguments.hpp.