template<typename Alloc>
requires {
typename std::allocator_traits<Alloc>::value_type;
typename std::allocator_traits<Alloc>::pointer;
typename std::allocator_traits<Alloc>::const_pointer;
typename std::allocator_traits<Alloc>::void_pointer;
typename std::allocator_traits<Alloc>::const_void_pointer;
typename std::allocator_traits<Alloc>::size_type;
typename std::allocator_traits<Alloc>::difference_type;
} &&
requires(
typename std::allocator_traits<Alloc>::size_type n,
typename std::allocator_traits<Alloc>::pointer
p,
typename std::allocator_traits<Alloc>::value_type& v,
const typename std::allocator_traits<Alloc>::value_type&
cv
) {
{ a.allocate(n) } -> std::same_as<typename std::allocator_traits<Alloc>::pointer>;
{ a.deallocate(p, n) } -> std::same_as<void>;
{ std::allocator_traits<Alloc>::max_size(a) } -> std::convertible_to<typename std::allocator_traits<Alloc>::size_type>;
{ std::allocator_traits<Alloc>::construct(a, p, cv) } -> std::same_as<void>;
{ std::allocator_traits<Alloc>::destroy(a, p) } -> std::same_as<void>;
{ std::allocator_traits<Alloc>::select_on_container_copy_construction(a) } -> std::convertible_to<Alloc>;
}
Definition at line 19 of file concepts.hpp.