The format that contains all helper functions needed in all formats.
More...
#include <sharg/detail/format_base.hpp>
The format that contains all helper functions needed in all formats.
◆ escape_special_xml_chars()
Escapes certain characters for correct output.
- Parameters
-
[in] | original | The string containing characters to be escaped. |
- Returns
- The original string as their corresponding html/xml representation.
Special characters considered are "
, \
, &
, <
and >
.
◆ expand_multiple_flags()
Expands multiple one character flag identifiers for pretty help output.
- Parameters
-
[in] | flag_cluster | The string of one character flags. |
- Returns
- A string that lists all flags as a comma separated list.
e.g. "-agdg" becomes "-a, -g, -d and -g".
◆ get_default_message()
template<typename option_type , typename default_type >
static std::string sharg::detail::format_base::get_default_message |
( |
option_type const & | option, |
|
|
default_type const & | value ) |
|
inlinestaticprotected |
Returns the default message for the help page.
- Template Parameters
-
option_type | The type of the option. |
default_type | The type of the default value. |
- Parameters
-
[in] | option | The option to get the default message for. |
[in] | value | The default value to get the default message for. |
- Returns
- The default message for the help page (" Default: <default-value>. ").
value
is either config.default_message
, or the same as option
. If the option_type
is a std::string or std::filesystem::path, the value is quoted. If the option_type
is a container of std::string or std::filesystem::path, each individual value is quoted; if a config.default_message
is provided, it will not be quoted.
◆ get_type_name_as_string() [1/2]
template<detail::is_container_option container_type>
static std::string sharg::detail::format_base::get_type_name_as_string |
( |
container_type const & | | ) |
|
|
inlinestaticprotected |
Returns the value_type
of the input container as a string (reflection).
- Template Parameters
-
container_type | The container type for which to query it's value_type. |
- Returns
- The type of the container value_type as a string.
◆ get_type_name_as_string() [2/2]
template<typename value_type >
static std::string sharg::detail::format_base::get_type_name_as_string |
( |
value_type const & | | ) |
|
|
inlinestaticprotected |
Returns the input type as a string (reflection).
- Template Parameters
-
value_type | The type whose name is converted std::string. |
- Returns
- The type of the value as a string.
◆ option_type_and_list_info() [1/2]
template<detail::is_container_option container_type>
static std::string sharg::detail::format_base::option_type_and_list_info |
( |
container_type const & | container | ) |
|
|
inlinestaticprotected |
Formats the container and its value_type for the help page printing.
- Template Parameters
-
- Parameters
-
[in] | container | The container to deduct the type from. |
- Returns
- The type of the container value type as a string, encapsulated in "List of".
◆ option_type_and_list_info() [2/2]
template<typename option_value_type >
static std::string sharg::detail::format_base::option_type_and_list_info |
( |
option_value_type const & | value | ) |
|
|
inlinestaticprotected |
Formats the type of a value for the help page printing.
- Template Parameters
-
option_value_type | The type of the option value to get the info for. |
- Parameters
-
[in] | value | The value to deduct the type from. |
- Returns
- The type of the value as string.
◆ prep_id_for_help()
static std::string sharg::detail::format_base::prep_id_for_help |
( |
char const | short_id, |
|
|
std::string const & | long_id ) |
|
inlinestaticprotected |
Formats the option/flag identifier pair for the help page printing.
- Parameters
-
[in] | short_id | The short identifier of the option/flag. |
[in] | long_id | The long identifier of the option/flag. |
- Returns
- The name of the short and long id, prepended with (double)dash.
e.g. "-i,--integer", "-i", or "--integer".
The documentation for this class was generated from the following file: