21namespace seqan3::detail
29template <
typename search_configuration_t>
33 using empty_search_result_type = search_result<empty_type, empty_type, empty_type, empty_type>;
36 search_cfg::detail::result_type<empty_search_result_type>{}))>::type;
39 static constexpr bool has_max_error_total = search_configuration_t::template exists<search_cfg::max_error_total>();
41 static constexpr bool has_max_error_substitution =
42 search_configuration_t::template exists<search_cfg::max_error_substitution>();
44 static constexpr bool has_max_error_insertion =
45 search_configuration_t::template exists<search_cfg::max_error_insertion>();
47 static constexpr bool has_max_error_deletion =
48 search_configuration_t::template exists<search_cfg::max_error_deletion>();
51 static constexpr bool only_max_error_total =
52 has_max_error_total && !has_max_error_substitution && !has_max_error_insertion && !has_max_error_deletion;
55 static constexpr bool search_all_hits = search_configuration_t::template exists<search_cfg::hit_all>();
57 static constexpr bool search_single_best_hit =
58 search_configuration_t::template exists<search_cfg::hit_single_best>();
60 static constexpr bool search_all_best_hits = search_configuration_t::template exists<search_cfg::hit_all_best>();
62 static constexpr bool search_strata_hits = search_configuration_t::template exists<search_cfg::hit_strata>();
64 static constexpr bool has_hit_configuration = search_all_hits || search_single_best_hit || search_all_best_hits
66 || search_configuration_t::template exists<search_cfg::hit>();
69 static constexpr bool output_query_id = search_configuration_t::template exists<search_cfg::output_query_id>();
71 static constexpr bool output_reference_id =
72 search_configuration_t::template exists<search_cfg::output_reference_id>();
74 static constexpr bool output_reference_begin_position =
75 search_configuration_t::template exists<search_cfg::output_reference_begin_position>();
77 static constexpr bool output_index_cursor =
78 search_configuration_t::template exists<search_cfg::output_index_cursor>();
80 static constexpr bool output_requires_locate_call = output_reference_id | output_reference_begin_position;
83 static constexpr bool has_output_configuration =
84 output_query_id | output_reference_id | output_reference_begin_position | output_index_cursor;
87 static constexpr bool has_user_callback = search_configuration_t::template exists<search_cfg::on_result>();
Provides various type traits on generic types.
Provides seqan3::detail::empty_type.
Provides the configuration to define the hit strategies "hit_strata", "hit_all", "hit_all_best",...
Provides the configuration for maximum number of errors for all error types.
Provides seqan3::search_cfg::on_result.
Provides seqan3::search_cfg::detail::result_type.
Provides the configuration for the content of the search result.