Struct arrow_array::array::NullArray
source · pub struct NullArray { /* private fields */ }
Expand description
An array of null values
A NullArray
is a simplified array where all values are null.
§Example: Create an array
use arrow_array::{Array, NullArray};
let array = NullArray::new(10);
assert!(array.is_nullable());
assert_eq!(array.len(), 10);
assert_eq!(array.null_count(), 0);
assert_eq!(array.logical_nulls().unwrap().null_count(), 10);
Implementations§
source§impl NullArray
impl NullArray
sourcepub fn new(length: usize) -> Self
pub fn new(length: usize) -> Self
Create a new NullArray
of the specified length
Note: Use crate::array::new_null_array
if you need an array of some
other DataType
.
sourcepub fn slice(&self, offset: usize, len: usize) -> Self
pub fn slice(&self, offset: usize, len: usize) -> Self
Returns a zero-copy slice of this array with the indicated offset and length.
sourcepub fn builder(capacity: usize) -> NullBuilder
pub fn builder(capacity: usize) -> NullBuilder
Returns a new null array builder
Trait Implementations§
source§impl Array for NullArray
impl Array for NullArray
source§fn slice(&self, offset: usize, length: usize) -> ArrayRef
fn slice(&self, offset: usize, length: usize) -> ArrayRef
Returns a zero-copy slice of this array with the indicated offset and length. Read more
source§fn offset(&self) -> usize
fn offset(&self) -> usize
Returns the offset into the underlying data used by this array(-slice).
Note that the underlying data can be shared by many arrays.
This defaults to
0
. Read moresource§fn nulls(&self) -> Option<&NullBuffer>
fn nulls(&self) -> Option<&NullBuffer>
Returns the null buffer of this array if any. Read more
source§fn logical_nulls(&self) -> Option<NullBuffer>
fn logical_nulls(&self) -> Option<NullBuffer>
Returns a potentially computed
NullBuffer
that represents the logical
null values of this array, if any. Read moresource§fn is_nullable(&self) -> bool
fn is_nullable(&self) -> bool
Returns
false
if the array is guaranteed to not contain any logical nulls Read moresource§fn get_buffer_memory_size(&self) -> usize
fn get_buffer_memory_size(&self) -> usize
Returns the total number of bytes of memory pointed to by this array.
The buffers store bytes in the Arrow memory format, and include the data as well as the validity map.
Note that this does not always correspond to the exact memory usage of an array,
since multiple arrays can share the same buffers or slices thereof.
source§fn get_array_memory_size(&self) -> usize
fn get_array_memory_size(&self) -> usize
Returns the total number of bytes of memory occupied physically by this array.
This value will always be greater than returned by
get_buffer_memory_size()
and
includes the overhead of the data structures that contain the pointers to the various buffers.source§fn null_count(&self) -> usize
fn null_count(&self) -> usize
Returns the total number of physical null values in this array. Read more
Auto Trait Implementations§
impl Freeze for NullArray
impl RefUnwindSafe for NullArray
impl Send for NullArray
impl Sync for NullArray
impl Unpin for NullArray
impl UnwindSafe for NullArray
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)