bkietz commented on a change in pull request #9294:
URL: https://github.com/apache/arrow/pull/9294#discussion_r573252657
##########
File path: cpp/src/arrow/compute/function.h
##########
@@ -162,7 +162,15 @@ class ARROW_EXPORT Function {
///
/// NB: This function is overridden in CastFunction.
virtual Result<const Kernel*> DispatchExact(
- const std::vector<ValueDescr>& values) const = 0;
+ const std::vector<ValueDescr>& values) const;
+
+ /// \brief Return a best-match kernel that can execute the function given
the argument
+ /// types, after implicit casts are applied.
+ ///
+ /// \param[in,out] values Argument types. An element may be modified to
indicate that
+ /// the returned kernel only approximately matches the input value
descriptors; callers
+ /// are responsible for casting inputs to the type and shape required by the
kernel.
Review comment:
DispatchBest doesn't really compute this, actually. Instead it starts
from identity casts (== the same `ValueDescr`s which were input) and explores
allowed casts for a match.
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]