Struct arrow::array::GenericListArray
source · pub struct GenericListArray<OffsetSize> { /* private fields */ }
Expand description
Generic struct for a variable-size list array.
Columnar format in Apache Arrow: https://arrow.apache.org/docs/format/Columnar.html#variable-size-list-layout
For non generic lists, you may wish to consider using ListArray
or LargeListArray
`
Implementations§
source§impl<OffsetSize> GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
sourcepub const DATA_TYPE_CONSTRUCTOR: fn(_: Box<Field, Global>) -> DataType =
pub const DATA_TYPE_CONSTRUCTOR: fn(_: Box<Field, Global>) -> DataType =
The data type constructor of list array.
The input is the schema of the child array and
the output is the DataType
, List or LargeList.
sourcepub fn values(&self) -> &Arc<dyn Array + 'static>
pub fn values(&self) -> &Arc<dyn Array + 'static>
Returns a reference to the values of this list.
sourcepub fn value_type(&self) -> DataType
pub fn value_type(&self) -> DataType
Returns a clone of the value type of this list.
sourcepub unsafe fn value_unchecked(&self, i: usize) -> Arc<dyn Array + 'static>
pub unsafe fn value_unchecked(&self, i: usize) -> Arc<dyn Array + 'static>
Returns ith value of this list array.
Safety
Caller must ensure that the index is within the array bounds
sourcepub fn value(&self, i: usize) -> Arc<dyn Array + 'static>
pub fn value(&self, i: usize) -> Arc<dyn Array + 'static>
Returns ith value of this list array.
sourcepub fn value_offsets(&self) -> &[OffsetSize] ⓘ
pub fn value_offsets(&self) -> &[OffsetSize] ⓘ
Returns the offset values in the offsets buffer
sourcepub fn value_length(&self, i: usize) -> OffsetSize
pub fn value_length(&self, i: usize) -> OffsetSize
Returns the length for value at index i
.
sourcepub fn iter<'a>(&'a self) -> ArrayIter<&'a GenericListArray<OffsetSize>> ⓘ
pub fn iter<'a>(&'a self) -> ArrayIter<&'a GenericListArray<OffsetSize>> ⓘ
constructs a new iterator
sourcepub fn from_iter_primitive<T, P, I>(iter: I) -> GenericListArray<OffsetSize>where
T: ArrowPrimitiveType,
P: IntoIterator<Item = Option<<T as ArrowPrimitiveType>::Native>>,
I: IntoIterator<Item = Option<P>>,
pub fn from_iter_primitive<T, P, I>(iter: I) -> GenericListArray<OffsetSize>where
T: ArrowPrimitiveType,
P: IntoIterator<Item = Option<<T as ArrowPrimitiveType>::Native>>,
I: IntoIterator<Item = Option<P>>,
Creates a GenericListArray
from an iterator of primitive values
Example
let data = vec![
Some(vec![Some(0), Some(1), Some(2)]),
None,
Some(vec![Some(3), None, Some(5)]),
Some(vec![Some(6), Some(7)]),
];
let list_array = ListArray::from_iter_primitive::<Int32Type, _, _>(data);
println!("{:?}", list_array);
Trait Implementations§
source§impl<OffsetSize> Array for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> Array for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
source§fn data_ref(&self) -> &ArrayData
fn data_ref(&self) -> &ArrayData
source§fn slice(&self, offset: usize, length: usize) -> Arc<dyn Array + 'static>
fn slice(&self, offset: usize, length: usize) -> Arc<dyn Array + 'static>
source§fn offset(&self) -> usize
fn offset(&self) -> usize
0
. Read moresource§fn is_null(&self, index: usize) -> bool
fn is_null(&self, index: usize) -> bool
index
is null.
When using this function on a slice, the index is relative to the slice. Read moresource§fn is_valid(&self, index: usize) -> bool
fn is_valid(&self, index: usize) -> bool
index
is not null.
When using this function on a slice, the index is relative to the slice. Read moresource§fn null_count(&self) -> usize
fn null_count(&self) -> usize
source§fn get_buffer_memory_size(&self) -> usize
fn get_buffer_memory_size(&self) -> usize
source§fn get_array_memory_size(&self) -> usize
fn get_array_memory_size(&self) -> usize
get_buffer_memory_size()
and
includes the overhead of the data structures that contain the pointers to the various buffers.source§impl<'a, OffsetSize> ArrayAccessor for &'a GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
impl<'a, OffsetSize> ArrayAccessor for &'a GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
source§fn value(
&self,
index: usize
) -> <&'a GenericListArray<OffsetSize> as ArrayAccessor>::Item
fn value(
&self,
index: usize
) -> <&'a GenericListArray<OffsetSize> as ArrayAccessor>::Item
i
Read moresource§unsafe fn value_unchecked(
&self,
index: usize
) -> <&'a GenericListArray<OffsetSize> as ArrayAccessor>::Item
unsafe fn value_unchecked(
&self,
index: usize
) -> <&'a GenericListArray<OffsetSize> as ArrayAccessor>::Item
i
Read moresource§impl<OffsetSize> Clone for GenericListArray<OffsetSize>
impl<OffsetSize> Clone for GenericListArray<OffsetSize>
source§fn clone(&self) -> GenericListArray<OffsetSize>
fn clone(&self) -> GenericListArray<OffsetSize>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<OffsetSize> Debug for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> Debug for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
source§impl<OffsetSize> From<ArrayData> for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<ArrayData> for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
source§fn from(data: ArrayData) -> GenericListArray<OffsetSize>
fn from(data: ArrayData) -> GenericListArray<OffsetSize>
source§impl<OffsetSize> From<GenericListArray<OffsetSize>> for ArrayDatawhere
OffsetSize: 'static + OffsetSizeTrait,
impl<OffsetSize> From<GenericListArray<OffsetSize>> for ArrayDatawhere
OffsetSize: 'static + OffsetSizeTrait,
source§fn from(array: GenericListArray<OffsetSize>) -> ArrayData
fn from(array: GenericListArray<OffsetSize>) -> ArrayData
source§impl<OffsetSize> From<GenericListArray<OffsetSize>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<GenericListArray<OffsetSize>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
source§fn from(
v: GenericListArray<OffsetSize>
) -> GenericByteArray<GenericStringType<OffsetSize>>
fn from(
v: GenericListArray<OffsetSize>
) -> GenericByteArray<GenericStringType<OffsetSize>>
source§impl<T> From<GenericListArray<T>> for GenericByteArray<GenericBinaryType<T>>where
T: OffsetSizeTrait,
impl<T> From<GenericListArray<T>> for GenericByteArray<GenericBinaryType<T>>where
T: OffsetSizeTrait,
source§fn from(v: GenericListArray<T>) -> GenericByteArray<GenericBinaryType<T>>
fn from(v: GenericListArray<T>) -> GenericByteArray<GenericBinaryType<T>>
source§impl<OffsetSize> PartialEq<GenericListArray<OffsetSize>> for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> PartialEq<GenericListArray<OffsetSize>> for GenericListArray<OffsetSize>where
OffsetSize: OffsetSizeTrait,
source§fn eq(&self, other: &GenericListArray<OffsetSize>) -> bool
fn eq(&self, other: &GenericListArray<OffsetSize>) -> bool
self
and other
values to be equal, and is used
by ==
.