taepper opened a new pull request, #51328: URL: https://github.com/apache/arrow/pull/51328
### Rationale for this change This is the last change for #50250. The remaining `FnOnce` does not have corresponding utilities in the C++20 standard library according to my knowledge. ### What changes are included in this PR? This removes the custom meta-programming facility `call_traits::argument_type`. We instead use the provided `type_traits` header which allows us to check invocability (and thus indirectly the argument type) with e.g. `std::is_invocable`. It needs to be mentioned that none of `std::is_invocable_v`, `std::invoke_result_t`, .. is a drop-in replacement for the removed `argument_type`. I instead migrated all users of the old facility to the standard constructs. Some call-sites needed changing by supplying template parameters explicitly, but in my opinion all changes are defendable or even improvements. ### Are these changes tested? Yes, this refactoring commit still passes all test cases ### Are there any user-facing changes? No -- 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]
