|
(Note that these are not member functions.)
|
template<typename lhs_config_t , typename rhs_config_t > |
constexpr auto | operator| (lhs_config_t &&lhs, rhs_config_t &&rhs) |
| Combines two configurations and/or configuration elements forming a new seqan3::configuration. More...
|
|
|
template<detail::config_element config_t> |
| configuration (config_t) -> configuration< config_t > |
| Deduces the correct configuration element type from the passed seqan3::pipeable_config_element.
|
|
|
template<template< typename ... > class query_t, typename ... configs_t> |
constexpr auto & | get (configuration< configs_t... > &config) noexcept |
| Returns the stored element. More...
|
|
|
template<typename alternative_t > |
constexpr decltype(auto) | get_or (alternative_t &&alternative) &noexcept |
| Returns the stored configuration element if present otherwise the given alternative. More...
|
|
template<typename alternative_t > |
constexpr decltype(auto) | get_or (alternative_t &&alternative) const &noexcept |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
template<typename alternative_t > |
constexpr decltype(auto) | get_or (alternative_t &&alternative) &&noexcept |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
template<typename alternative_t > |
constexpr decltype(auto) | get_or (alternative_t &&alternative) const &&noexcept |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
template<typename query_t > |
static constexpr bool | exists () noexcept |
| Checks if the given type exists in the tuple.
|
|
template<template< typename ... > typename query_t> |
static constexpr bool | exists () noexcept |
| Checks if the given type exists in the tuple.
|
|
|
Note that modifications return new configurations and do not modify this .
|
template<typename other_configuration_t > |
constexpr auto | append (other_configuration_t &&other_config) const |
| Returns a new configuration by appending the given configuration to the current one. More...
|
|
template<typename query_t > |
constexpr auto | remove () const |
| Remove a config element from the configuration. More...
|
|
template<template< typename ... > typename query_t> |
constexpr auto | remove () const |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
template<detail::config_element ... configs_t>
class seqan3::configuration< configs_t >
Collection of elements to configure an algorithm.
- Template Parameters
-
configs_t | Template parameter pack containing all configuration elements; Must model seqan3::detail::config_element |
This class provides a unified interface to create and query such configurations for a specific algorithm. It extends the standard tuple interface with some useful functions to modify and query the user configurations.
template<detail::config_element ... configs_t>
template<typename other_configuration_t >
Returns a new configuration by appending the given configuration to the current one.
- Template Parameters
-
other_configuration_t | Another configuration type or configuration element type; each configuration element must model seqan3::detail::config_element_pipeable_with each of the configurations elements of the current configuration. |
- Parameters
-
[in] | other_config | The other configuration to append to the current one. |
- Returns
- A new configuration containing the appended configuration elements.
This function generates a new configuration object containing the appended configuration elements. The current configuration will not be modified.