Trait EncodingVTable

Source
pub trait EncodingVTable:
    'static
    + Sync
    + Send
    + Debug
    + CanonicalVTable<Array>
    + ComputeVTable
    + MetadataVTable<Array>
    + StatisticsVTable<Array>
    + ValidateVTable<Array>
    + ValidityVTable<Array>
    + VariantsVTable<Array>
    + VisitorVTable<Array> {
    // Required methods
    fn id(&self) -> EncodingId;
    fn as_any(&self) -> &dyn Any;
}
Expand description

Dyn-compatible VTable trait for a Vortex array encoding.

This trait provides extension points for arrays to implement various features of Vortex. It is split into multiple sub-traits to make it easier for consumers to break up the implementation, as well as to allow for optional implementation of certain features, for example compute functions.

It is recommended that you use crate::impl_encoding to assist in writing a new array encoding.

Required Methods§

Source

fn id(&self) -> EncodingId

Return the ID for this encoding implementation.

Source

fn as_any(&self) -> &dyn Any

Return a reference to this encoding as a dyn Any for type erasure.

Trait Implementations§

Source§

impl Hash for dyn EncodingVTable + '_

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
Source§

impl PartialEq for dyn EncodingVTable + '_

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for dyn EncodingVTable + '_

Implementors§