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

Specialize fold implementation of iterators #480

Merged
merged 5 commits into from Nov 23, 2023
Merged

Conversation

a1phyr
Copy link
Contributor

@a1phyr a1phyr commented Nov 6, 2023

This provides 5-8% iteration speedups when using internal iteration.
Similar work could probably be done with try_fold but this requires nightly to implement.

Maybe this is worth running a rustc perf run with this before merge ?

This provides 5-8% iteration speedups
src/raw/mod.rs Outdated Show resolved Hide resolved
src/raw/mod.rs Outdated Show resolved Hide resolved
src/raw/mod.rs Show resolved Hide resolved
src/raw/mod.rs Outdated Show resolved Hide resolved
src/table.rs Outdated Show resolved Hide resolved
src/table.rs Outdated Show resolved Hide resolved
bors added a commit to rust-lang-ci/rust that referenced this pull request Nov 9, 2023
`HashMap`/`HashSet`: forward `fold` implementations of iterators

Use [rust-lang/hasbrown#480](rust-lang/hashbrown#480) in `std`
src/raw/mod.rs Outdated Show resolved Hide resolved
src/raw/mod.rs Outdated Show resolved Hide resolved
@Amanieu
Copy link
Member

Amanieu commented Nov 23, 2023

@bors r+

@bors
Copy link
Collaborator

bors commented Nov 23, 2023

📌 Commit 798ba9f has been approved by Amanieu

It is now in the queue for this repository.

@bors
Copy link
Collaborator

bors commented Nov 23, 2023

⌛ Testing commit 798ba9f with merge 291465a...

@bors
Copy link
Collaborator

bors commented Nov 23, 2023

☀️ Test successful - checks-actions
Approved by: Amanieu
Pushing 291465a to master...

@bors bors merged commit 291465a into rust-lang:master Nov 23, 2023
26 checks passed
bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 20, 2024
`HashMap`/`HashSet`: forward `fold` implementations of iterators

Use [rust-lang/hasbrown#480](rust-lang/hashbrown#480) in `std`

Note: this needs a version bump of hashbrown before merging
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Jan 21, 2024
`HashMap`/`HashSet`: forward `fold` implementations of iterators

Use [rust-lang/hasbrown#480](rust-lang/hashbrown#480) in `std`

Note: this needs a version bump of hashbrown before merging
lnicola pushed a commit to lnicola/rust-analyzer that referenced this pull request Apr 7, 2024
`HashMap`/`HashSet`: forward `fold` implementations of iterators

Use [rust-lang/hasbrown#480](rust-lang/hashbrown#480) in `std`

Note: this needs a version bump of hashbrown before merging
RalfJung pushed a commit to RalfJung/rust-analyzer that referenced this pull request Apr 27, 2024
`HashMap`/`HashSet`: forward `fold` implementations of iterators

Use [rust-lang/hasbrown#480](rust-lang/hashbrown#480) in `std`

Note: this needs a version bump of hashbrown before merging
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants