ALib C++ Framework
by
Library Version: 2605 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
alib::app::ParameterDecl Class Reference

Description:

A parameter of a CommandDecl.

Construction is done by passing a custom enum element of an enum type equipped with ALib Enum Records of type ERParameterDecl.

When bootstrapping, the method void DefineParameters()  has to be invoked for (each) enum type.

Definition at line 121 of file cliargtypes.hpp.

#include <cliargtypes.hpp>

Collaboration diagram for alib::app::ParameterDecl:
[legend]

Public Method Index:

template<typename TEnum>
 ParameterDecl (TEnum element)
const EnumElement () const
const StringGetHelpTextLong ()
const StringGetHelpTextShort ()
const StringIdentifier ()
bool IsOptional ()
int MinimumRecognitionLength ()
const StringName ()
int QtyExpectedArgsFollowing ()
nchar ValueListSeparator ()
const StringValueSeparator ()

Protected Field Index:

Enum declElement
 The enumeration element given with construction.
ERParameterDecl record
 A copy (!) of the enum record.
ResourceInfo resourceInfo
 The resource information of the enumeration type given with construction.

Field Details:

◆ declElement

Enum alib::app::ParameterDecl::declElement
protected

The enumeration element given with construction.

Definition at line 124 of file cliargtypes.hpp.

◆ record

ERParameterDecl alib::app::ParameterDecl::record
protected

A copy (!) of the enum record.

Definition at line 127 of file cliargtypes.hpp.

◆ resourceInfo

ResourceInfo alib::app::ParameterDecl::resourceInfo
protected

The resource information of the enumeration type given with construction.

Definition at line 130 of file cliargtypes.hpp.

Constructor(s) / Destructor Details:

◆ ParameterDecl()

template<typename TEnum>
alib::app::ParameterDecl::ParameterDecl ( TEnum element)
inline

Templated constructor which takes an enum element of a custom type equipped with ALib Enum Records of type ERParameterDecl.

Template Parameters
TEnumC++ enum type equipped with corresponding ALib Enum Records.
Parameters
elementThe enum element

Definition at line 139 of file cliargtypes.hpp.

Here is the call graph for this function:

Method Details:

◆ Element()

const Enum & alib::app::ParameterDecl::Element ( ) const
inline

Returns the type and integral value of the enumeration element used with construction.

Returns
The enumeration element used with construction.

Definition at line 152 of file cliargtypes.hpp.

◆ GetHelpTextLong()

const String & alib::app::ParameterDecl::GetHelpTextLong ( )
inline

Returns the long help text. Loads the string from resourceInfo using resource name "THelpParLngNN", where NN is the enum element's integral value.

Returns
The help text.

Definition at line 206 of file cliargtypes.hpp.

Here is the call graph for this function:

◆ GetHelpTextShort()

const String & alib::app::ParameterDecl::GetHelpTextShort ( )
inline

Returns the short help text. Loads the string from resourceInfo using resource name "THelpParShtNN", where NN is the enum element's integral value.

Returns
The help text.

Definition at line 199 of file cliargtypes.hpp.

Here is the call graph for this function:

◆ Identifier()

const String & alib::app::ParameterDecl::Identifier ( )
inline

Returns the identifier of the parameter. If this is empty, the parameter is not optional and hence has no identifier.

Returns
The name of the enum element.

Definition at line 166 of file cliargtypes.hpp.

◆ IsOptional()

bool alib::app::ParameterDecl::IsOptional ( )
inline

Returns true if the parameter is optional. The information about this attribute is used to create help messages and usage format strings only. It does not automatically raise an exception if a parameter is not given. Such exception or other error treatment is up to the user code.

Returns
true if the parameter is optional, false otherwise.

Definition at line 193 of file cliargtypes.hpp.

◆ MinimumRecognitionLength()

int alib::app::ParameterDecl::MinimumRecognitionLength ( )
inline

Returns the minimum parse length of the identifier.

Returns
The minimum characters to satisfy the parameter.

Definition at line 170 of file cliargtypes.hpp.

◆ Name()

const String & alib::app::ParameterDecl::Name ( )
inline

Returns the name of the parameter. This is not the identifier. The name is just for help and configuration output.

See also
Method Identifier.
Returns
The name of the enum element.

Definition at line 160 of file cliargtypes.hpp.

◆ QtyExpectedArgsFollowing()

int alib::app::ParameterDecl::QtyExpectedArgsFollowing ( )
inline

The number of CLI arguments to consume and store in ListMA< String, Recycling::Shared > Args with method bool Read(ParameterDecl&) .

Returns
The parameter identifier.

Definition at line 186 of file cliargtypes.hpp.

◆ ValueListSeparator()

nchar alib::app::ParameterDecl::ValueListSeparator ( )
inline

A separator character for parsing multiple values.

Returns
The separator character.

Definition at line 179 of file cliargtypes.hpp.

◆ ValueSeparator()

const String & alib::app::ParameterDecl::ValueSeparator ( )
inline

An optional separator string (usually "="), that separates the parameter name from a parameter value.

Returns
The separator string.

Definition at line 175 of file cliargtypes.hpp.


The documentation for this class was generated from the following file: