Which part is this question about
The arrow-rs library.
Describe your question
I'm currently working on a tool that converts protobuf messages into Arrow data. To capture the nested structure of protobuf messages, I'm using type-erased Box<dyn ArrayBuilder>s.
While doing so, I stumbled upon the fact that UnionBuilder does not implement the ArrayBuilder trait. Is there a technical limitation for this? If not, I could try to come up with an implementation.
Additional context
To implement this, I would add Send + Sync to the FieldDataValues trait. Then it looks like it's enough to implement finish and finish_cloned, which I could implement similar to UnionBuilder::build().
Would it be ok to panic if the underlying UnionArray::try_new fails?
Which part is this question about
The
arrow-rslibrary.Describe your question
I'm currently working on a tool that converts
protobufmessages into Arrow data. To capture the nested structure ofprotobufmessages, I'm using type-erasedBox<dyn ArrayBuilder>s.While doing so, I stumbled upon the fact that
UnionBuilderdoes not implement theArrayBuildertrait. Is there a technical limitation for this? If not, I could try to come up with an implementation.Additional context
To implement this, I would add
Send + Syncto theFieldDataValuestrait. Then it looks like it's enough to implementfinishandfinish_cloned, which I could implement similar toUnionBuilder::build().Would it be ok to
panicif the underlyingUnionArray::try_newfails?