pitrou commented on code in PR #45272:
URL: https://github.com/apache/arrow/pull/45272#discussion_r1934023851


##########
cpp/src/arrow/compute/kernels/scalar_compare.cc:
##########
@@ -445,6 +445,14 @@ std::shared_ptr<ScalarFunction> 
MakeCompareFunction(std::string name, FunctionDo
     DCHECK_OK(func->AddKernel({ty, ty}, boolean(), std::move(exec)));
   }
 
+  if constexpr (std::is_same_v<Op, Equal> || std::is_same_v<Op, NotEqual>) {
+    for (const auto id : {Type::LIST, Type::LARGE_LIST}) {
+      auto exec = GenerateList<applicator::ScalarBinaryEqualTypes, 
BooleanType, Op>(id);

Review Comment:
   > With what you are suggesting, I'm guessing I should be creating a new 
registry function along with that like `RegisterRangeComparison` right?
   
   I think we can avoid that by directly calling into `RangeDataEqualsImpl`.
   
   > Also I'm guessing the RangeDataEqualsImpl is supposed to work when 
comparing two arrays, but not when comparing an array with a scalar
   
   A list scalar's value is actually an array, so that should not necessarily 
be a problem.



-- 
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]

Reply via email to