SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
Loading...
Searching...
No Matches
seqan3::detail::format_base Class Reference

The format that contains all helper functions needed in all formats. More...

#include <seqan3/argument_parser/detail/format_base.hpp>

+ Inheritance diagram for seqan3::detail::format_base:

Protected Member Functions

std::string escape_special_xml_chars (std::string const &original)
 Escapes certain characters for correct output.
 

Static Protected Member Functions

static std::string expand_multiple_flags (std::string const &flag_cluster)
 Expands multiple one character flag identifiers for pretty help output.
 
template<detail::is_container_option container_type>
static std::string get_type_name_as_string (container_type const &)
 Returns the value_type of the input container as a string (reflection).
 
template<typename value_type >
static std::string get_type_name_as_string (value_type const &)
 Returns the input type as a string (reflection).
 
template<detail::is_container_option container_type>
static std::string option_type_and_list_info (container_type const &container)
 Formats the container and its value_type for the help page printing.
 
template<typename option_value_type >
static std::string option_type_and_list_info (option_value_type const &value)
 Formats the type of a value for the help page printing.
 
static std::string prep_id_for_help (char const short_id, std::string const &long_id)
 Formats the option/flag identifier pair for the help page printing.
 

Detailed Description

The format that contains all helper functions needed in all formats.

Remarks
For a complete overview, take a look at Argument Parser

Member Function Documentation

◆ escape_special_xml_chars()

std::string seqan3::detail::format_base::escape_special_xml_chars ( std::string const &  original)
inlineprotected

Escapes certain characters for correct output.

Parameters
[in]originalThe string containing characters to be escaped.
Returns
The original string as their corresponding html/xml representation.

Special characters considered are ", \, &, < and >.

◆ expand_multiple_flags()

static std::string seqan3::detail::format_base::expand_multiple_flags ( std::string const &  flag_cluster)
inlinestaticprotected

Expands multiple one character flag identifiers for pretty help output.

Parameters
[in]flag_clusterThe 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_type_name_as_string() [1/2]

template<detail::is_container_option container_type>
static std::string seqan3::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_typeThe 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 seqan3::detail::format_base::get_type_name_as_string ( value_type const &  )
inlinestaticprotected

Returns the input type as a string (reflection).

Template Parameters
value_typeThe 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 seqan3::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
container_typeA type that must satisfy the seqan3::detail::is_container_option.
Parameters
[in]containerThe 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 seqan3::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_typeThe type of the option value to get the info for.
Parameters
[in]valueThe value to deduct the type from.
Returns
The type of the value as string.

◆ prep_id_for_help()

static std::string seqan3::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_idThe short identifier of the option/flag.
[in]long_idThe 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:
Hide me