Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make VecDeque::from_iter O(1) from vec(_deque)::IntoIter #105453

Merged
merged 2 commits into from
Dec 10, 2022

Conversation

scottmcm
Copy link
Member

@scottmcm scottmcm commented Dec 8, 2022

As suggested in #105046 (comment) by
r? @the8472

Vec & VecDeque's IntoIters own the allocations, and even if advanced can be turned into VecDeques in O(1).

This is just a specialization, not an API or doc commitment, so I don't think it needs an FCP.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Dec 8, 2022
@rustbot

This comment was marked as resolved.

@the8472
Copy link
Member

the8472 commented Dec 9, 2022

@bors r+

@bors
Copy link
Contributor

bors commented Dec 9, 2022

📌 Commit 6648134 has been approved by the8472

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 9, 2022
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this pull request Dec 9, 2022
…8472

Make `VecDeque::from_iter` O(1) from `vec(_deque)::IntoIter`

As suggested in rust-lang#105046 (comment) by
r? `@the8472`

`Vec` & `VecDeque`'s `IntoIter`s own the allocations, and even if advanced can be turned into `VecDeque`s in O(1).

This is just a specialization, not an API or doc commitment, so I don't think it needs an FCP.
bors added a commit to rust-lang-ci/rust that referenced this pull request Dec 10, 2022
…iaskrgr

Rollup of 9 pull requests

Successful merges:

 - rust-lang#102406 (Make `missing_copy_implementations` more cautious)
 - rust-lang#105265 (Add `rustc_on_unimplemented` to `Sum` and `Product` trait.)
 - rust-lang#105385 (Skip test on s390x as LLD does not support the platform)
 - rust-lang#105453 (Make `VecDeque::from_iter` O(1) from `vec(_deque)::IntoIter`)
 - rust-lang#105468 (Mangle "main" as "__main_void" on wasm32-wasi)
 - rust-lang#105480 (rustdoc: remove no-op mobile CSS `#sidebar-toggle { text-align }`)
 - rust-lang#105489 (Fix typo in apple_base.rs)
 - rust-lang#105504 (rustdoc: make stability badge CSS more consistent)
 - rust-lang#105506 (Tweak `rustc_must_implement_one_of` diagnostic output)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit 5156fbd into rust-lang:master Dec 10, 2022
@rustbot rustbot added this to the 1.68.0 milestone Dec 10, 2022
@scottmcm scottmcm deleted the vecdeque_from_iter branch December 10, 2022 08:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants