-
Couldn't load subscription status.
- Fork 13.9k
Add NonZero*::count_ones
#118326
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
Add NonZero*::count_ones
#118326
Conversation
|
☔ The latest upstream changes (presumably #120121) made this pull request unmergeable. Please resolve the merge conflicts. |
b57d721 to
e94d9a3
Compare
e94d9a3 to
0b1d7ff
Compare
|
r? @scottmcm |
|
I think this is entirely reasonable for nightly, since it fits the existing methods that are also there when they have a way to take advantage of the non-zeroness, whether for perf or for reduced @bors r+ rollup |
…tmcm
Add `NonZero*::count_ones`
This PR adds the following APIs to the standard library:
```rust
impl NonZero* {
pub const fn count_ones(self) -> NonZeroU32;
}
```
This is potentially interesting, given that `count_ones` can't ever return 0.
r? libs-api
Rollup of 10 pull requests Successful merges: - rust-lang#114764 ([style edition 2024] Combine all delimited exprs as last argument) - rust-lang#118326 (Add `NonZero*::count_ones`) - rust-lang#118636 (Add the unstable option to reduce the binary size of dynamic library…) - rust-lang#119460 (coverage: Never emit improperly-ordered coverage regions) - rust-lang#119616 (Add a new `wasm32-wasi-preview2` target) - rust-lang#120185 (coverage: Don't instrument `#[automatically_derived]` functions) - rust-lang#120265 (Remove no-system-llvm) - rust-lang#120284 (privacy: Refactor top-level visiting in `TypePrivacyVisitor`) - rust-lang#120285 (Remove extra # from url in suggestion) - rust-lang#120299 (Add mw to review rotation and add some owner assignments) Failed merges: - rust-lang#120124 (Split assembly tests for ELF and MachO) r? `@ghost` `@rustbot` modify labels: rollup
Rollup of 9 pull requests Successful merges: - rust-lang#114764 ([style edition 2024] Combine all delimited exprs as last argument) - rust-lang#118326 (Add `NonZero*::count_ones`) - rust-lang#119460 (coverage: Never emit improperly-ordered coverage regions) - rust-lang#119616 (Add a new `wasm32-wasi-preview2` target) - rust-lang#120185 (coverage: Don't instrument `#[automatically_derived]` functions) - rust-lang#120265 (Remove no-system-llvm) - rust-lang#120284 (privacy: Refactor top-level visiting in `TypePrivacyVisitor`) - rust-lang#120285 (Remove extra # from url in suggestion) - rust-lang#120299 (Add mw to review rotation and add some owner assignments) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#118326 - WaffleLapkin:nz_count_ones, r=scottmcm Add `NonZero*::count_ones` This PR adds the following APIs to the standard library: ```rust impl NonZero* { pub const fn count_ones(self) -> NonZeroU32; } ``` This is potentially interesting, given that `count_ones` can't ever return 0. r? libs-api
This PR adds the following APIs to the standard library:
This is potentially interesting, given that
count_onescan't ever return 0.r? libs-api