rust/library/coretests/tests/num
Matthias Krüger 1df3a35bca
Rollup merge of #136910 - okaneco:sig_ones, r=thomcc
Implement feature `isolate_most_least_significant_one` for integer types

Accepted ACP - https://github.com/rust-lang/libs-team/issues/467
Tracking issue - #136909

Implement ACP for functions that isolate the most significant set bit and least significant set bit on unsigned, signed, and `NonZero` integers.

Add function `isolate_most_significant_one`
Add function `isolate_least_significant_one`

---

This PR adds the following impls
```rust
impl {u8, u16, u32, u64, u128, usize} {
    const fn isolate_most_significant_one(self) -> Self;
    const fn isolate_least_significant_one(self) -> Self;
}
impl {i8, i16, i32, i64, i128, isize} {
    const fn isolate_most_significant_one(self) -> Self;
    const fn isolate_least_significant_one(self) -> Self;
}
impl NonZeroT {
    const fn isolate_most_significant_one(self) -> Self;
    const fn isolate_least_significant_one(self) -> Self;
}
```
Example behavior
```rust
assert_eq!(u8::isolate_most_significant_one(0b01100100), 0b01000000);
assert_eq!(u8::isolate_least_significant_one(0b01100100), 0b00000100);
```
2025-02-22 11:36:42 +01:00
..
dec2flt Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
flt2dec library: Update rand to 0.9.0 2025-02-13 12:20:55 -08:00
bignum.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
const_from.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
float_iter_sum_identity.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
i8.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
i16.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
i32.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
i64.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
i128.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
ieee754.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
int_log.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
int_macros.rs Implement feature isolate_most_least_significant_one for integer types 2025-02-20 05:19:06 -05:00
int_sqrt.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
midpoint.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
mod.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
nan.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
ops.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
u8.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
u16.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
u32.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
u64.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
u128.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00
uint_macros.rs Implement feature isolate_most_least_significant_one for integer types 2025-02-20 05:19:06 -05:00
wrapping.rs Put all coretests in a separate crate 2025-01-26 10:26:36 +00:00