Provides core functionality used to configure algorithms. More...
Classes | |
class | seqan3::algorithm_result_generator_range< algorithm_executor_type > |
An input range over the algorithm results generated by the underlying algorithm executor. More... | |
class | seqan3::configuration< configs_t > |
Collection of elements to configure an algorithm. More... | |
struct | seqan3::pipeable_config_element |
Adds pipe interface to configuration elements. More... | |
Variables | |
template<typename config1_t , typename config2_t > | |
constexpr bool | seqan3::is_config_element_combineable_v = detail::config_element_pipeable_with<config1_t, config2_t> |
Helper variable template to test if a configuration element is combineable with another configuration element or configuration. More... | |
Tuple interface | |
template<template< typename ... > class query_t, typename ... configs_t> | |
constexpr auto & | get (configuration< configs_t... > &config) noexcept |
Returns the stored element. More... | |
Provides core functionality used to configure algorithms.
|
no-apirelated |
Returns the stored element.
query_t | A template template. |
[in] | config | The configuration to get the element for. |
Extends the position-based and type based get
interface for the configuration type, with a version that also accepts template-template types (types that are itself templates), such that the exact template definition must not be known.
The following snippet demonstrates the various versions of get that can be used.
no-throw guarantee.
Constant time.
|
no-apiinlineconstexpr |
Helper variable template to test if a configuration element is combineable with another configuration element or configuration.
config1_t | Either the type of a configuration element or a configuration. |
config2_t | Either the type of a configuration element or a configuration. |
This helper variable template checks if config1_t
fulfills the concept requirements seqan3::detail::config_element_pipeable_with config2_t
. If config2_t
is a seqan3::configuration, the check will be expanded to every configuration element contained in the configuration type. Only if config1_t
is combineable with every element stored inside of the given configuration, this helper variable template evaluates to true
, otherwise false
. If config1_t
is a seqan3::configuration the same applies in combination with the configuration element config2_t
. If both config1_t
and config2_t
are seqan3::configuration types, then the cartesian product between the configuration elements of the first configuration and the second configuration are tested.