about summary refs log tree commit diff
path: root/library/alloc/src
AgeCommit message (Collapse)AuthorLines
2020-08-07Auto merge of #75071 - ssomers:btree_cleanup_5, r=Mark-Simulacrumbors-53/+51
BTreeMap: enforce the panic rule imposed by `replace` Also, reveal the unsafe parts in the closures fed to it. r? @Mark-Simulacrum
2020-08-07BTreeMap: enforce the panic rule imposed by `replace`Stein Somers-53/+51
2020-08-07BTreeMap: better way to postpone root access in DrainFilterStein Somers-32/+25
2020-08-07Change the comment of BTreeMap::into_valuesNazım Can Altınova-1/+1
2020-08-07Add `into_{keys,values}` methods for BTreeMapNazım Can Altınova-0/+156
2020-08-05Make IntoIterator lifetime bounds of &BTreeMap match with &HashMapNazım Can Altınova-2/+2
2020-08-05Add {Box,Rc,Arc}::new_zeroed_sliceAmos Onn-0/+91
2020-08-05Use alloc_zeroed in {Rc,Arc}::new_zeroedAmos Onn-30/+48
2020-08-04Replace `Memoryblock` with `NonNull<[u8]>`Tim Diekmann-40/+45
2020-08-04Consistent variable name alloc for raw_vecIvan Tham-4/+6
2020-08-04Auto merge of #74850 - TimDiekmann:remove-in-place-alloc, r=Amanieubors-106/+123
Remove in-place allocation and revert to separate methods for zeroed allocations closes rust-lang/wg-allocators#58
2020-08-04Auto merge of #75058 - ssomers:btree_cleanup_insert_2, r=Mark-Simulacrumbors-44/+42
Clarify reuse of a BTreeMap insert support function and treat split support likewise r? @Mark-Simulacrum
2020-08-03Auto merge of #74827 - ssomers:btree_cleanup_insert, r=Mark-Simulacrumbors-37/+70
Move bulk of BTreeMap::insert method down to new method on handle Adjust the boundary between the map and node layers for insertion: do more in the node layer, keep root manipulation and pointer dereferencing separate. No change in undefined behaviour or performance. r? @Mark-Simulacrum
2020-08-03Merge branch 'master' into remove-in-place-allocTim Diekmann-238/+191
2020-08-02Rollup merge of #75059 - shengsheng:typos, r=Dylan-DPCManish Goregaokar-2/+2
fix typos Fix common misspellings with https://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
2020-08-02Separate off a leafy insert function instead of lying, and split split similarlyStein Somers-44/+42
2020-08-02Move bulk of BTreeMap::insert method down to new method on handleStein Somers-37/+70
2020-08-03Rollup merge of #74974 - RalfJung:miri-tests, r=Mark-SimulacrumYuki Okushi-6/+11
Make tests faster in Miri Reduce some test iteration counts in Miri.
2020-08-03Rollup merge of #74874 - ssomers:btree_cleanup_8, r=Mark-SimulacrumYuki Okushi-8/+16
BTreeMap: define forget_type only when relevant Similar to `forget_node_type` for handles. No effect on generated code, apart maybe from the superfluous calls that might not have been optimized away. r? @Mark-Simulacrum
2020-08-03Rollup merge of #74762 - ssomers:btree_no_root_in_remove_kv_tracking, ↵Yuki Okushi-30/+73
r=Mark-Simulacrum BTreeMap::drain_filter should not touch the root during iteration Although Miri doesn't point it out, I believe there is undefined behaviour using `drain_filter` when draining the 11th-last element from a tree that was larger. When this happens, the last remaining child nodes are merged, the root becomes empty and is popped from the tree. That last step establishes a mutable reference to the node elected root and writes a pointer in `node::Root`, while iteration continues to visit the same node. This is mostly code from #74437, slightly adapted.
2020-08-03Rollup merge of #74686 - ssomers:btree_cleanup_3, r=Mark-SimulacrumYuki Okushi-10/+3
BTreeMap: remove into_slices and its unsafe block A small tweak to make BTreeMap code shorter and less unsafe. r? @Mark-Simulacrum
2020-08-02fix typosliuzhenyu-2/+2
2020-08-02Auto merge of #75033 - Manishearth:rollup-d8afil1, r=Manishearthbors-1/+42
Rollup of 5 pull requests Successful merges: - #74602 (Clarify the doc for MaybeUninit::zeroed on incorrect use) - #74720 (Clean up E0728 explanation) - #74992 (fix rustdoc generic param order) - #75015 (Add Vec::spare_capacity_mut) - #75022 (Use a slice pattern instead of rchunks_exact(_).next()) Failed merges: r? @ghost
2020-08-01Auto merge of #74605 - rust-lang:vec-leak, r=Amanieubors-6/+4
Stabilize Vec::leak as a method Closes https://github.com/rust-lang/rust/issues/62195 The signature is changed to a method rather than an associated function: ```diff -pub fn leak<'a>(vec: Vec<T>) -> &'a mut [T] +pub fn leak<'a>(self) -> &'a mut [T] ``` The reason for `Box::leak` not to be a method (`Deref` to an arbitrary `T` which might have its own, different `leak` method) does not apply.
2020-08-01BTreeMap::drain_filter no longer touches the root during iterationStein Somers-30/+73
2020-08-01Add Vec::spare_capacity_mutAmanieu d'Antras-1/+42
2020-08-01Define forget_type only when relevantStein Somers-8/+16
2020-08-01Auto merge of #74373 - lcnr:array_chunks, r=withoutboatsbors-0/+3
add `slice::array_chunks` to std Now that #74113 has landed, these methods are suddenly usable. A rebirth of #72334 Tests are directly copied from `chunks_exact` and some additional tests for type inference. r? @withoutboats as you are both part of t-libs and working on const generics. closes #60735
2020-08-01add tracking issueBastian Kauschke-1/+1
2020-08-01Rollup merge of #74644 - crlf0710:drop_old_stuff, r=AmanieuYuki Okushi-62/+10
Remove `linked_list_extras` methods. Removing these in favor of the `Cursor` API in https://github.com/rust-lang/rust/issues/58533 . Closes #27794. r? @Amanieu
2020-08-01Remove `linked_list_extras` methods.Charles Lew-62/+10
2020-07-31make some vec_deque tests less exhaustive in MiriRalf Jung-6/+11
2020-07-31Auto merge of #74926 - Manishearth:rename-lint, r=jyn514bors-1/+0
Rename intra_doc_link_resolution_failure It should be plural to follow the conventions in https://github.com/rust-lang/rfcs/blob/master/text/0344-conventions-galore.md#lints
2020-07-30Rollup merge of #74782 - vorner:weak-into-raw-cnt-doc, r=dtolnayManish Goregaokar-20/+22
Don't use "weak count" around Weak::from_raw_ptr As `Rc/Arc::weak_count` returns 0 when having no strong counts, this could be confusing and it's better to avoid using that completely. Closes #73840.
2020-07-30Remove deny for intra doc link failures from library code, it's no longer ↵Manish Goregaokar-1/+0
necessary
2020-07-30Rename in libraryManish Goregaokar-1/+1
2020-07-30liballoc export ArrayChunksBastian Kauschke-0/+3
2020-07-29Rollup merge of #74902 - rust-lang:into_raw_non_null, r=dtolnayManish Goregaokar-91/+1
Remove deprecated unstable `{Box,Rc,Arc}::into_raw_non_null` functions FCP: https://github.com/rust-lang/rust/issues/47336#issuecomment-619369613
2020-07-29Rollup merge of #74852 - lzutao:inline-rm-tostring, r=nnethercoteManish Goregaokar-0/+3
Explain why inlining default ToString impl Trying to remove inline attribute from default ToString impl causes regression. Perf result at <https://github.com/rust-lang/rust/pull/74852#issuecomment-664812994>.
2020-07-29Simplify implementations of `AllocRef` for `Global` and `System`Tim Diekmann-71/+70
2020-07-29Remove deprecated unstable `{Box,Rc,Arc}::into_raw_non_null` functionsSimon Sapin-91/+1
FCP: https://github.com/rust-lang/rust/issues/47336#issuecomment-619369613
2020-07-29Stabilize `Vec::leak`Simon Sapin-3/+1
2020-07-29Make `Vec::leak` a method instead of an associated function.Simon Sapin-3/+3
The reason for `Box::leak` not to be a method (`Deref` to an arbitrary `T` which might have its own, different `leak` method) does not apply.
2020-07-29Link to syntax section when referencing itTomasz Miąsko-1/+1
2020-07-29Explain why inline default ToString implLzu Tao-0/+3
2020-07-28Remove into_slices and its unsafe blockStein Somers-10/+3
2020-07-28Stabilize deque_make_contiguousJon Gjengset-5/+8
Closes #70929.
2020-07-28Remove in-place allocation and revert to separate methods for zeroed allocationsTim Diekmann-85/+103
Fix docs
2020-07-28Don't use "weak count" around Weak::from_raw_ptrMichal 'vorner' Vaner-20/+22
As `Rc/Arc::weak_count` returns 0 when having no strong counts, this could be confusing and it's better to avoid using that completely. Closes #73840.
2020-07-27mv std libs to library/mark-0/+30426