1
Fork 0
rust/library/alloc/tests
Dylan DPC c731157395
Rollup merge of #95376 - WaffleLapkin:drain_keep_rest, r=dtolnay
Add `vec::Drain{,Filter}::keep_rest`

This PR adds `keep_rest` methods to `vec::Drain` and `vec::DrainFilter` under `drain_keep_rest` feature gate:
```rust
// mod alloc::vec

impl<T, A: Allocator> Drain<'_, T, A> {
    pub fn keep_rest(self);
}

impl<T, F, A: Allocator> DrainFilter<'_, T, F, A>
where
    F: FnMut(&mut T) -> bool,
{
    pub fn keep_rest(self);
}
```

Both these methods cancel draining of elements that were not yet yielded from the iterators. While this needs more testing & documentation, I want at least start the discussion. This may be a potential way out of the "should `DrainFilter` exhaust itself on drop?" argument.
2022-08-30 11:26:47 +05:30
..
arc.rs Add Weak may_dangle tests 2021-05-20 19:42:29 -07:00
borrow.rs Move various ui const tests to library 2020-09-04 02:35:27 +02:00
boxed.rs Revert accidental stabilization 2022-03-10 14:36:51 +00:00
btree_set_hash.rs Include the length in BTree hashes 2021-10-01 12:29:09 -07:00
c_str.rs Remove use of reverted std::ffi::c_char 2022-04-27 14:01:04 -07:00
const_fns.rs impl const Default for Box<[T]> and Box<str> 2022-04-11 12:14:18 -07:00
cow_str.rs mv std libs to library/ 2020-07-27 19:51:13 -05:00
fmt.rs liballoc tests: avoid int2ptr cast 2022-06-27 10:50:56 -04:00
heap.rs Rename AllocRef to Allocator and (de)alloc to (de)allocate 2020-12-04 14:47:15 +01:00
lib.rs Rollup merge of #95376 - WaffleLapkin:drain_keep_rest, r=dtolnay 2022-08-30 11:26:47 +05:30
linked_list.rs Classify BinaryHeap & LinkedList unit tests as such 2022-03-11 11:33:59 +01:00
rc.rs Add Weak may_dangle tests 2021-05-20 19:42:29 -07:00
slice.rs Use Box::new() instead of box syntax in alloc tests 2022-05-29 00:41:14 +02:00
str.rs Replace most uses of pointer::offset with add and sub 2022-08-21 02:21:41 +04:00
string.rs Adjust tests for isize::MAX allocation always being checked 2022-03-25 00:57:05 -05:00
thin_box.rs Make use of pointer::is_aligned[_to] 2022-08-21 15:46:03 +04:00
vec.rs Rollup merge of #95376 - WaffleLapkin:drain_keep_rest, r=dtolnay 2022-08-30 11:26:47 +05:30
vec_deque.rs Adjust tests for isize::MAX allocation always being checked 2022-03-25 00:57:05 -05:00