[][src]Trait context_allocator::extensions::NonNullU8Ext

pub trait NonNullU8Ext: Sized + Copy + Ord + Debug {
    fn round_up_to_power_of_two(
        self,
        non_zero_power_of_two_alignment: NonZeroUsize
    ) -> Self { ... }
fn add(self, increment: usize) -> Self { ... }
fn add_non_zero(self, increment: NonZeroUsize) -> Self { ... }
fn checked_add(self, increment: usize) -> Option<Self> { ... }
fn add_assign(&mut self, increment: usize) { ... }
fn add_assign_non_zero(&mut self, increment: NonZeroUsize) { ... }
fn subtract(self, decrement: usize) -> Self { ... }
fn subtract_non_zero(self, decrement: NonZeroUsize) -> Self { ... }
fn difference(self, other: Self) -> usize { ... }
fn difference_u32(self, other: Self) -> u32 { ... }
fn difference_u32_non_zero(self, other: Self) -> NonZeroU32 { ... }
fn read<V: Copy>(self) -> V { ... }
fn read_u64(self) -> u64 { ... }
fn write<V: Copy>(self, value: V) { ... }
fn write_and_advance<V: Copy>(&mut self, value: V) { ... }
fn is_aligned_to(
        self,
        non_zero_power_of_two_alignment: NonZeroUsize
    ) -> bool { ... } }

Extensions to make working with NonNull easier.

Provided methods

fn round_up_to_power_of_two(
    self,
    non_zero_power_of_two_alignment: NonZeroUsize
) -> Self

Round up to power of two.

fn add(self, increment: usize) -> Self

Add.

fn add_non_zero(self, increment: NonZeroUsize) -> Self

Add.

fn checked_add(self, increment: usize) -> Option<Self>

Add.

fn add_assign(&mut self, increment: usize)

Add.

fn add_assign_non_zero(&mut self, increment: NonZeroUsize)

Add.

fn subtract(self, decrement: usize) -> Self

Subtract.

fn subtract_non_zero(self, decrement: NonZeroUsize) -> Self

Subtract.

fn difference(self, other: Self) -> usize

Difference.

fn difference_u32(self, other: Self) -> u32

Difference.

fn difference_u32_non_zero(self, other: Self) -> NonZeroU32

Difference.

fn read<V: Copy>(self) -> V

Read.

fn read_u64(self) -> u64

Read.

fn write<V: Copy>(self, value: V)

Write.

fn write_and_advance<V: Copy>(&mut self, value: V)

Write and advance.

fn is_aligned_to(self, non_zero_power_of_two_alignment: NonZeroUsize) -> bool

Is aligned to.

Loading content...

Implementors

impl NonNullU8Ext for MemoryAddress[src]

fn round_up_to_power_of_two(
    self,
    non_zero_power_of_two_alignment: NonZeroUsize
) -> Self
[src]

fn add(self, increment: usize) -> Self[src]

fn add_non_zero(self, increment: NonZeroUsize) -> Self[src]

fn checked_add(self, increment: usize) -> Option<Self>[src]

fn add_assign(&mut self, increment: usize)[src]

fn add_assign_non_zero(&mut self, increment: NonZeroUsize)[src]

fn subtract(self, decrement: usize) -> Self[src]

fn subtract_non_zero(self, decrement: NonZeroUsize) -> Self[src]

fn difference(self, other: Self) -> usize[src]

fn difference_u32(self, other: Self) -> u32[src]

fn difference_u32_non_zero(self, other: Self) -> NonZeroU32[src]

fn read<V: Copy>(self) -> V[src]

fn read_u64(self) -> u64[src]

fn write<V: Copy>(self, value: V)[src]

fn write_and_advance<V: Copy>(&mut self, value: V)[src]

fn is_aligned_to(self, non_zero_power_of_two_alignment: NonZeroUsize) -> bool[src]

Loading content...