/// Adjust the given layout so that the resulting allocated memory
/// region is also capable of storing a `ListNode`.
///
/// Returns the adjusted size and alignment as a (size, align) tuple.
Adjust the given layout so that the resulting allocated memory
region is also capable of storing a `ListNode`.

Returns the adjusted size and alignment as a (size, align) tuple.
Adjust the given layout so that the resulting allocated memory region is also capable of storing a ` ListNode ` . Returns the adjusted size and alignment as a ( size align ) tuple .
fn size_align(layout: Layout) -> (usize, usize) {
        let layout = layout.align_to(mem::align_of::<ListNode>())
            .expect("[LinkedListAllocator.size_align] adjusting alignment failed")
            .pad_to_align();
        let size = layout.size().max(mem::size_of::<ListNode>());
        (size, layout.align())
    }
fn size_align ( layout : Layout ) -> ( usize , usize ) { let layout = layout . align_to ( mem :: align_of :: < ListNode > ( ) ) . expect ( " " ) . pad_to_align ( ) ; let size = layout . size ( ) . max ( mem :: size_of :: < ListNode > ( ) ) ; ( size , layout . align ( ) ) }
Adjust the given layout so that the resulting allocated memory
region is also capable of storing a `ListNode`.
Adjust the given layout so that the resulting allocated memory region is also capable of storing a ` ListNode ` .
layout
Layout