args-parser 6.3.3
Loading...
Searching...
No Matches
Args::details::API< PARENT, SELF, ARGPTR, false > Class Template Reference

Auxiliary API. More...

#include <api.hpp>

Public Member Functions

 API (PARENT &parent, SELF &self)
 
virtual ~API ()
 
template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, OnlyOneGroup, ARGPTR, falseaddOnlyOneGroup (NAME &&name, bool required=false)
 Add OnlyOneGroup.
 
template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, AllOfGroup, ARGPTR, falseaddAllOfGroup (NAME &&name, bool required=false)
 Add AllOfGroup.
 
template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, AtLeastOneGroup, ARGPTR, falseaddAtLeastOneGroup (NAME &&name, bool required=false)
 Add AtLeastOneGroup.
 
template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & addArgWithFlagAndName (Char flag, NAME &&name, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const String &defaultValue=String(), const String &valueSpecifier=String())
 Add argument.
 
API< PARENT, SELF, ARGPTR, false > & addArgWithFlagOnly (Char flag, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const String &defaultValue=String(), const String &valueSpecifier=String())
 Add argument with flag only.
 
template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & addArgWithNameOnly (NAME &&name, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const String &defaultValue=String(), const String &valueSpecifier=String())
 Add argument with name only.
 
template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & addMultiArg (Char flag, NAME &&name, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const String &defaultValue=String(), const String &valueSpecifier=String())
 Add multi argument.
 
API< PARENT, SELF, ARGPTR, false > & addMultiArgWithFlagOnly (Char flag, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const String &defaultValue=String(), const String &valueSpecifier=String())
 Add multi argument with flag only.
 
template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & addMultiArgWithNameOnly (NAME &&name, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const String &defaultValue=String(), const String &valueSpecifier=String())
 Add multi argument with name only.
 
template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & addMultiArgWithDefaulValues (Char flag, NAME &&name, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const StringList &defaultValues=StringList(), const String &valueSpecifier=String())
 Add multi argument.
 
API< PARENT, SELF, ARGPTR, false > & addMultiArgWithFlagOnlyAndDefaultValues (Char flag, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const StringList &defaultValues=StringList(), const String &valueSpecifier=String())
 Add multi argument with flag only.
 
template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & addMultiArgWithNameOnlyAndDefaultValues (NAME &&name, bool isWithValue=false, bool isRequired=false, const String &desc=String(), const String &longDesc=String(), const StringList &defaultValues=StringList(), const String &valueSpecifier=String())
 Add multi argument with name only.
 
API< PARENT, SELF, ARGPTR, falseaddArg (ArgIface &arg)
 Add argument.
 
API< PARENT, SELF, ARGPTR, falseaddArg (ArgIface *arg)
 Add argument.
 
API< PARENT, SELF, ARGPTR, falseaddArg (GroupIface::ArgPtr arg)
 Add argument.
 
template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, Command, ARGPTR, falseaddCommand (NAME &&name, ValueOptions opt=ValueOptions::NoValue, bool isSubCommandRequired=false, const String &desc=String(), const String &longDesc=String(), const String &defaultValue=String(), const String &valueSpecifier=String())
 Add Command.
 
template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, Command, ARGPTR, falseaddCommandWithDefaultValues (NAME &&name, ValueOptions opt=ValueOptions::NoValue, bool isSubCommandRequired=false, const String &desc=String(), const String &longDesc=String(), const StringList &defaultValues=StringList(), const String &valueSpecifier=String())
 Add Command.
 
PARENTend () const
 End this group.
 

Detailed Description

template<typename PARENT, typename SELF, typename ARGPTR>
class Args::details::API< PARENT, SELF, ARGPTR, false >

Auxiliary API.

Definition at line 660 of file api.hpp.

Constructor & Destructor Documentation

◆ API()

Args::details::API< PARENT, SELF, ARGPTR, false >::API ( PARENT parent,
SELF self 
)
inline

Definition at line 663 of file api.hpp.

◆ ~API()

Definition at line 669 of file api.hpp.

Member Function Documentation

◆ addAllOfGroup()

template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, AllOfGroup, ARGPTR, false > Args::details::API< PARENT, SELF, ARGPTR, false >::addAllOfGroup ( NAME &&  name,
bool  required = false 
)
inline

Add AllOfGroup.

Parameters
nameName of the group.
requiredIs group required?

Definition at line 697 of file api.hpp.

◆ addArg() [1/3]

Add argument.

Note
Developer should handle lifetime of the argument.

Definition at line 1128 of file api.hpp.

◆ addArg() [2/3]

Add argument.

Note
Developer should handle lifetime of the argument.

Definition at line 1137 of file api.hpp.

◆ addArg() [3/3]

Add argument.

Definition at line 1146 of file api.hpp.

◆ addArgWithFlagAndName()

template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addArgWithFlagAndName ( Char  flag,
NAME &&  name,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const String defaultValue = String(),
const String valueSpecifier = String() 
)
inline

Add argument.

Parameters
flagFlag for this argument.
nameName for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValueDefault value.
valueSpecifierValue specifier.

Definition at line 741 of file api.hpp.

◆ addArgWithFlagOnly()

API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addArgWithFlagOnly ( Char  flag,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const String defaultValue = String(),
const String valueSpecifier = String() 
)
inline

Add argument with flag only.

Parameters
flagFlag for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValueDefault value.
valueSpecifierValue specifier.

