Trait malloc_size_of::MallocSizeOf
source · pub trait MallocSizeOf {
// Required method
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize;
}
Expand description
Trait for measuring the “deep” heap usage of a data structure. This is the most commonly-used of the traits.
Required Methods§
sourcefn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but not the space taken up by the value itself.
Implementations on Foreign Types§
source§impl MallocSizeOf for i128
impl MallocSizeOf for i128
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl<T: MallocSizeOf + ?Sized> MallocSizeOf for Box<T>
impl<T: MallocSizeOf + ?Sized> MallocSizeOf for Box<T>
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for u128
impl MallocSizeOf for u128
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for Modifiers
impl MallocSizeOf for Modifiers
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for Range<i8>
impl MallocSizeOf for Range<i8>
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for Uuid
impl MallocSizeOf for Uuid
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl<T: MallocSizeOf> MallocSizeOf for Vec<T>
impl<T: MallocSizeOf> MallocSizeOf for Vec<T>
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl<A> MallocSizeOf for SmallVec<A>where
A: Array,
A::Item: MallocSizeOf,
impl<A> MallocSizeOf for SmallVec<A>where A: Array, A::Item: MallocSizeOf,
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for ExtendMode
impl MallocSizeOf for ExtendMode
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for i32
impl MallocSizeOf for i32
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for ByteBuf
impl MallocSizeOf for ByteBuf
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl<T, S> MallocSizeOf for IndexSet<T, S>where
T: Eq + Hash + MallocSizeOf,
S: BuildHasher,
impl<T, S> MallocSizeOf for IndexSet<T, S>where T: Eq + Hash + MallocSizeOf, S: BuildHasher,
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl<T: MallocSizeOf> MallocSizeOf for Option<T>
impl<T: MallocSizeOf> MallocSizeOf for Option<T>
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for Au
impl MallocSizeOf for Au
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for char
impl MallocSizeOf for char
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for ()
impl MallocSizeOf for ()
fn size_of(&self, _ops: &mut MallocSizeOfOps) -> usize
source§impl<T: MallocSizeOf, U> MallocSizeOf for Vector2D<T, U>
impl<T: MallocSizeOf, U> MallocSizeOf for Vector2D<T, U>
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl<T: MallocSizeOf> MallocSizeOf for ThinVec<T>
impl<T: MallocSizeOf> MallocSizeOf for ThinVec<T>
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for Range<u16>
impl MallocSizeOf for Range<u16>
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for ImageKey
impl MallocSizeOf for ImageKey
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for Void
impl MallocSizeOf for Void
fn size_of(&self, _ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for FontInstanceKey
impl MallocSizeOf for FontInstanceKey
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl<K, V> MallocSizeOf for BTreeMap<K, V>where
K: Eq + Hash + MallocSizeOf,
V: MallocSizeOf,
impl<K, V> MallocSizeOf for BTreeMap<K, V>where K: Eq + Hash + MallocSizeOf, V: MallocSizeOf,
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for SmallBitVec
impl MallocSizeOf for SmallBitVec
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for Range<f32>
impl MallocSizeOf for Range<f32>
fn size_of(&self, _: &mut MallocSizeOfOps) -> usize
source§impl<'a, B: ?Sized + ToOwned> MallocSizeOf for Cow<'a, B>where
B::Owned: MallocSizeOf,
impl<'a, B: ?Sized + ToOwned> MallocSizeOf for Cow<'a, B>where B::Owned: MallocSizeOf,
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl<Impl: SelectorImpl> MallocSizeOf for Component<Impl>where
Impl::NonTSPseudoClass: MallocSizeOf,
Impl::PseudoElement: MallocSizeOf,
impl<Impl: SelectorImpl> MallocSizeOf for Component<Impl>where Impl::NonTSPseudoClass: MallocSizeOf, Impl::PseudoElement: MallocSizeOf,
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl MallocSizeOf for QualName
impl MallocSizeOf for QualName
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl<K, V, S> MallocSizeOf for HashMap<K, V, S>where
K: Eq + Hash + MallocSizeOf,
V: MallocSizeOf,
S: BuildHasher,
impl<K, V, S> MallocSizeOf for HashMap<K, V, S>where K: Eq + Hash + MallocSizeOf, V: MallocSizeOf, S: BuildHasher,
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
source§impl<T: MallocSizeOf> MallocSizeOf for Mutex<T>
impl<T: MallocSizeOf> MallocSizeOf for Mutex<T>
If a mutex is stored directly as a member of a data type that is being measured, it is the unique owner of its contents and deserves to be measured.
If a mutex is stored inside of an Arc value as a member of a data type that is being measured, the Arc will not be automatically measured so there is no risk of overcounting the mutex’s contents.