...
This commit is contained in:
@@ -46,6 +46,10 @@ template <typename R>
|
||||
concept adc_char_view = std::ranges::view<R> && std::same_as<std::ranges::range_value_t<R>, char>;
|
||||
|
||||
|
||||
template <typename R>
|
||||
concept adc_view_or_output_char_range = adc_char_view<R> || adc_output_char_range<R>;
|
||||
|
||||
|
||||
template <typename R>
|
||||
concept adc_range_of_view_char_range = std::ranges::range<R> && std::ranges::view<std::ranges::range_value_t<R>> &&
|
||||
std::same_as<std::ranges::range_value_t<std::ranges::range_value_t<R>>, char>;
|
||||
@@ -54,6 +58,10 @@ template <typename R>
|
||||
concept adc_range_of_input_char_range =
|
||||
std::ranges::range<R> && traits::adc_input_char_range<std::ranges::range_value_t<R>>;
|
||||
|
||||
|
||||
template <typename R>
|
||||
concept adc_range_of_view_or_output_char_range = adc_range_of_view_char_range<R> || adc_output_char_range<R>;
|
||||
|
||||
// deduce returned type of callable
|
||||
// template <typename T>
|
||||
// using adc_retval_t = std::invoke_result_t<std::remove_cvref_t<T>>;
|
||||
|
||||
Reference in New Issue
Block a user