[][src]Struct wr_malloc_size_of::MallocSizeOfOps

pub struct MallocSizeOfOps {
    pub size_of_op: unsafe extern "C" fn(ptr: *const c_void) -> usize,
    pub enclosing_size_of_op: Option<unsafe extern "C" fn(ptr: *const c_void) -> usize>,
}

Operations used when measuring heap usage of data structures.

Fields

size_of_op: unsafe extern "C" fn(ptr: *const c_void) -> usize

A function that returns the size of a heap allocation.

enclosing_size_of_op: Option<unsafe extern "C" fn(ptr: *const c_void) -> usize>

Like size_of_op, but can take an interior pointer. Optional because not all allocators support this operation. If it's not provided, some memory measurements will actually be computed estimates rather than real and accurate measurements.

Methods

impl MallocSizeOfOps[src]

pub fn new(
    size_of: unsafe extern "C" fn(ptr: *const c_void) -> usize,
    malloc_enclosing_size_of: Option<unsafe extern "C" fn(ptr: *const c_void) -> usize>
) -> Self
[src]

pub unsafe fn malloc_size_of<T: ?Sized>(&self, ptr: *const T) -> usize[src]

Call size_of_op on ptr, first checking that the allocation isn't empty, because some types (such as Vec) utilize empty allocations.

pub fn has_malloc_enclosing_size_of(&self) -> bool[src]

Is an enclosing_size_of_op available?

pub unsafe fn malloc_enclosing_size_of<T>(&self, ptr: *const T) -> usize[src]

Call enclosing_size_of_op, which must be available, on ptr, which must not be empty.

Auto Trait Implementations

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.