| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-09-03 | Link to `#capacity-and-reallocation` when using with_capacity | Joshua Nelson | -0/+3 | |
| 2020-09-03 | fix debug assertion | The8472 | -4/+18 | |
| The InPlaceIterable debug assert checks that the write pointer did not advance beyond the read pointer. But TrustedRandomAccess never advances the read pointer, thus triggering the assert. Skip the assert if the source pointer did not change during iteration. | ||||
| 2020-09-03 | improve comments and naming | The8472 | -25/+56 | |
| 2020-09-03 | add explanation to specialization marker | The8472 | -0/+6 | |
| 2020-09-03 | remove separate no-drop code path since it resulted in more LLVM IR | The8472 | -32/+15 | |
| 2020-09-03 | remove empty Vec extend optimization | The8472 | -14/+2 | |
| The optimization meant that every extend code path had to emit llvm IR for from_iter and extend spec_extend, which likely impacts compile times while only improving a few edge-cases | ||||
| 2020-09-03 | get things to work under min_specialization by leaning more heavily on ↵ | The8472 | -8/+13 | |
| #[rustc_unsafe_specialization_marker] | ||||
| 2020-09-03 | apply required min_specialization attributes | The8472 | -1/+7 | |
| 2020-09-03 | generalize in-place collect to types of same size and alignment | The8472 | -19/+27 | |
| 2020-09-03 | increase comment verbosity | The8472 | -2/+2 | |
| 2020-09-03 | work around compiler overhead around lambdas in generics by extracting them ↵ | The8472 | -34/+39 | |
| into free functions | ||||
| 2020-09-03 | extract IntoIter drop/forget used by specialization into separate methods | The8472 | -15/+25 | |
| 2020-09-03 | remove redundant cast | The8472 | -1/+1 | |
| 2020-09-03 | move unsafety into method, not relevant to caller | The8472 | -2/+2 | |
| 2020-09-03 | replace unsafe ptr::write with deref-write, benchmarks show no difference | The8472 | -10/+4 | |
| 2020-09-03 | pacify tidy | The8472 | -3/+3 | |
| 2020-09-03 | replace drop flag with ManuallyDrop | The8472 | -6/+4 | |
| 2020-09-03 | mark as_inner as unsafe and update comments | The8472 | -4/+8 | |
| 2020-09-03 | avoid exposing that binary heap's IntoIter is backed by vec::IntoIter, use a ↵ | The8472 | -5/+16 | |
| private trait instead | ||||
| 2020-09-03 | impl TrustedRandomAccess for vec::IntoIter | The8472 | -1/+22 | |
| 2020-09-03 | move free-standing method into trait impl | The8472 | -79/+75 | |
| 2020-09-03 | fix some in-place-collect edge-cases | The8472 | -0/+13 | |
| - it's an allocation optimization, so don't attempt to do it on ZSTs - drop the tail of partially exhausted iters | ||||
| 2020-09-03 | remove redundant code | The8472 | -7/+1 | |
| 2020-09-03 | improve comments | The8472 | -7/+10 | |
| 2020-09-03 | specialize creating a Vec from a slice iterator where T: Copy | The8472 | -0/+14 | |
| this was already implemented for Extend but not for FromIterator | ||||
| 2020-09-03 | restore SpecFrom<T, TrustedLen<Item=T>> specialization by nesting | The8472 | -1/+29 | |
| specializations | ||||
| 2020-09-03 | use From specializations on extend if extended Vec is empty | The8472 | -3/+25 | |
| this enables in-place iteration and allocation reuse in additional cases | ||||
| 2020-09-03 | use memmove instead of generic in-place iteration for IntoIter source | The8472 | -2/+10 | |
| this is the original SpecExtend<_, IntoIter> logic except generalizing the fast-path to include a memmove | ||||
| 2020-09-03 | restore Vec::extend specialization for vec::IntoIter sources that | The8472 | -0/+9 | |
| was lost during refactoring | ||||
| 2020-09-03 | recover vectorization | The8472 | -23/+53 | |
| switch to try_fold and segregate the drop handling to keep collect::<Vec<u8>>() and similar optimizer-friendly It comes at the cost of less accurate debug_asserts and code complexity | ||||
| 2020-09-03 | simplify pointer arithmetic | The8472 | -11/+15 | |
| 2020-09-03 | use add instead of offset | The8472 | -1/+1 | |
| 2020-09-03 | implement drop handling | The8472 | -7/+26 | |
| 2020-09-03 | assert that SourceIter requirements have not been violated by the pipeline | The8472 | -0/+2 | |
| 2020-09-03 | mark SourceIter as unsafe, document invariants | The8472 | -1/+1 | |
| 2020-09-03 | in-place collect for Vec. Box<[]> and BinaryHeap IntoIter and some adapters | The8472 | -41/+97 | |
| 2020-09-03 | unrelated typo fix | The8472 | -1/+1 | |
| 2020-09-03 | Link & primitive using relative link | Ivan Tham | -0/+1 | |
| 2020-09-02 | Fix typos in vec try_reserve(_exact) docs | Anton | -3/+3 | |
| `try_reserve` and `try_reserve_exact` docs refer to calling `reserve` and `reserve_exact`. `try_reserve_exact` example uses `try_reserve` method instead of `try_reserve_exact`. | ||||
| 2020-08-31 | Rollup merge of #76069 - pickfire:patch-16, r=jyn514 | Aleksey Kladov | -3/+1 | |
| Use explicit intra-doc link in path for Vec resize r? @jyn514 | ||||
| 2020-08-31 | Rollup merge of #76058 - pickfire:patch-11, r=jyn514 | Aleksey Kladov | -2/+3 | |
| Use assertions on Vec doc Clarify what the state of Vec after with_capacity on doc. r? @jyn514 | ||||
| 2020-08-31 | Rollup merge of #76055 - pickfire:patch-9, r=jyn514 | Aleksey Kladov | -1/+4 | |
| Keep doc standard for Vec DrainFilter r? @jyn514 | ||||
| 2020-08-31 | Rollup merge of #76023 - pickfire:patch-4, r=jyn514 | Aleksey Kladov | -1/+1 | |
| Liballoc extend use intra doc link Superseeds https://github.com/rust-lang/rust/pull/75729/commits r? @jyn514 | ||||
| 2020-08-30 | Try removing [prim@reference] | Ivan Tham | -1/+1 | |
| 2020-08-30 | Rollup merge of #75874 - pickfire:patch-3, r=jyn514 | Dylan DPC | -3/+1 | |
| Shorten liballoc doc intra link while readable r? @jyn514 Do you want to reviews these sort of pull requests in the future? I might send a few of them while reading vec code. | ||||
| 2020-08-29 | Remove empty vec assertion flow distrupt | Ivan Tham | -1/+0 | |
| Co-authored-by: Joshua Nelson <joshua@yottadb.com> | ||||
| 2020-08-29 | Reuse description from drain_filter | Ivan Tham | -1/+1 | |
| Co-authored-by: Joshua Nelson <joshua@yottadb.com> | ||||
| 2020-08-29 | Use explicit intra-doc link in path for Vec resize | Ivan Tham | -3/+1 | |
| 2020-08-29 | Vec slice example fix style and show type elision | Ivan Tham | -1/+1 | |
| 2020-08-29 | Link vec doc to & reference | Ivan Tham | -1/+1 | |
| It is not always obvious that people could see the docs for `&` especially for beginners, it also helps learnability. | ||||
