friendlymatthew opened a new issue, #8612:
URL: https://github.com/apache/arrow-rs/issues/8612

   **Is your feature request related to a problem or challenge? Please describe 
what you are trying to do.**
   
   `VariantArray` is a wrapper around a `StructArray`, but unlike similar 
wrapper types (`MapArray`, `RunArray`, `UnionArray`, `DictionaryArray`), it 
does not implement the `Array` trait. 
   
   This creates friction when working with `VariantArray`s in higher-level 
code, especially when passing to functions expecting an `ArrayRef`. 
   
   Here are some current limitations that come to mind:
   
   1. can't use polymorphically, `VariantArray` can't be passed to functions 
expecting an `ArrayRef`
   2. requires manual conversion, must explicitly convert to `StructArray` when 
interfacing with Arrow/Datafusion apis
   3. No safe iteration, only `VariantArray::value(i)` is available, which 
panics on null values. Other arrays provide `::iter()` that returns `Option<T>`
   
   **Additional context**
   
   This feature is motivated by 
[datafusion-variant](https://github.com/datafusion-contrib/datafusion-variant), 
a higher-level library that integrates with Datafusion through a series of udfs


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to