DP
https://godbolt.org/z/nMfjhb
Size: a a a
DP
PK
PK
ПК
PK
PK
D
template <typename T, template <typename> concept IteratorConcept>
concept sequence = requires(T seq) {
{ std::begin(seq) } -> IteratorConcept;
{ std::end(seq) } -> IteratorConcept;
}
template <typename C>
requires sequence<C, std::input_iterator>
void for_each(const C& c) {
}
template <typename C>
requires sequence<C, std::random_access_iterator>
void sort(const C& c) {
}
PK
AS
АК
АК
АК
AF
AF
template <typename T, template <typename> concept IteratorConcept>
concept sequence = requires(T seq) {
{ std::begin(seq) } -> IteratorConcept;
{ std::end(seq) } -> IteratorConcept;
}
template <typename C>
requires sequence<C, std::input_iterator>
void for_each(const C& c) {
}
template <typename C>
requires sequence<C, std::random_access_iterator>
void sort(const C& c) {
}
AF
D
AF
AF
AF
BH
#define BEFORE_COPY_HDL( handler_name ) BEFORE_COPY_HANDLER( handler_name, GEN_UNIQUE_ID( MethodHandlerName ) )