[C++] choose kernel missing support for list/struct types
- Dominant language
- C++
- Stars
- 17.1k
- Forks
- 4.3k
- Avg merge
- 3d 13h
- Merged PRs (30d)
- 88
Description
The choose kernel currently (correctly) supports any integer type of index. It should support any kind of value type. However, it does not support list or struct value types.
**Reporter**: [Weston Pace](https://issues.apache.org/jira/browse/ARROW-13946) / @westonpace
#### Related issues:
- [[C++] Reconcile type promotion rules between if_else, case_when, coalesce, select](https://github.com/apache/arrow/issues/29696) (relates to)
- [[C++] Improve type support for 'coalesce' kernel](https://github.com/apache/arrow/issues/29061) (relates to)
**Note**: *This issue was originally created as [ARROW-13946](https://issues.apache.org/jira/browse/ARROW-13946). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*
Contributor guide
Research direction
Start by locating the C++ choose kernel implementation and its existing tests. Trace how integer and other value types are handled, then add coverage for list and struct values. Done means choose supports those value types without regressing the existing index behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- data
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100