Commits


David Li authored and Antoine Pitrou committed 9e384941ee8
ARROW-13222: [C++] Improve type support for case_when This adds support for nearly everything except dictionaries and extension types. Binary types, maps, lists (fixed-size and variable), unions, and structs are supported. The benchmark is also extended to show that performance is not entirely terrible (the first attempt using purely AppendScalar ran at ~50MB/s, this runs at a couple GB/s similar to the other kernel cases). This does leverage AppendScalar for the scalar cases. Dictionaries are still supported, but will be unpacked. For direct support there's work described in ARROW-13573, but I'd like to validate my approach here before making the changes necessary. Closes #10806 from lidavidm/arrow-13222 Authored-by: David Li <li.davidm96@gmail.com> Signed-off-by: Antoine Pitrou <antoine@python.org>