[PATCH v2 17/21] rust: num: Add an upward alignment helper for usize
Joel Fernandes
joelagnelf at nvidia.com
Thu May 1 15:22:22 UTC 2025
On 5/1/2025 11:19 AM, Timur Tabi wrote:
> On Thu, 2025-05-01 at 21:58 +0900, Alexandre Courbot wrote:
>
>
>> +impl UsizeAlign for usize {
>> + fn align_up(mut self, align: usize) -> usize {
>> + self = (self + align - 1) & !(align - 1);
>> + self
>> + }
>> +}
>> +
>> +/// Aligns `val` upwards to the nearest multiple of `align`.
>> +pub const fn usize_align_up(val: usize, align: usize) -> usize {
>> + (val + align - 1) & !(align - 1)
>> +}
>
> Why not have usize_align_up() just return "val.align_up(align)"?
>
> But why why two versions at all? Is there any context where you could use one
> and not the other?
>
I can't remember now but when I tried that, I got compiler errors (because val
is immutable?).
Also not mutating it like that matches the pattern in the rest of this file so
I'd leave it as-is.
Thanks.
More information about the dri-devel
mailing list