drabastomek commented on code in PR #14434: URL: https://github.com/apache/arrow/pull/14434#discussion_r997717129
########## cpp/src/arrow/compute/kernels/base_arithmetic_internal.h: ########## @@ -485,6 +485,34 @@ struct NegateChecked { } }; +struct Exp { + template <typename T, typename Arg> + static enable_if_floating_value<Arg, T> Call(KernelContext*, Arg exp, Status*) { + static_assert(std::is_same<T, Arg>::value, ""); + return std::exp(exp); + } + + template <typename T, typename Arg> + static enable_if_decimal_value<Arg, T> Call(KernelContext*, Arg exp, Status*) { + static_assert(std::is_same<T, Arg>::value, ""); + return std::exp(exp); + } +}; + +struct ExpChecked { Review Comment: Good point. Removed the checks for `exp` and added `DecodeOptionlessUncheckedMapping` method to handle these cases. I tried to use the `DecodeOptionlessBasicMapping` but it was throwing that Acero needed the optional parameter at index 0. -- 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: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org