Skip to main content

DFHeapSize

Trait DFHeapSize 

Source
pub trait DFHeapSize {
    // Required method
    fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize;
}
Expand description

This is a temporary solution until https://github.com/apache/datafusion/pull/19599 and https://github.com/apache/arrow-rs/pull/9138 are resolved. Trait for calculating the size of various containers

Required Methods§

Source

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Return the size of any bytes allocated on the heap by this object, including heap memory in those structures

Note that the size of the type itself is not included in the result – instead, that size is added by the caller (e.g. container).

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl DFHeapSize for Arc<dyn DFHeapSize>

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for Arc<str>

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for CachedFileMetadata

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for DateTime<Utc>

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for String

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for TableScopedPath

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for bool

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for f16

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for f32

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for f64

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for i8

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for i16

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for i32

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for i64

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for i128

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for str

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for u8

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for u16

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for u32

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for u64

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl DFHeapSize for usize

Source§

fn heap_size(&self, _: &mut DFHeapSizeCtx) -> usize

Source§

impl<A, B> DFHeapSize for (A, B)
where A: DFHeapSize, B: DFHeapSize,

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl<K, V> DFHeapSize for HashMap<K, V>
where K: DFHeapSize, V: DFHeapSize,

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl<T> DFHeapSize for Arc<T>
where T: DFHeapSize,

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl<T> DFHeapSize for Box<T>
where T: DFHeapSize,

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl<T> DFHeapSize for Option<T>
where T: DFHeapSize,

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Source§

impl<T> DFHeapSize for Vec<T>
where T: DFHeapSize,

Source§

fn heap_size(&self, ctx: &mut DFHeapSizeCtx) -> usize

Implementors§