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

BTree: add drain methods #81075

Closed
wants to merge 2 commits into from
Closed

Conversation

ssomers
Copy link
Contributor

@ssomers ssomers commented Jan 16, 2021

Implements #81074.
Builds on #93989.

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jan 16, 2021
@Mark-Simulacrum
Copy link
Member

Is there a chance we can split this up into more commits? Reviewing a diff in a couple thousand lines is going to be quite challenging. It would be good to document any design decisions or otherwise guide my review, too.

@Mark-Simulacrum Mark-Simulacrum added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 16, 2021
@ssomers
Copy link
Contributor Author

ssomers commented Jan 16, 2021

I can split off a few refactorings of existing functions, to open up for new use, but they seemed a bit pointless on their own (apart from one thing that I actually postponed).

@Mark-Simulacrum
Copy link
Member

I don't really know what you postponed, but I will likely not be able to effectively review this diff without at least some guidance as to where to start or the overall vision in adding these methods.

@ssomers
Copy link
Contributor Author

ssomers commented Jan 16, 2021

The item I postponed is that steal_X functions (apart from their return value) are basically a hand-written optimization of the generic bulk_steal_X functions for count=1 (in reality, it went the other way around of course). It comes up here because one of the functions needed for drain is identical to handle_shrunk_node_recursively apart from that alleged optimization.

@ssomers
Copy link
Contributor Author

ssomers commented Jan 16, 2021

The overall vision in adding these methods is to not copy any existing functionality, but break it up in order to reuse parts. I'll feed those refactings in a few separate PRs now.

@bors
Copy link
Contributor

bors commented Jan 17, 2021

☔ The latest upstream changes (presumably #81083) made this pull request unmergeable. Please resolve the merge conflicts.

@bors
Copy link
Contributor

bors commented Jan 19, 2021

☔ The latest upstream changes (presumably #81169) made this pull request unmergeable. Please resolve the merge conflicts.

@bors
Copy link
Contributor

bors commented Jan 29, 2021

☔ The latest upstream changes (presumably #81073) made this pull request unmergeable. Please resolve the merge conflicts.

@bors
Copy link
Contributor

bors commented Feb 9, 2021

☔ The latest upstream changes (presumably #81361) made this pull request unmergeable. Please resolve the merge conflicts.

@ssomers ssomers force-pushed the btree_drain branch 2 times, most recently from ad80c11 to 24ec3f4 Compare February 10, 2021 14:38
@bors
Copy link
Contributor

bors commented Feb 13, 2021

☔ The latest upstream changes (presumably #81494) made this pull request unmergeable. Please resolve the merge conflicts.

@bors
Copy link
Contributor

bors commented Feb 15, 2021

☔ The latest upstream changes (presumably #82103) made this pull request unmergeable. Please resolve the merge conflicts.

@ssomers ssomers changed the title BTree: add remove_range and split_off_range methods BTree: add split_off_range methods Jan 7, 2022
@JohnCSimon JohnCSimon added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 6, 2022
@ssomers ssomers force-pushed the btree_drain branch 2 times, most recently from ff3cab4 to dc86553 Compare February 14, 2022 12:08
@ssomers ssomers changed the title BTree: add split_off_range methods BTree: add drain methods Feb 14, 2022
@bors
Copy link
Contributor

bors commented Feb 25, 2022

☔ The latest upstream changes (presumably #94350) made this pull request unmergeable. Please resolve the merge conflicts.

@JohnCSimon JohnCSimon added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 20, 2022
@Dylan-DPC
Copy link
Member

r? @yaahc

@rust-highfive rust-highfive assigned yaahc and unassigned m-ou-se Mar 26, 2022
@JohnCSimon JohnCSimon added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 24, 2022
@yaahc
Copy link
Member

yaahc commented Apr 29, 2022

r? rust-lang/libs-api

@rust-highfive rust-highfive assigned joshtriplett and unassigned yaahc Apr 29, 2022
@joshtriplett
Copy link
Member

r? rust-lang/libs-api

@rust-highfive rust-highfive assigned dtolnay and unassigned joshtriplett May 1, 2022
@bors
Copy link
Contributor

bors commented Jun 16, 2022

☔ The latest upstream changes (presumably #98103) made this pull request unmergeable. Please resolve the merge conflicts.

@ssomers ssomers closed this Jun 18, 2022
@kekeimiku

This comment was marked as spam.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.