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 453 of file arguments.inl.
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_DLL 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_DLL void | addParamDecls () |
CommandLine& alib::cli::CommandDecl::CmdLine |
The command line instance we belong to.
Definition at line 467 of file arguments.inl.
|
protected |
The enumeration element given with construction.
Definition at line 457 of file arguments.inl.
List<MonoAllocator, ParameterDecl*> alib::cli::CommandDecl::Parameters |
Command parameters.
Definition at line 470 of file arguments.inl.
|
protected |
A copy (!) of the enum record.
Definition at line 460 of file arguments.inl.
|
protected |
The resource information of the enumeration type given with construction.
Definition at line 463 of file arguments.inl.
|
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 522 of file commandline.inl.
|
protected |
Called from the constructor. Parses field ERCommandDecl::parameters of the enum record, and loads the corresponding parameters.
Definition at line 38 of file arguments.cpp.
|
inline |
Returns the type and integral value of the enumeration element used with construction.
Definition at line 486 of file arguments.inl.
ParameterDecl * alib::cli::CommandDecl::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 59 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 518 of file arguments.inl.
|
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 509 of file arguments.inl.
|
inline |
Returns the identifier (name) of the command
Definition at line 493 of file arguments.inl.
|
inline |
Returns the minimum parse length of the identifier.
Definition at line 500 of file arguments.inl.