Describe the enhancement requested
Gandiva FunctionHolder classes currently use output parameters to return the holder function, and it can be refactored to return arrow::Result instead of using output parameters, and this tries to address the follow up task mentioned in #38632 (comment) and makes the code slightly simpler
Component(s)
C++ - Gandiva