I'm quite unsure about the fn transform and the handling of the arrow_array - seems kinda clunky?
I think the transform can provide an interface like transform_literal later.
pub trait TransformFunction: Send {
/// transform will take an input array and transform it into a new array.
/// The implementation of this function will need to check and downcast the input to specific
/// type.
fn transform(&self, input: ArrayRef) -> Result<ArrayRef>;
+ fn transform_literal(&self, literal:Literal) -> Result<Literal>;
}
Originally posted by @ZENOTME in #269 (comment)