pub(crate) struct ArrayLevels {
def_levels: Option<Vec<i16>>,
rep_levels: Option<Vec<i16>>,
non_null_indices: Vec<usize>,
max_def_level: i16,
max_rep_level: i16,
array: ArrayRef,
}
Expand description
The data necessary to write a primitive Arrow array to parquet, taking into account any non-primitive parents it may have in the arrow representation
Fields§
§def_levels: Option<Vec<i16>>
Array’s definition levels
Present if max_def_level != 0
rep_levels: Option<Vec<i16>>
Array’s optional repetition levels
Present if max_rep_level != 0
non_null_indices: Vec<usize>
The corresponding array identifying non-null slices of data from the primitive array
max_def_level: i16
The maximum definition level for this leaf column
max_rep_level: i16
The maximum repetition for this leaf column
array: ArrayRef
The arrow array
Implementations§
Source§impl ArrayLevels
impl ArrayLevels
fn new(ctx: LevelContext, is_nullable: bool, array: ArrayRef) -> Self
pub fn array(&self) -> &ArrayRef
pub fn def_levels(&self) -> Option<&[i16]>
pub fn rep_levels(&self) -> Option<&[i16]>
pub fn non_null_indices(&self) -> &[usize]
Trait Implementations§
Source§impl Clone for ArrayLevels
impl Clone for ArrayLevels
Source§fn clone(&self) -> ArrayLevels
fn clone(&self) -> ArrayLevels
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ArrayLevels
impl Debug for ArrayLevels
Source§impl PartialEq for ArrayLevels
impl PartialEq for ArrayLevels
impl Eq for ArrayLevels
Auto Trait Implementations§
impl Freeze for ArrayLevels
impl !RefUnwindSafe for ArrayLevels
impl Send for ArrayLevels
impl Sync for ArrayLevels
impl Unpin for ArrayLevels
impl !UnwindSafe for ArrayLevels
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more