Lines Matching full:container
33 template <class Container, class Range>
34 concept HasInsertRange = requires (Container& c, Range&& range) { in requires()
38 template <template <class...> class Container, class T, class U>
41 static_assert(HasInsertRange<Container<T>, InputRange<T>>); in test_constraints_insert_range()
43 static_assert(HasInsertRange<Container<T>, InputRange<U>>); in test_constraints_insert_range()
45 static_assert(!HasInsertRange<Container<T>, InputRange<Empty>>); in test_constraints_insert_range()
47 static_assert(!HasInsertRange<Container<T>, InputRangeNotDerivedFrom>); in test_constraints_insert_range()
48 static_assert(!HasInsertRange<Container<T>, InputRangeNotIndirectlyReadable>); in test_constraints_insert_range()
49 static_assert(!HasInsertRange<Container<T>, InputRangeNotInputOrOutputIterator>); in test_constraints_insert_range()
54 template <class Container, class Range>
55 concept HasAppendRange = requires (Container& c, Range&& range) { in requires()
59 template <template <class...> class Container, class T, class U>
62 static_assert(HasAppendRange<Container<T>, InputRange<T>>); in test_constraints_append_range()
64 static_assert(HasAppendRange<Container<T>, InputRange<U>>); in test_constraints_append_range()
66 static_assert(!HasAppendRange<Container<T>, InputRange<Empty>>); in test_constraints_append_range()
68 static_assert(!HasAppendRange<Container<T>, InputRangeNotDerivedFrom>); in test_constraints_append_range()
69 static_assert(!HasAppendRange<Container<T>, InputRangeNotIndirectlyReadable>); in test_constraints_append_range()
70 static_assert(!HasAppendRange<Container<T>, InputRangeNotInputOrOutputIterator>); in test_constraints_append_range()
75 template <class Container, class Range>
76 concept HasPrependRange = requires (Container& c, Range&& range) { in requires()
80 template <template <class...> class Container, class T, class U>
83 static_assert(HasPrependRange<Container<T>, InputRange<T>>); in test_constraints_prepend_range()
85 static_assert(HasPrependRange<Container<T>, InputRange<U>>); in test_constraints_prepend_range()
87 static_assert(!HasPrependRange<Container<T>, InputRange<Empty>>); in test_constraints_prepend_range()
89 static_assert(!HasPrependRange<Container<T>, InputRangeNotDerivedFrom>); in test_constraints_prepend_range()
90 static_assert(!HasPrependRange<Container<T>, InputRangeNotIndirectlyReadable>); in test_constraints_prepend_range()
91 static_assert(!HasPrependRange<Container<T>, InputRangeNotInputOrOutputIterator>); in test_constraints_prepend_range()
96 template <class Container, class Range>
97 concept HasAssignRange = requires (Container& c, Range&& range) { in requires()
101 template <template <class...> class Container, class T, class U>
104 static_assert(HasAssignRange<Container<T>, InputRange<T>>); in test_constraints_assign_range()
106 static_assert(HasAssignRange<Container<T>, InputRange<U>>); in test_constraints_assign_range()
108 static_assert(!HasAssignRange<Container<T>, InputRange<Empty>>); in test_constraints_assign_range()
110 static_assert(!HasAssignRange<Container<T>, InputRangeNotDerivedFrom>); in test_constraints_assign_range()
111 static_assert(!HasAssignRange<Container<T>, InputRangeNotIndirectlyReadable>); in test_constraints_assign_range()
112 static_assert(!HasAssignRange<Container<T>, InputRangeNotInputOrOutputIterator>); in test_constraints_assign_range()
117 // Empty container.
151 // One-element container.
219 // Full container / empty range.
254 // Full container / one-element range.
289 // Full container / mid-sized range.
351 // Full container / long range.
427 template <class Container, class Iter, class Sent, class Validate>
429 using T = typename Container::value_type; in test_sequence_insert_range()
430 using D = typename Container::difference_type; in test_sequence_insert_range()
434 Container c(test_case.initial.begin(), test_case.initial.end()); in test_sequence_insert_range()
444 { // Empty container. in test_sequence_insert_range()
453 { // One-element container. in test_sequence_insert_range()
468 { // Full container. in test_sequence_insert_range()
496 template <class Container, class Iter, class Sent, class Validate>
498 using T = typename Container::value_type; in test_sequence_prepend_range()
501 Container c(test_case.initial.begin(), test_case.initial.end()); in test_sequence_prepend_range()
509 { // Empty container. in test_sequence_prepend_range()
518 { // One-element container. in test_sequence_prepend_range()
527 { // Full container. in test_sequence_prepend_range()
539 template <class Container, class Iter, class Sent, class Validate>
541 using T = typename Container::value_type; in test_sequence_append_range()
544 Container c(test_case.initial.begin(), test_case.initial.end()); in test_sequence_append_range()
552 { // Empty container. in test_sequence_append_range()
561 { // One-element container. in test_sequence_append_range()
570 { // Full container. in test_sequence_append_range()
582 template <class Container, class Iter, class Sent, class Validate>
584 using T = typename Container::value_type; in test_sequence_assign_range()
595 Container c(initial.begin(), initial.end()); in test_sequence_assign_range()
603 { // Empty container. in test_sequence_assign_range()
614 { // One-element container. in test_sequence_assign_range()
625 { // Full container. in test_sequence_assign_range()
639 template <template <class ...> class Container>
644 Container<MoveOnly> c; in test_sequence_insert_range_move_only()
648 template <template <class ...> class Container>
653 Container<MoveOnly> c; in test_sequence_prepend_range_move_only()
657 template <template <class ...> class Container>
662 Container<MoveOnly> c; in test_sequence_append_range_move_only()
666 template <template <class ...> class Container>
671 Container<MoveOnly> c; in test_sequence_assign_range_move_only()
677 template <template <class ...> class Container>
683 Container<T> c; in test_insert_range_exception_safety_throwing_copy()
689 template <template <class ...> class Container, class T>
698 Container<T, ThrowingAllocator<T>> c(alloc); in test_insert_range_exception_safety_throwing_allocator()
708 template <template <class ...> class Container>
714 Container<T> c; in test_prepend_range_exception_safety_throwing_copy()
720 template <template <class ...> class Container, class T>
729 Container<T, ThrowingAllocator<T>> c(alloc); in test_prepend_range_exception_safety_throwing_allocator()
739 template <template <class ...> class Container>
745 Container<T> c; in test_append_range_exception_safety_throwing_copy()
751 template <template <class ...> class Container, class T>
760 Container<T, ThrowingAllocator<T>> c(alloc); in test_append_range_exception_safety_throwing_allocator()
770 template <template <class ...> class Container>
776 Container<T> c; in test_assign_range_exception_safety_throwing_copy()
782 template <template <class ...> class Container, class T>
791 Container<T, ThrowingAllocator<T>> c(alloc); in test_assign_range_exception_safety_throwing_allocator()