Skip to main content

InProgressListArray

Struct InProgressListArray 

Source
pub(crate) struct InProgressListArray {
    source: Option<ArrayRef>,
    data_type: DataType,
    buffered_arrays: Vec<ArrayRef>,
    sparse_sources: Vec<ArrayRef>,
    sparse_indices: Vec<(usize, usize)>,
    sparse_source_bytes: usize,
    source_data_referenced_in_buffers: bool,
    total_size_of_non_shared_buffers: usize,
}

Fields§

§source: Option<ArrayRef>

The current source for contiguous row copies.

§data_type: DataType

The output array type, either List or LargeList.

§buffered_arrays: Vec<ArrayRef>

Materialized sparse groups and contiguous source slices in output order.

§sparse_sources: Vec<ArrayRef>

Source arrays retained until the next sparse interleave.

§sparse_indices: Vec<(usize, usize)>

Selected (source index, row index) pairs for sparse_sources.

§sparse_source_bytes: usize

Total memory size reported by the retained sparse sources.

§source_data_referenced_in_buffers: bool

Whether buffered slices reference the current source’s data.

§total_size_of_non_shared_buffers: usize

Memory retained by buffered arrays that is not counted by source.

Implementations§

Source§

impl InProgressListArray

Source

pub(crate) fn new(data_type: DataType) -> Self

Source

fn sparse_limit_reached(&self) -> bool

Source

fn flush_sparse(&mut self) -> Result<(), ArrowError>

Trait Implementations§

Source§

impl Debug for InProgressListArray

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl InProgressArray for InProgressListArray

Source§

fn set_source(&mut self, source: Option<ArrayRef>)

Set the source array. Read more
Source§

fn copy_rows(&mut self, offset: usize, len: usize) -> Result<(), ArrowError>

Copy rows from the current source array into the in-progress array Read more
Source§

fn copy_rows_by_filter_from( &mut self, source: ArrayRef, filter: &FilterPredicate, ) -> Result<(), ArrowError>

Copy rows selected by a FilterPredicate from source. Read more
Source§

fn finish(&mut self) -> Result<ArrayRef, ArrowError>

Finish the currently in-progress array and return it as an ArrayRef
Source§

fn size(&self) -> usize

Get the number of bytes this array is using
Source§

fn copy_rows_by_filter( &mut self, filter: &FilterPredicate, ) -> Result<(), ArrowError>

Copy rows selected by filter from the current source array. Read more
Source§

fn copy_rows_by_selection( &mut self, selection: FilterSelection<'_>, ) -> Result<(), ArrowError>

Copy rows described by a FilterSelection from the current source array. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.