Trait ArrayImpl

Source
pub trait ArrayImpl:
    'static
    + Send
    + Sync
    + Debug
    + Clone
    + ArrayCanonicalImpl
    + ArrayComputeImpl
    + ArrayStatisticsImpl
    + ArrayValidityImpl
    + ArrayVariantsImpl
    + ArrayVisitorImpl<<Self::Encoding as Encoding>::Metadata> {
    type Encoding: Encoding;

    // Required methods
    fn _len(&self) -> usize;
    fn _dtype(&self) -> &DType;
    fn _vtable(&self) -> VTableRef;
    fn _with_children(&self, children: &[ArrayRef]) -> VortexResult<Self>;
}
Expand description

A trait used to encapsulate common implementation behaviour for a Vortex Array.

Required Associated Types§

Required Methods§

Source

fn _len(&self) -> usize

Source

fn _dtype(&self) -> &DType

Source

fn _vtable(&self) -> VTableRef

Source

fn _with_children(&self, children: &[ArrayRef]) -> VortexResult<Self>

Replace the children of this array with the given arrays.

§Pre-conditions
  • The number of given children matches the current number of children of the array.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§