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