Ookii.CommandLine for C++  2.0.0
Public Member Functions | List of all members
ookii::basic_parser_builder< CharType, Traits, Alloc >::multi_value_argument_builder< T > Class Template Reference

Specified options for a multi-value argument. More...

#include <ookii/command_line_builder.h>

Inheritance diagram for ookii::basic_parser_builder< CharType, Traits, Alloc >::multi_value_argument_builder< T >:
Inheritance graph
[legend]
Collaboration diagram for ookii::basic_parser_builder< CharType, Traits, Alloc >::multi_value_argument_builder< T >:
Collaboration graph
[legend]

Public Member Functions

multi_value_argument_builderseparator (CharType separator)
 Specifies a separator that separates multiple values in a single argument value. More...
 
- Public Member Functions inherited from ookii::basic_parser_builder< CharType, Traits, Alloc >::typed_argument_builder< multi_value_argument_type< T >, multi_value_argument_builder< T > >
 typed_argument_builder (basic_parser_builder &basic_parser_builder, CharType short_name, value_type &value)
 Initializes a new instance of the argument_builder class. More...
 
 typed_argument_builder (basic_parser_builder &basic_parser_builder, string_type name, value_type &value)
 Initializes a new instance of the argument_builder class. More...
 
multi_value_argument_builder< T > & converter (converter_type converter)
 Supplies a custom function to convert strings to the argument's type. More...
 
multi_value_argument_builder< T > & default_value (element_type default_value)
 Sets a default value for the argument, which will be used if the argument is not supplied.. More...
 
- Public Member Functions inherited from ookii::basic_parser_builder< CharType, Traits, Alloc >::argument_builder_common< BuilderType >
BuilderType & alias (string_type alias)
 Adds an alias to the argument. More...
 
 argument_builder_base (argument_builder_base &)=delete
 Deleted copy constructor.
 
 argument_builder_base (basic_parser_builder &basic_parser_builder, CharType short_name)
 Initializes a new instance of the argument_builder_base class. More...
 
 argument_builder_base (basic_parser_builder &basic_parser_builder, string_type name)
 Initializes a new instance of the argument_builder_base class. More...
 
BuilderType & cancel_parsing ()
 Indicates that supplying this argument will cancel parsing. More...
 
BuilderType & description (string_type description)
 Sets the long description for the argument. More...
 
const string_typename () const noexcept
 Returns the name of the argument. More...
 
BuilderType & name (string_type name)
 Changes the name of the argument. More...
 
BuilderType & positional ()
 Indicates that the argument can be specified by position. More...
 
BuilderType & required ()
 Indicates that the argument is required. More...
 
BuilderType & short_alias (CharType alias)
 Adds a short alias to the argument. More...
 
BuilderType & short_name ()
 Sets a short name for the argument that matches the first character of the long name. More...
 
const CharType & short_name () const noexcept
 Returns the short name of the argument. More...
 
BuilderType & short_name (CharType short_name)
 Sets an explicit short name for an argument. More...
 
BuilderType & value_description (string_type value_description)
 Sets the value description for the argument. More...
 
- Public Member Functions inherited from ookii::basic_parser_builder< CharType, Traits, Alloc >::argument_builder_base
 argument_builder_base (argument_builder_base &)=delete
 Deleted copy constructor.
 
virtual ~argument_builder_base ()=default
 Default destructor.
 
template<typename Action >
action_argument_builder< details::first_argument_type< Action > > & add_action_argument (Action action, CharType short_name)
 Adds a new action argument. More...
 
template<typename Action >
action_argument_builder< details::first_argument_type< Action > > & add_action_argument (Action action, string_type name)
 Adds a new action argument. More...
 
template<typename T >
argument_builder< T > & add_argument (T &value, CharType short_name)
 Adds a new argument, and returns an argument_builder that can be used to further customize it. More...
 
template<typename T >
argument_builder< T > & add_argument (T &value, string_type name)
 Adds a new argument, and returns an argument_builder that can be used to further customize it. More...
 
template<typename T >
multi_value_argument_builder< T > & add_multi_value_argument (T &value, CharType short_name)
 Adds a new multi-value argument. More...
 
template<typename T >
multi_value_argument_builder< T > & add_multi_value_argument (T &value, string_type name)
 Adds a new multi-value argument. More...
 
action_argument_builder< bool > & add_version_argument (version_function function)
 Adds the standard version argument. More...
 
action_argument_builder< bool > & add_win32_version_argument ()
 Adds the standard version argument, using version information from the VERSIONINFO resource. More...
 
parser_type build ()
 Creates a basic_command_line_parser using the current options and arguments. More...
 
const string_typename () const noexcept
 Returns the name of the argument.
 
argument_builder_baseoperator= (argument_builder_base &)=delete
 
const CharType & short_name () const noexcept
 Returns the short name of the argument.
 

Additional Inherited Members

- Protected Member Functions inherited from ookii::basic_parser_builder< CharType, Traits, Alloc >::argument_builder_base
 argument_builder_base (basic_parser_builder &basic_parser_builder, CharType short_name)
 Initializes a new instance of the argument_builder_base class. More...
 
 argument_builder_base (basic_parser_builder &basic_parser_builder, string_type name)
 Initializes a new instance of the argument_builder_base class. More...
 
size_t get_next_position ()
 Gets the next position for a positional argument.
 
storage_type & storage ()
 Provides access to the argument's options storage.
 

Detailed Description

template<typename CharType = details::default_char_type, typename Traits = std::char_traits<CharType>, typename Alloc = std::allocator<CharType>>
template<typename T>
class ookii::basic_parser_builder< CharType, Traits, Alloc >::multi_value_argument_builder< T >

Specified options for a multi-value argument.

Template Parameters
TThe type of the argument's container.

Member Function Documentation

◆ separator()

template<typename CharType = details::default_char_type, typename Traits = std::char_traits<CharType>, typename Alloc = std::allocator<CharType>>
template<typename T >
multi_value_argument_builder& ookii::basic_parser_builder< CharType, Traits, Alloc >::multi_value_argument_builder< T >::separator ( CharType  separator)
inline

Specifies a separator that separates multiple values in a single argument value.

Parameters
separatorThe separator to use, or '\0' to not use a separator.

Normally, multi-value arguments must be supplied multiple times in order to supply multiple values (e.g. -Value 1 -Value 2). Using a separator allows multiple values to be supplied at once (e.g. -Value 1;2).

Warning
The separator character cannot be used in argument values; there is no way to escape it. Be particularly careful with types whose parsing might be locale-dependent.

By default, no separator is used.


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