Definition at line 785 of file api.hpp.

◆ addArgWithNameOnly()

template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addArgWithNameOnly ( NAME &&  name,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const String defaultValue = String(),
const String valueSpecifier = String() 
)
inline

Add argument with name only.

Parameters
nameName for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValueDefault value.
valueSpecifierValue specifier.

Definition at line 827 of file api.hpp.

◆ addAtLeastOneGroup()

template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, AtLeastOneGroup, ARGPTR, false > Args::details::API< PARENT, SELF, ARGPTR, false >::addAtLeastOneGroup ( NAME &&  name,
bool  required = false 
)
inline

Add AtLeastOneGroup.

Parameters
nameName of the group.
requiredIs group required?

Definition at line 719 of file api.hpp.

◆ addCommand()

template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, Command, ARGPTR, false > Args::details::API< PARENT, SELF, ARGPTR, false >::addCommand ( NAME &&  name,
ValueOptions  opt = ValueOptions::NoValue,
bool  isSubCommandRequired = false,
const String desc = String(),
const String longDesc = String(),
const String defaultValue = String(),
const String valueSpecifier = String() 
)
inline

Add Command.

Parameters
nameName of the group.
optValue type.
isSubCommandRequiredIs sub-command required?
descDescription of the argument.
longDescLong description.
defaultValueDefault value.
valueSpecifierValue specifier.

Definition at line 1155 of file api.hpp.

◆ addCommandWithDefaultValues()

template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, Command, ARGPTR, false > Args::details::API< PARENT, SELF, ARGPTR, false >::addCommandWithDefaultValues ( NAME &&  name,
ValueOptions  opt = ValueOptions::NoValue,
bool  isSubCommandRequired = false,
const String desc = String(),
const String longDesc = String(),
const StringList defaultValues = StringList(),
const String valueSpecifier = String() 
)
inline

Add Command.

Parameters
nameName of the group.
optValue type.
isSubCommandRequiredIs sub-command required?
descDescription of the argument.
longDescLong description.
defaultValuesDefault value.
valueSpecifierValue specifier.

Definition at line 1198 of file api.hpp.

◆ addMultiArg()

template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addMultiArg ( Char  flag,
NAME &&  name,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const String defaultValue = String(),
const String valueSpecifier = String() 
)
inline

Add multi argument.

Parameters
flagFlag for this argument.
nameName for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValueDefault value.
valueSpecifierValue specifier.

Definition at line 870 of file api.hpp.

◆ addMultiArgWithDefaulValues()

template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addMultiArgWithDefaulValues ( Char  flag,
NAME &&  name,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const StringList defaultValues = StringList(),
const String valueSpecifier = String() 
)
inline

Add multi argument.

Parameters
flagFlag for this argument.
nameName for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValuesDefault value.
valueSpecifierValue specifier.

Definition at line 999 of file api.hpp.

◆ addMultiArgWithFlagOnly()

API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addMultiArgWithFlagOnly ( Char  flag,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const String defaultValue = String(),
const String valueSpecifier = String() 
)
inline

Add multi argument with flag only.

Parameters
flagFlag for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValueDefault value.
valueSpecifierValue specifier.

Definition at line 914 of file api.hpp.

◆ addMultiArgWithFlagOnlyAndDefaultValues()

API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addMultiArgWithFlagOnlyAndDefaultValues ( Char  flag,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const StringList defaultValues = StringList(),
const String valueSpecifier = String() 
)
inline

Add multi argument with flag only.

Parameters
flagFlag for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValuesDefault value.
valueSpecifierValue specifier.

Definition at line 1043 of file api.hpp.

◆ addMultiArgWithNameOnly()

template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addMultiArgWithNameOnly ( NAME &&  name,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const String defaultValue = String(),
const String valueSpecifier = String() 
)
inline

Add multi argument with name only.

Parameters
nameName for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValueDefault value.
valueSpecifierValue specifier.

Definition at line 956 of file api.hpp.

◆ addMultiArgWithNameOnlyAndDefaultValues()

template<typename NAME >
API< PARENT, SELF, ARGPTR, false > & Args::details::API< PARENT, SELF, ARGPTR, false >::addMultiArgWithNameOnlyAndDefaultValues ( NAME &&  name,
bool  isWithValue = false,
bool  isRequired = false,
const String desc = String(),
const String longDesc = String(),
const StringList defaultValues = StringList(),
const String valueSpecifier = String() 
)
inline

Add multi argument with name only.

Parameters
nameName for this argument.
isWithValueIs this argument with value?
isRequiredIs this argument required?
descDescription of the argument.
longDescLong description.
defaultValuesDefault value.
valueSpecifierValue specifier.

Definition at line 1085 of file api.hpp.

◆ addOnlyOneGroup()

template<typename NAME >
API< API< PARENT, SELF, ARGPTR, false >, OnlyOneGroup, ARGPTR, false > Args::details::API< PARENT, SELF, ARGPTR, false >::addOnlyOneGroup ( NAME &&  name,
bool  required = false 
)
inline

Add OnlyOneGroup.

Parameters
nameName of the group.
requiredIs group required?

Definition at line 675 of file api.hpp.

◆ end()

PARENT & Args::details::API< PARENT, SELF, ARGPTR, false >::end ( ) const
inline

End this group.

Returns
Parent object.

Definition at line 1240 of file api.hpp.


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