45 #include <meta/meta.hpp> 58 template <
typename derived_t>
59 class config_element_base;
78 template <
typename config_t>
94 template <detail::config_element_concept ... configs_t>
97 template <
typename derived_t>
98 class deferred_config_element_base;
113 template <
typename config_t>
115 concept deferred_config_element_concept = config_element_concept<config_t> &&
116 std::is_base_of_v<deferred_config_element_base<std::remove_reference_t<config_t>>,
117 std::remove_reference_t<config_t>>;
129 template <
typename object_t>
130 struct is_algorithm_configuration : std::false_type
134 template <
typename ...config_elements_t>
135 struct is_algorithm_configuration<configuration<config_elements_t...>> : std::true_type
142 template <
typename object_t>
143 inline constexpr
bool is_algorithm_configuration_v = is_algorithm_configuration<object_t>::value;
Subsumes std::Copyable and std::DefaultConstructible.
Provides seqan3::type_list and auxiliary metafunctions.
Definition: aligned_sequence_concept.hpp:288
Provides C++20 additions to the type_traits header.