pub trait ArrayEncoding:
'static
+ Sync
+ Send
+ Debug {
// Required methods
fn id(&self) -> EncodingId;
fn canonicalize(&self, array: Array) -> VortexResult<Canonical>;
fn with_dyn(
&self,
array: &Array,
f: &mut dyn for<'b> FnMut(&'b (dyn ArrayTrait + 'b)) -> VortexResult<()>,
) -> VortexResult<()>;
}
Expand description
Object-safe encoding trait for an array.
Required Methods§
fn id(&self) -> EncodingId
Sourcefn canonicalize(&self, array: Array) -> VortexResult<Canonical>
fn canonicalize(&self, array: Array) -> VortexResult<Canonical>
Flatten the given array.
Sourcefn with_dyn(
&self,
array: &Array,
f: &mut dyn for<'b> FnMut(&'b (dyn ArrayTrait + 'b)) -> VortexResult<()>,
) -> VortexResult<()>
fn with_dyn( &self, array: &Array, f: &mut dyn for<'b> FnMut(&'b (dyn ArrayTrait + 'b)) -> VortexResult<()>, ) -> VortexResult<()>
Unwrap the provided array into an implementation of ArrayTrait