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 DataType

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 Field

Source§

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

Source§

impl DFHeapSize for Fields

Source§

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

Source§

impl DFHeapSize for FixedSizeListArray

Source§

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

Source§

impl DFHeapSize for IntervalDayTime

Source§

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

Source§

impl DFHeapSize for IntervalMonthDayNano

Source§

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

Source§

impl DFHeapSize for IntervalUnit

Source§

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

Source§

impl DFHeapSize for LargeListArray

Source§

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

Source§

impl DFHeapSize for LargeListViewArray

Source§

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

Source§

impl DFHeapSize for ListArray

Source§

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

Source§

impl DFHeapSize for ListViewArray

Source§

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

Source§

impl DFHeapSize for MapArray

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 StructArray

Source§

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

Source§

impl DFHeapSize for TimeUnit

Source§

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

Source§

impl DFHeapSize for UnionFields

Source§

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

Source§

impl DFHeapSize for UnionMode

Source§

fn heap_size(&self, _: &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 i256

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: DFHeapSize, V: DFHeapSize> DFHeapSize for HashMap<K, V>

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Implementors§