[C++] Simplify or remove `arrow/util/functional.h`
Open
Component: C++
good-second-issue
Type: enhancement
- Dominant language
- C++
- Stars
- 17.1k
- Forks
- 4.3k
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 91
Description
### Describe the enhancement requested
`arrow/util/functional.h` is a set of ad-hoc metaprogramming utilities that were necessary when Arrow supported C++11. Now that we require C++20, most of that functionality can probably be replaced by stdlib utilites such as `std::is_invocable` and `std::invoke_result`.
This issue requires some C++ proficiency but hopefully little knowledge of the Arrow C++ codebase.
### Component(s)
C++
Contributor guide
Assessment
This issue has not been assessed yet.