23#ifndef VCL_CONCEPTS_RANGES_RANGE_H
24#define VCL_CONCEPTS_RANGES_RANGE_H
39concept Range = std::ranges::range<T>;
65template<
typename R,
typename T>
88template<
typename R,
typename T>
90 Range<R> && std::convertible_to<std::ranges::range_value_t<R>, T>;
112template<
typename R,
typename T>
114 std::same_as<std::ranges::range_value_t<R>, T>;
Utility concept that is evaluated true the Range R is an Output Range and has a value_type that is T.
Definition range.h:113
Utility concept that is evaluated true the Range R has a value_type that is exactly T.
Definition range.h:66
Utility concept that is evaluated true if T is a range, e.g. if has a begin and an end.
Definition range.h:39