Open
Description
u32
and other primitive integer types implement a number of bit-manipulation methods like rotate_left
, but Wrapping<_>
does not. At the moment this can be worked around with code like Wrapping(x.0.rotate_left(n))
instead of x.rotate_left(n)
.
It would be nice to implement:
-
count_ones
-
count_zeroes
-
leading_zeroes
-
trailing_zeroes
-
rotate_left
-
rotate_right
-
swap_bytes
-
from_be
(?) -
from_le
(?) -
to_be
-
to_le
-
pow
(?)
Edit: Others added after #32463 (comment)
-
is_power_of_two
(?) -
next_power_of_two
(?) -
min_value
(?) -
max_value
(?) -
from_str_radix
(?) -
reverse_bits
-
abs
Add missing Wrapping methods, use doc_comment! #49393Add missing Wrapping methods, use doc_comment! #50465 -
signum
Add missing Wrapping methods, use doc_comment! #49393Add missing Wrapping methods, use doc_comment! #50465 -
is_positive
Add missing Wrapping methods, use doc_comment! #49393Add missing Wrapping methods, use doc_comment! #50465 -
is_negative
Add missing Wrapping methods, use doc_comment! #49393Add missing Wrapping methods, use doc_comment! #50465
and maybe other methods, for:
Wrapping<u8>
Wrapping<u16>
Wrapping<u32>
Wrapping<u64>
Wrapping<usize>
Wrapping<i8>
Wrapping<i16>
Wrapping<i32>
Wrapping<i64>
Wrapping<isize>
Edit: From #50465
- Decide on correct behavior for
wrapping_next_power_of_two
Metadata
Metadata
Assignees
Labels
Blocker: Implemented in the nightly compiler and unstable.Category: An issue tracking the progress of sth. like the implementation of an RFCLibs issues that are considered "small" or self-containedLibs issues that are tracked on the team's project board.Relevant to the library API team, which will review and decide on the PR/issue.