108 template<
typename TEnum>
116 if(
record.valueListSeparator ==
'C' )
117 record.valueListSeparator=
',';
150 {
return record.valueListSeparator !=
'C' ?
record.valueListSeparator :
','; }
275 template<
typename TEnum>
300 return record.identifierChar.IsNotEmpty() ?
record.identifierChar.CharAtStart()
429 template<
typename TEnum>
470 void addParamDecls();
561 template<
typename TEnum>
ERCommandDecl record
A copy (!) of the enum record.
ListMA< ParameterDecl * > Parameters
Command parameters.
CommandLine & CmdLine
The command-line instance we belong to.
int MinimumRecognitionLength()
CommandDecl(TEnum element, CommandLine &cmdLine)
const Enum & Element() const
const String & Identifier()
ResourceInfo resourceInfo
The resource information of the enumeration type given with construction.
const String & HelpTextShort()
Enum declElement
The enumeration element given with construction.
const String & HelpTextLong()
const String & FormatString()
ResourceInfo resourceInfo
The resource information of the enumeration type given with construction.
ExitCodeDecl(TEnum element)
cli::Exceptions AssociatedCLIException()
Enum declElement
The enumeration element given with construction.
ERExitCodeDecl record
A copy (!) of the enum record.
OptionDecl(TEnum element)
int MinimumRecognitionLength()
const Enum & Element() const
EROptionDecl record
A copy (!) of the enum record.
const String & ValueSeparator()
Enum declElement
The enumeration element given with construction.
integer QtyExpectedArgsFollowing()
ResourceInfo resourceInfo
The resource information of the enumeration type given with construction.
const String & HelpUsageLine()
const String & ShortcutReplacementString()
const String & HelpText()
const String & Identifier()
character IdentifierChar()
const String & Identifier()
ParameterDecl(TEnum element)
const Enum & Element() const
nchar ValueListSeparator()
const String & GetHelpTextLong()
const String & GetHelpTextShort()
ERParameterDecl record
A copy (!) of the enum record.
int MinimumRecognitionLength()
ResourceInfo resourceInfo
The resource information of the enumeration type given with construction.
Enum declElement
The enumeration element given with construction.
int QtyExpectedArgsFollowing()
const String & ValueSeparator()
const RecordsTraits< TEnum >::Type & GetRecord(TEnum element)
containers::List< T, MonoAllocator, TRecycling > ListMA
Type alias in namespace alib.
LocalString< 64 > String64
Type alias name for #"TLocalString;TLocalString<character,64>".
lang::integer integer
Type alias in namespace alib.
strings::TString< character > String
Type alias in namespace alib.
characters::nchar nchar
Type alias in namespace alib.
resources::ResourceInfo ResourceInfo
Type alias in namespace alib.
characters::character character
Type alias in namespace alib.
NLocalString< 64 > NString64
Type alias name for #"TLocalString;TLocalString<nchar,64>".
boxing::Enum Enum
Type alias in namespace alib.
Parameter * GetParsedParameter(const String &name)
bool Read(CommandDecl &decl)
String GetParsedParameterArg(const String &name)
CommandDecl * Declaration
The underlying declaration.
Command(CommandLine *cmdLine)
ListMA< Parameter *, Recycling::Shared > ParametersMandatory
Mandatory parameters parsed.
ListMA< Parameter *, Recycling::Shared > ParametersOptional
Optional parameters parsed.
#"alib_enums_records;ALib Enum Record" type used by class #"CommandDecl".
void Parse()
Implementation of #"EnumRecordPrototype::Parse;*".
String parameters
List of parameters attached. Separated by '/'.
ERCommandDecl() noexcept=default
int associatedCLIException
The CLI module exception associated to this exit-code.
ERExitCodeDecl() noexcept
#"alib_enums_records;ALib Enum Record" type used by class #"OptionDecl".
integer RequiredArguments
EROptionDecl() noexcept=default
void Parse()
Implementation of #"EnumRecordPrototype::Parse;*".
String shortcutReplacementString
#"alib_enums_records;ALib Enum Record" type used by class #"ParameterDecl".
void Parse()
Implementation of #"EnumRecordPrototype::Parse;*".
ERParameterDecl() noexcept=default
String identifier
The identifier of the parameter.
bool isOptional
Denotes if this is an optional parameter.
OptionDecl * Declaration
The declaration struct.
bool Read(OptionDecl &decl, String &arg, const integer argNo)
ListMA< String, Recycling::Shared > Args
Arguments belonging to this option.
Option(CommandLine *cmdLine)
A declaration for a #"cli::Parameter".
Parameter(CommandLine *cmdLine)
ListMA< String, Recycling::Shared > Args
Arguments belonging to us.
ParameterDecl * Declaration
The underlying declaration.
bool Read(ParameterDecl &decl)
Parsed(CommandLine *cmdLine)
integer ConsumedArguments
CommandLine * CmdLine
The cli command-line.
ERSerializable() noexcept=default
Defaulted constructor leaving the record undefined.