pub trait CastReduce: VTable {
// Required method
fn cast(
array: &Self::Array,
dtype: &DType,
) -> VortexResult<Option<ArrayRef>>;
}Expand description
Reduce rule for cast: restructure the array without reading buffers.
Encodings implement this to push cast operations through their structure. For example, RunEnd pushes cast down to its values array, ZigZag transforms the target dtype to unsigned and pushes to its encoded array.
Returns Ok(None) if the rule doesn’t apply to this array/dtype combination.
Required Methods§
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§
impl CastReduce for BoolVTable
impl CastReduce for ChunkedVTable
impl CastReduce for ConstantVTable
impl CastReduce for DictVTable
impl CastReduce for ExtensionVTable
impl CastReduce for FixedSizeListVTable
Cast implementation for FixedSizeListArray.
Recursively casts the inner elements array to the target element type while preserving the list structure.