/// Given a size in bytes, return the size in bytes of the naturally-aligned
/// structure required to cover the size.
///
/// This is the smallest power of two that is equal to or higher than the input
/// size.
Given a size in bytes, return the size in bytes of the naturally-aligned
structure required to cover the size.

This is the smallest power of two that is equal to or higher than the input
size.
Given a size in bytes return the size in bytes of the naturally - aligned structure required to cover the size . This is the smallest power of two that is equal to or higher than the input size .
pub fn size_fit_natural(size: u64) -> u64 {
    use std::num::Wrapping;
    let mut v = Wrapping(size);
    v -= Wrapping(1);
    v |= v >> 1;
    v |= v >> 2;
    v |= v >> 4;
    v |= v >> 8;
    v |= v >> 16;
    v |= v >> 32;
    v += Wrapping(1);
    v.0
}
pub fn size_fit_natural ( size : u64 ) -> u64 { use std :: num :: Wrapping ; let mut v = Wrapping ( size ) ; v -= Wrapping ( 1 ) ; v |= v >> 1 ; v |= v >> 2 ; v |= v >> 4 ; v |= v >> 8 ; v |= v >> 16 ; v |= v >> 32 ; v += Wrapping ( 1 ) ; v . 0 }
Given a size in bytes, return the size in bytes of the naturally-aligned
structure required to cover the size.
Given a size in bytes return the size in bytes of the naturally - aligned structure required to cover the size .
size
u64