Ben Kietzman created ARROW-11508:
------------------------------------

             Summary: [C++][Compute] Add support for generic conversions to 
Function::DispatchBest
                 Key: ARROW-11508
                 URL: https://issues.apache.org/jira/browse/ARROW-11508
             Project: Apache Arrow
          Issue Type: New Feature
          Components: C++
    Affects Versions: 3.0.0
            Reporter: Ben Kietzman
            Assignee: Ben Kietzman


ARROW-8919 adds support for execution with implicit casts to any function which 
overrides DispatchBest, allowing functions to specify conversions which make 
sense in that function's context. For example "add" can promote its arguments 
if their types disagree. By contrast, some conversions are more generic and 
could be applicable to any function's arguments. For example if any datum is 
dictionary encoded, a kernel which accepts the decoded type should be usable 
with an implicit decoding cast:
{code:java}
import pyarrow as pa
import pyarrow.compute as pc

arr = pa.array('hello ' * 10)
enc = arr.dictionary_encode()

# result should not depend on encoding:
assert pc.ascii_is_alnum(arr) == pc.ascii_is_alnum(enc)

# currently raises:
# ArrowNotImplementedError: Function ascii_is_alnum has no kernel matching
#    input types (array[dictionary<values=string, indices=int32, ordered=0>])
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to